Technical Document: Niagara User Guide
Technical Document: Niagara User Guide
Copyright Notice
The software described herein is furnished under a license agreement and may be used only in accordance with the terms of the agreement. This document may not, in whole or in part, be copied, photocopied, reproduced, translated, or reduced to any electronic medium or machine-readable form without prior written consent from Tridium, Inc. The confidential information contained in this document is provided solely for use by Tridium employees, licensees, and system owners; and is not to be released to, or reproduced for, anyone else; neither is it to be used for reproduction of this Control System or any of its components. All rights to revise designs described herein are reserved. While every effort has been made to assure the accuracy of this document, Tridium shall not be held responsible for damages, including consequential damages, arising from the application of the information contained herein. Information and specifications published here are current as of the date of this publication and are subject to change without notice. The release and technology contained herein may be protected by one or more U.S. patents, foreign patents, or pending applications.
Trademark Notices
BACnet and ASHRAE are registered trademarks of American Society of Heating, Refrigerating and Air-Conditioning Engineers. Microsoft and Windows are registered trademarks, and Windows NT, Windows 2000, Windows XP Professional, and Internet Explorer are trademarks of Microsoft Corporation. Java and other Java-based names are trademarks of Sun Microsystems Inc. and refer to Sun's family of Java-branded technologies. Mozilla and Firefox are trademarks of the Mozilla Foundation. Echelon, LON, LonMark, LonTalk, and LonWorks are registered trademarks of Echelon Corporation. Tridium, JACE, Niagara Framework, NiagaraAX and Vykon are registered trademarks, and Workbench, WorkPlaceAX, and AXSupervisor, are trademarks of Tridium Inc. All other product names and services mentioned in this publication that is known to be trademarks, registered trademarks, or service marks are the property of their respective owners.The software described herein is furnished under a license agreement and may be used only in accordance with the terms of the agreement.
CONTENTS
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
Document Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
About common networking and Internet protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 About programming for non-programmers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 About embedded systems capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 About distributed systems capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 About component software design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 About Niagara software architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
About Baja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
About APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
javax.baja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 com.tridium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
About components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
About slots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
Slot type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Slot name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Slot definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Facets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
About master/slave components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111 About point components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111 About component naming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112
Escaped names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
About schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117 Types of schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117 Types of space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118 Types of files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
About Workbench. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Tour of the Workbench GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
About Workbench window controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 About the side bar panes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 About side bars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
About the side bar title bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Types of side bars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 About the bookmark side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 About the help side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 About the nav side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Types of nodes in the nav side bar tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 About the nav side bar toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 About the palette side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 About the palette side bar toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 About the jobs side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 About the bound ords side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 About the widget tree side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 About the properties side bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
About the view pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210 About the console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .211 About the menu bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212 About the toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212 About the locator bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213 About the view selector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .214 Types of popup menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .214
About the nav side bar popup menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 About the wire sheet popup menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 About the property sheet popup menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Px Editor popup menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Types of datapresentation controls and options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216 Table controls and options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217 Batch editing (or batch processing) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217 Chart controls and options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218
ii
About point types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 About point Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 About point inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 About point actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
About override actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 About set (Fallback) action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Modifying default actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Driver architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
What are networks? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Where are networks located? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
iii
iv
December 10, 2007 Installing the serial tunnel client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 To install the serial tunnel client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Serial tunnel client configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Serial tunnel client installation details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
About Histories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Types of History Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
About the history service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
About the history extension manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 About history service property sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 History service actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
About the audit history service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 About the log history service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
About the database maintenance view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 About the nav container view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
About the history table view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .612 About the collection table view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .612 About the history summary view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .613 About the history editor view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .613
About alarms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Alarm examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
About the alarm service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 About memory alarm service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Common alarm controls and indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Types of alarm service views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
About alarm extension manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Types of extension manager display features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710
vi
About the alarm class summary view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .712 About the alarm database maintenance view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .713
About the Alarm details dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714 Types of alarm database maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714
About the station recipient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .722 About the email recipient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .723 About the lineprinter recipient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .723
About Px files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Shared Px files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
About spectrum bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .821 About setpoint bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .822 About increment setpoint bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .822
NiagaraAX-3.x User Guide
vii
About spectrum setpoint bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .822 About action bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .823 About table bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .823 About field editor bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .823 About Popup Bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .823
Using the Popup Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 824
Px Editor workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 About the Make Widget wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 830 Make Widget wizard: examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832
Create a bound label widget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 832 Create a widget using a palette kit module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834 Create a widget with a Workbench view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 837 Create a widget using a component properties option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 839 Create an action widget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 841 Create a Time Plot widget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843 Create a Chart widget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 845
About the Grid Table view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .855 About the Grid Label Pane view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .855 About the Grid Editor view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .857
About the Report Edit Row and Edit Column dialog boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 857
About Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Security model overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Categories and security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Users and security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
About built-in users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 About authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Network users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Challenge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 User Service changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 NiagaraNetwork changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
viii
December 10, 2007 Component permission levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 File permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 History permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
UserService . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 912
UserService properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .913 UserManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .913
Lockout notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 914 Network user notes (AX-3.3 and later) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915
User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .916
Network user related properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 917
PermissionsBrowser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .918
Show Configured . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918 Permissions abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918 Access permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 918
CategoryService . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920
CategoryManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .921
Category properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921 Category caveats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
CategoryBrowser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .922
Show Configured . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922
CategorySheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .923
Schedule special events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103 Schedule exports and imports (master/slave) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103
ix
Credentials manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 New driver wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 New module wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 New station wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 License request dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 Resource estimator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110 Todo list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1110 Workbench job service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1111 Workbench service manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1111
xi
xii
xiii
References. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A1
In this appendix (introduction) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A1 About keyboard shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A1 Types of menu bar items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A2
About the File menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A2 About the Edit menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A4 About the Search menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A5 About the Bookmarks menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A6 About the Tools menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A6 About the Window menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A6 About the Px Editor menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A7 About the History Ext Manager menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A8 About the Help menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A8
xiv
Px Editor toolbar icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . About the history extension manager toolbar icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . About the history editor toolbar icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . About the Todo list toolbar icons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Niagara shell commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . nre (station) commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . wb (Workbench) commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . plat (platform) commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B1
2-xv
2-xvi
PREFACE
Preface
Document Change Log
xvii
NiagaraAX-3.1 and AX-3.2. Edited About alarms to add sections describing NiagaraAX-3.2 feature, Alarm Escalation (About alarm escalation). Added section on Alarm Instructions (About the Instructions Manager view). Added section About Reporting in About Presentation XML (Px) to describe the Reporting feature available in NiagaraAX-3.2. Added information regarding enhanced charting capabilities. Edited About Security to add section Alarm ack permission notes. Edited About Schedulingmade minor changes, corrections, and updates. Edited Performing Workbench tasks to correct one alarm database maintenance procedure and make editorial corrections. Edited Component Guides to add component descriptions for VirtualComponent, VirtualGateway (new baja components with the NiagaraAX-3.2 virtual points feature). Also added component descriptions for ComponentGrid, EmailRecipient, ExportSource, ReportPane, ReportService, and SectionHeader, (components in the NiagaraAX-3.2 report module). Edited Plugin Guides to add coverage of views related to the report component and the alarm Instructions Manager: GridTable, GridLabelPane, ComponentGridEditor, AlarmExtManager. Updated: January 19, 2007 Applied new look formatting to print (PDF) version of this document, reducing total page count yet adding sidehead white space to most pages (useful for note taking on printed pages). Edited Plugin Guides chapter to provide more consistent section overviews (useful for navigation in both html and pdf output) and a content summary of Types of plugins at beginning of chapter. Revised: August 1, 2006 Various new components and views added in the Component Guides and Plugin Guides sections, mostly related to the driver module containing the FileNetwork. Other minor edits and notes related to NiagaraNetwork provisioning (see NiagaraStation component notes). Revised: April 4, 2006 Minor typographical fixes only. Revised: December 7, 2005 Added new sections in Field Bus Integrations section: Port and protocol variations on page 5-1 and Serial tunneling on page 5-2. Added component descriptions for SerialHelper, TunnelService, SerialTunnel, and TunnelConnection in Component Guides. Reversed order of this change log to put newest changes at top. Revised: October 31, 2005 Removed obsolete references to Raster Editor in Component Guides, and Plugin Guides. Added procedures in Performing Workbench tasks sections Using the palette side bar (to create and edit palettes) and Working with modules (to create a module). Edited section New module wizard in the About Workbench tools section. Edited description of property Time Delay in the About alarm extension properties section to note this property does not apply to status transitions to (or from) Fault. Revised: September 28, 2005 Edited graphics and callouts to standardize resolution, size, & layout in About NiagaraAX Framework, About Workbench. Edited links in Component Guides and Glossary Added information about the Jobs palette to About Workbench and to References. Edited About the Window menu and About the locator barsections. Added section About the point manager popup menu items. Revised: September 15, 2005 Edited and corrected broken links to online help, including links in About Workbench tools, About Security, and Component Guides. Revised: August 31, 2005 Edited, added content, and renamed sections in About Workbench tools. Added Batch editing (or batch processing) section. Added About the Todo list popup menu items section to Types of popup menu items. Added About the Todo list toolbar icons section to Types of toolbar icons. Revised: August 23, 2005 Added Types of files section to the About ORDs section. Edited and added content to About Workbench tools section. Added new procedures to Using the palette side bar section. Added content to sections in the Customizing the Workbench environment section. Revised: August 17, 2005 Added new sections to Customizing the Workbench environment. Edited and added sections to About Workbench tools. Revised: August 3, 2005
NiagaraAX-3.x User Guide
xviii
Added new sections: About schemes, Types of schemes, Table controls and options, Chart controls and options, About the History Ext Manager menu, About the history extension manager popup menu items, About the history extension manager toolbar icons, Niagara shell commands, nre (station) commands, wb (Workbench) commands, plat (platform) commands. Edited sections About alarms and About Histories to replace redundant text with references to single description location. Added or corrected missing or incorrect property descriptions. Edited Plugin Guides, Component Guides, References to augment references, correct missing or inaccurate descriptions and update links. Revised: July 13, 2005 Added section About delta logging and edited section Add history extensions to a component. Published: June 24 2005 Added Copyright and Trademarks section to preface. Made minor changes in the Component Guides and Plugin Guides sections, especially for the BackupService and BackupManager. Draft: June 15 2005 Added components to and edited some components in the following sections: Components in kitPx module. Draft: June 8 2005 Added components to and edited some components in the following sections: Components in alarm module, Components in baja module, Components in bajaui module, Components in history module. Draft: June 6 2005 Provided more details about using the alarm class mapper in About alarm class mapping. Updated alarm console and alarm portal screens in Types of Workbench options section. Added, removed and updated information in the Components in alarm module section. Draft: June 1 2005 Data and Control Model section had various minor changes after a technical review, including many updated screen captures. The section Types of status flags on page 3-15 shows default status colors, in addition to describing them. Types of alarm service views section edited to add property sheet viewin order to include description of capacity property. About alarm class mapping section added. Updated About the alarm database maintenance view section updated to reflect new database editing option. Corrected description of capacity in About the history summary view section. Draft: May 25, 2005 (Initial change log) Data and Control Model section About point actions on page 3-3 was expanded to cover the recent set (Fallback) action for writable points, including new sections About override actions, About set (Fallback) action, and Modifying default actions. Various minor changes were also made in other Data and Control Model sections. About alarms section was reorganized and updated. Additional information added in the following sections: About alarm extension properties, About alarm extension manager, About the alarm database maintenance view, About the lineprinter recipient. The About memory alarm service section was added. Various minor changes were also made in other About alarms sections.
xix
xx
CHAPTER
About NiagaraAX Framework
Software frameworks provide a platform to allow businesses to more easily build their end-product offerings. Tridiums patented Niagara Framework is targeted at solving the challenges associated with managing diverse smart devices, unifying their data, and connecting them to enterprise applications. Examples of smart devices include: monitoring and control systems, sensors, metering systems, and embedded controls on packaged equipment systems. framework, n. something composed of parts fitted together and united; a structural frame; a basic structure (as of ideas); in object-oriented programming, a reusable basic design structure, consisting of abstract and concrete classes, that assists in building applications. Niagara Framework, n. a universal software infrastructure that allows companies to build custom, webenabled applications for accessing, automating, and controlling smart devices in real time over the Internet. NiagaraAX is the third generation of Tridium's Niagara Framework. This Javabased software framework provides an infrastructure to enable systems integrators and developers to build deviceto enterprise solutions, and Internetenabled control and monitoring products. The Framework integrates diverse systems and devices (regardless of manufacturer or communication protocol) into a unified platform that can be easily managed in real time over the Internet (or intranet) using a standard web browser. The Framework also includes a comprehensive toolset that enables non-programmers to build rich applications in a drag-and-drop environment. NiagaraAX is fully scalable, meaning that it can be run on platforms spanning the range from small, embedded devices to enterprise class servers. Niagara is being successfully applied in energyservices, buildingautomation, industrialautomation and M2M applications today.
Well designed
The Niagara Framework addresses the challenges of automation, control and device to enterprise connectivity of real time systems. NiagaraAX, and its derivative products, offer compelling value to both end users and partners. For OEM and reseller partners, the Niagara Framework solves several key challenges present in all control-related industries: High development costs associated with the foundation or infrastructure layer of software that communicates with devices and manipulates the data from them. The need to transform information from real-time control processes into a homogeneous structure enabling advanced product and service applications. Integration of legacy systems to enable companies to easily migrate their existing customers to new technologies and product offerings. Partners who adopt the Niagara Framework as their infrastructure eliminate substantial engineering effort and are able to focus on their core competencies of application development and marketing. These companies gain competitive advantage in their markets from lower development costs and quicker timeto-market for their specific products, applications and value-add services. End users of Niagara benefit from: Being able to preserve existing investments in control and monitoring devices as they move to new, standards-based technologies. Being able to access and control all of their diverse systems through a standard web browser. Combining information from different systems to support better overall management of their enterprise assets. Being able to specify interoperable systems and applications from multiple vendors, thereby reduc
11
ing the potential for vendor lock-in. Niagara is designed to address the following specific technical challenges: Platform independence - NiagaraAX works with a wide variety of operating systems and hardware platforms. Unification of diverse systems - NiagaraAX integrates heterogeneous systems, protocols, and fieldbuses into normalized components. Distributed architecture - NiagaraAX supports a highly distributed architecture. It successfully combines Internet/IT technology with the services necessary to implement real-time, peer-to-peer automation applications. Programming for non-programmers - NiagaraAX provides an environment and comprehensive toolset to enable domain experts to create sophisticated applications without writing code. Extensibility - NiagaraAX provides an extensible component model and rich library of open APIs to enable programmers to extend and enhance the Framework and build their own unique applications and products Support for embedded systems - NiagaraAX can be embedded in small low cost devices
1-2
Figure 1-1
About Java
All of the Niagara software is written in Java, which means that it is platform independent. Prior to Java, most software was written and compiled for a particular machine or operating system. If that software needs to run on some other processor, the program has to be compiled again. Java, on the other hand, compiles once. NiagaraAX software runs on embedded JACE controllers using the QNX operating system and the IBM J9 Java Virtual Machine (JVM), and runs on Microsoft Windows desktop operating system platforms, as well as Linux and Solaris using the HotSpot JVM.
1-3
NiagaraAX software subsystems are illustrated in Figure 1-3 and the software processes and protocols are shown in Figure 1-4.
NiagaraAX-3.x User Guide
1-4
Figure 1-3
Figure 1-4
About Baja
The core framework built by Tridium is designed to be published as an open standard. This standard is being developed through Sun's Java Community Process as JSR 60. This JSR is still an ongoing effort, but it is important to understand the distinction between Baja and Niagara. Fundamentally Baja is an open specification and the Niagara Framework is an implementation of that specification. As a specification, Baja is not a set of software, but rather purely a set of documentation. The Baja specification will include: Standards for how Baja software modules are packaged XML schema for the component model; The component model and its APIs Historical database components and APIs Alarming components and APIs Control logic components and APIs Scheduling components and APIs BACnet driver components and APIs lonWorks driver components and APIs Over time many more specifications for features will be added to Baja. But what is important to remember is that Baja is only a specification. Niagara is an implementation of that specification. Furthermore you will find a vast number of features in Niagara, that are not included under the Baja umbrella. In this respect Niagara provides a superset of the Baja features.
1-5
About APIs
The API (Application Programming Interface) defines how software engineers access the capabilities of software like the Niagara Framework. Workbench is the Niagara API and using the Niagara Workbench, you can create and edit the control logic for your job site. Many features found in Niagara are exposed through a set of Java APIs. In the Java world, APIs are grouped together into packages, which are scoped using DNS domain names. Software developed through the Java Community Process is usually scoped by packages starting with java or javax. It is important to understand the two types of APIs related to the Niagara framework: javax.baja com.tridium
javax.baja
The APIs developed for Baja (see About Baja on page 1-5 for more about Baja) are all grouped under javax.baja. These are APIs that will be part of the open Baja specification and may be implemented by vendors other than Tridium. Using these APIs guarantees a measure of vendor neutrality and backward compatibility.
com.tridium
Software developed by Tridium which is proprietary and outside of the Baja specification is grouped under the com.tridium packages. The com.tridium packages contain code specific to how Niagara implements the Baja APIs. The com.tridium code may or may not be documented. If com.tridium APIs are publicly documented then Tridium encourages developers to use them, but does not guarantee backward compatibility. Undocumented com.tridium APIs should never be used by developers. Note: Tridium has developed some APIs under javax.baja even though they are not currently part of the Baja specification. These are APIs that Tridium feels may eventually be published through Baja, but are currently in a development stage.
About modules
Modules are the smallest units of software in the Niagara architecture. Major releases of the Niagara software are distributed along with a set of release modules, but as new modules are made available for that release of Niagara, they may be distributed as independent revisions within that release. Figure 1-5 shows a partial list of modules, as displayed in the nav side bar pane.
1-6
Figure 1-5
Note: Dont confuse modules with components. Components are used to build Niagara implementations, while modules make up the Niagara software itself. Refer to About components on page 1-9 for more information about components. The following sections describe module characteristics and benefits.
Niagara versioning uses the following set of conventions: Versions are specified using a base four-part version with optional patch versions. The first number specifies the specification revision. This number starts at one and is incremented each time the specification of the module is incremented. It is used with Baja modules to track the Baja specification version. The next two numbers specify a major Niagara release. The fourth number specifies a build number. A build number starts at zero for each major release and increments each time all the softwares modules are built. Additional numbers may be specified for code changes made off a branch of a specific build. These are usually minor changes and bug fixes.
1-7
Every module has two versions. The first is the "bajaVersion" which maps the module to a Baja specification version. If the module is not published under the Baja process then this value is "0". Secondly every module declares a "vendor" name and "vendorVersion". The vendor name is a case insensitive identifier for the company who developed the module and the vendorVersion identifies the vendor's specific version of that module. Tridium's vendorVersions are formatted as "major.minor.build[.patch]: Major and minor declare a feature release such as 3.0. The third number specifies a build number. A build number starts at zero for each feature release and increments each time all the software modules are built. Addition numbers may be specified for code changes made off a branch of a specific build. These are usually patch builds for minor changes and bug fixes. So the vendorVersion "3.0.22" represents a module of build 22 in Niagara release 3.0. The vendorVersion "3.0.45.2" is the second patch of build 45 in release 3.0.
All of the source code that is used to build the modules jar file is located under the "src" directory. During the build process the "libJar" directory is used to build up the image, which will be zipped up for the module's jar file.
1-8
Figure 1-8
Requires less space on JACE Niagaras modular development allows you to save space on your JACE by only installing the modules that you need and choose for that JACE. Requires less space on the workstation When you install NiagaraAX, you can choose the modules that you want to install with your application and omit any modules that you do not need. Later, if want to add additional modules you can do so with the Software Manager (as shown in Figure 1-8). Create new modules Software developers can use the tools in NiagaraAX to create new modules and deploy them using the New Module Wizard, as shown in Figure 1-9. Refer to New module wizard on page 11-8 for more details about the New Module Wizard. New module wizard
Figure 1-9
About components
A component is the primary building block that you use to engineer an application using NiagaraAX Workbench. As described in the About component software design on page 1-4, components provide many advantages for the application developer. Components differ from modules in that components compose a Niagara implementation whereas modules compose the Niagara software itself. The following sections describe characteristics of components: About slots About master/slave components About point components
1-9
About slots
Niagara components are defined as a collection of slots. You can see all the slots that make up a component by viewing the slot sheet as shown in Figure 1-10. Slots have the following types of attributes: Slot type Slot name Slot definition Flags Facets Slot sheet for a single component
Figure 1-10
Slot type
There are three types of slots: Property Property slots represent a storage location of another Niagara object. Action An action is a slot that specifies behavior that may be invoked either through a user command or by an event. Actions provide the capability to provide direction to components. They may be issued manually by the operator or automatically through links. Actions can be issued by rightclicking on the component. Topic Topics represent the subject of an event. Topics contain neither a storage location, nor a behavior. Rather a topic serves as a place holder for a event source.
Slot name
Every slot is identified by a name that is unique within its Type. Slot names must contain ASCII letters or numbers.
Slot definition
Slots are either frozen or dynamic. A frozen slot is defined at compile time within a Type's Java class. That means that frozen slots are consistent across all instances of a specified Type they dont change. Dynamic slots may be added, removed, renamed, and reordered during runtime they can change. The power of the Niagara Framework is in providing a consistent model for both frozen (compile time) slots and dynamic (runtime) slots.
Flags
Slots have flags that allow modification of an objects presentation or behavior. For example, readonly, operator allowed, and hidden, are some of the slot flags that may be used to restrict the presentation or behavior of an object.
Facets
Facets contain meta data or additional data about an object. For example, units of measurement is a type of facet. Facets may be viewed in the slot sheet and edited from a component property sheet, as shown in Figure 1-11.
1-10
Figure 1-11
Each type of point may be used for different purposes in Workbench. When you engineer a job you may want to name a point, as shown in Figure 1-13 (a NumericWritable point named CondSetpoint). Points may be named and renamed but they retain their initial point type characteristics and their characteristic icon color. Figure 1-13 Numeric writable point named
Points serve as a type of shell in NiagaraAX, to which you may add point extensions. These extensions allow you to select only those functions that you need and thereby limit your point properties to just those that are necessary for your current application.
1-11
Figure 1-14
For detailed information about points and point extensions, refer to Data and Control Model on page 3-1.
Escaped names
Workbench does allow you to name components improperly, such as with spaces or other non-alphanumeric characters, without any warning. Further, various NiagaraAX drivers have learn features to automate the creation of points, some of which (by default) may also have such improper names reflective of the native name of the source object. For example, a BACnet proxy point might have the default name Zone 6 RH% that matches the actual (native) BACnet objects name. In any case, be aware that the actual component name has all illegal characters escaped using a $ character, along with the ASCII code for that character, in hexadecimal. The proxy point mentioned above, for example, will have the name Zone$206RH$25, where the $20 escapes the space and the $25 escapes the %. You can see these escaped names in the slot sheet of the components parent container. Or, with the component selected, look at its ord (shortcut Ctrl + L) to see its actual name. For the most part, this escaped name scheme is transparent to users. Whenever the name is displayed to the user, say in the Nav side bar, property sheet, wire sheet, or a point manger, the components name is unescaped by replacing the code (say, $20) with the actual ASCII character (say, a space). This way, the user sees Zone 6 RH% and so on. This is the components display name. In some cases, escaped names lead to confusion. You should avoid them if possible (rename using rules see About component naming). For example, if you add history extensions to escaped-named points, you see those escape codes listed for source points when accessing the History Ext Manager (although associated histories use the display names). Or, if you are building Px pages and manually typing in ords in Px widgets, you probably know source points by display names only. If you manually type in an ord without the actual (escaped) name, the widget binding fails with an error. Note: If this sounds too complicated, remember that drag and drop operations resolve escaped names without problemsfor example, drag any point onto a Px page to get its proper ord.
1-12
About palettes
The palette provides a hierarchical view of available components. You may copy a component from the palette and paste it where you need it on a wire sheet, property sheet, Px View, or in the palette nav side bar pane. For more information about using the palette side bar, refer to About the palette side bar on page 2-7.
About presentation
The NiagaraAX framework provides a powerful presentation architecture based on XML and the Niagara component model. Presentation is a term that is used to describe how Niagara provides visualization of information across different types of media. The terms information, visualization, and media may comprise the following: information realtime data historical data configuration data alarm data scheduling data graphical data textual data visualization bitmap and vector graphics text documents tables charts input controls (text fields, check boxes, trees) media desktop web browsers (HTML, CSS, JavaScript) workbench (Niagara stack) pdf printed pages svg handhelds cell phones
1-13
Figure 1-15
1-14
JavaScript provide a web interface using common standards. This interface may also be used to support handheld devices and cell phones. Designers are limited to a subset of widgets when creating HTML presentations (the Px tools provide this support). Refer to About Px target media on page 8-25 for information about presentation media technologies. Figure 1-16 Presentation media options
About stations
A station is the main unit of server processing in the Niagara architecture. A station database is defined by a single .bog file, for example: "file:!stations/{name}/config.bog" Stations are booted from their config.bog file into a single Virtual Machine (VM), or process, on the host machine. There is usually a onetoone correspondence between stations and host machines (Supervisors or Jaces). However it is possible to run two stations on the same machine if they are configured to use different IP ports A station runs the components of the Niagara Framework and provides the access for client browsers to view and control these components. The primary parts of a station include components and services. It is the combination of a database, a web server, and a control engine. The station either runs on a Web Supervisor PC or a JACE controller. Figure 1-17 Station in nav tree
A system can be a single station or multiple stations depending on the size of the project and it is defined by a bog file.
1-15
About ORDs
An ORD is an "Object Resolution Descriptor". The ORD is the Niagara universal identification system and is used throughout the Niagara framework. The ORD unifies and standardizes access to all information. It is designed to combine different naming systems into a single string and has the advantage of being parsable by a host of public APIs. An ORD is comprised of one or more queries where each query has a scheme that identifies how to parse and resolve to an object. ORDs may be displayed visually, as with the Open Ord locator or they may be entered in a text field, as shown in the Open ORD dialog box (see Figure 1-19). Figure 1-19 Open ORD and graphic locator system
ORDs can be relative or absolute. An absolute ORD usually takes the general format of host|session|space, as illustrated in Figure 1-20. Figure 1-20 Absolute ORD typical structure
host The host query identifies a machine usually by an IP address such as "ip:hostname". For example "fox:" indicates a fox session to the host. session The session is used to identify a protocol being used to communicate with the host. space The space query is used to identify a particular type of object. Common spaces are "module:", "file:", "station:", "view:", spy:, or "history:".
NiagaraAX-3.x User Guide
1-16
The local VM is a special case identified by "local:" which always resolves to BLocalHost.INSTANCE. The local host is both a host and a session (since no communication protocols are required for access). Both a slot path and a handle scheme can name components within a ComponentSpace. So the ORD for a component usually involves both a space query and a path/handle.
Examples of ORDs:
ip:somehost|fox:|station:|slot:/MyService ip:somehost|fox:|station:|h:/42 ip:somehost|fox:|file:/C:/dir/file.txt local:|file:!lib/log.properties local:|module://icons/x16/cloud.png local:|spy:/ In Niagara you may view the complete list of installed ORD schemes at "spy:/sysManagers/registryManager/ordSchemes" (local:|fox:|spy:/sysManagers/registryManager/ordSchemes).
About schemes
An ORD is a list of one or more queries separated by the "|" pipe symbol. Each query is an ASCII string formatted as "<scheme>:<body>". Figure 1-21 Example ORD scheme and body
scheme The scheme name is a globally unique identifier which specifies, in Niagara, how to find a piece of code to lookup an object from the body string. Refer to Types of schemes for a listing of different types of schemes. body The body string is formatted differently, according to the requirements of the scheme. The only rule is that it cannot contain a pipe symbol. Queries can be piped together to let each scheme focus on how to lookup a specific type of object. In general, absolute ords are in the following format: host | session | space (see Figure 1-20). Some examples follow: ip:somehost|fox:|file:/dir/somefile.txt In this example, the "ip" scheme is used to identify a host machine. The "fox" scheme specifies a session to that machine usually on a specific IP port number. Finally, the file scheme identifies an instance of a file within the somehost file system. ip:somehost|fox:1912|station:|slot:/Graphics/Home In this example, the "ip" scheme is used to identify a host machine using an IP address. The "fox" scheme specifies a session to that machine usually on a specific IP port number. Finally, the station and slot schemes identify a specific component in the station database. local:|module://icons/x16/cut.png This example illustrates a special case. The scheme "local" which always resolves to BLocalHost.INSTANCE is both a host scheme and a session scheme. It represents objects found within the local VM.
Types of schemes
ip: The "ip" scheme is used to identify an Ip Host instance. Ords starting with "ip" are always absolute and ignore any base that may be specified. The body of a "ip" query is a DNS hostname or an IP address of the format "dd.dd.dd.dd". fox: The "fox" scheme is used to establish a Fox session. Fox is the primary protocol used by Niagara for IP communication. A "fox" query is formatted as "fox:" or "fox:<port>". If port is unspecified then the default 1911 port is assumed. file: The "file" scheme is used to identify files on the file system. All file ords resolve to instances of javax.baja.file.BIFile. File queries always parse into a FilePath. File ords include the following examples: Authority Absolute: "//hostname/dir1/dir2" Local Absolute: "/dir1/dir2" Sys Absolute: "!lib/system.properties"
1-17
Sys absolute paths indicate files rooted under the Niagara installation directory identified via Sys.getBajaHome(). User Absolute: "^config.bog" User absolute paths are rooted under the user home directory identified via Sys.getUserHome(). In the case of station VMs, user home is the directory of the station database. Relative: "myfile.txt" Relative with Backup: "../myfile.txt" module The "module" scheme is used to access BIFiles inside the module jar files. The module scheme uses the "file:" scheme's formatting where the authority name is the module name. Module queries can be relative also. If the query is local absolute then it is assumed to be relative to the current module. Module queries always parse into a FilePath: module://icons/x16/file.png module://baja/javax/baja/sys/BObject.bajadoc module:/doc/index.html station: The "station" scheme is used to resolve the BComponentSpace of a station database. slot: The "slot" scheme is used to resolve a BValue within a BComplex by walking down a path of slot names. Slot queries always parse into a SlotPath. h: The "h" scheme is used to resolve a BComponent by its handle. Handles are unique String identifiers for BComponents within a BComponentSpace. Handles provide a way to persistently identify a component independent of any renames which modify a component's slot path. service: The "service" scheme is used to resolve a BComponent by its service type. The body of the query should be a type spec. spy: The "spy" scheme is used to navigate spy pages. The javax.baja.spy APIs provide a framework for making diagnostics information easily available. bql: The "bql" scheme is used to encapsulate a BQL query.
Types of space
Space defines a group of objects that share common strategies for loading, caching, lifecycle, naming, and navigation. Following, is a list of some of the different types of space: station file history view
Types of files
In the file system, you may create and edit various types of files, as shown in Figure 1-22. Following, is a list of some of the different types of files that reside in the file space: Figure 1-22 Types of files available from the new file menu
BogFile.bog bog files are database files. Refer to About BOG files on page 1-16 for more information about this type of file. HtmlFile.html Html files are edited in the Text File Editor view and viewed in the Html View.
NiagaraAX-3.x User Guide
1-18
JavaFile.java Java files are edited in the Text File Editor view. PaletteFile.palette These files are custom collections of components that you create and save for viewing in the palette side bar. Refer to To create a palette on page 12-10 for information about creating custom palettes. PxFile.px Px files are edited in the Px view and are used to store graphic presentations that are available for viewing in the Px viewer and in a browser. Refer to About presentation xml (Px) on page 1-13 for more information about Px files. TextFile.txt Text files are edited and viewed in the text file editor. NavFile.nav Nav files are edited in the nav file editor and viewed in the nav tree. Refer to About the Nav file on page 8-47 for more information about nav files.
About views
There are many ways to visualize your system and its components. A view is a visualization of a component. One way to view a component is directly in the side bar nav tree. In addition, you can rightclick on an item and select one of its views to display in the view pane. You can see many different views of components. For example, a component that appears in the nav side bar tree may have a wire sheet view, a property sheet view, and a slot sheet view, that all display in the view pane as shown in Figure 123. Each component has a default view that appears whenever you activate a component (doubleclicking, for example) without specifying a particular view. Figure 1-23 Views
See About the view pane on page 2-10 for more information on the view pane. Refer to Plugin Guides for a comprehensive list of views.
About lexicons
NiagaraAX provides non-English language support by use of lexicons. Lexicons are identified by Java locale codes, such as fr (French) or de (German). When installing NiagaraAX on your PC, an installation step asks you to select language packagesthese are lexicons. Typically, you install only those you might need, even though a Select All option is available. Each lexicon is a folder that contains a collection of lexicon files (moduleName.lexicon). Lexicon files are text files that map various entity keys (such as interface names or error and status values) to localized language characters. Often, mapped characters use special encoding. Note: Factory-supplied lexicons on a NiagaraAX installation CD typically require review and editing before they can be used on an actual job. If needed, you can install lexicons from a NiagaraAX CD to your Workbench PC by simply copying them from the CDs lexicon folder into a lexicon directory created under your Niagara release directory. Lexicon files installed on your PC can be accessed and modified using a simple text editor. However, you typically use the Workbenchs lexicon editor (Tools > Lexicon Editor). The lexicon editor not only provides edit features, but also shows the default (English) value for each line entry. In addition, the editor provides a Lexicon Report view, useful to see various statuses about a lexicon and its contained files. For more details, see Lexicon Editor on page 11-5. Once reviewed and edited, you typically install any needed lexicon into all JACE platforms. For more details, see the Lexicon Installer section in the Platform Guide.
NiagaraAX-3.x User Guide
1-19
1-20
CHAPTER
About Workbench
Workbench is the term for the NiagaraAX graphic user interface. The following sections describe the general layout and many of the features of the Workbench user interface. Refer to the following sections for more information: Tour of the Workbench GUI Customizing the Workbench environment
Niagara AX Workbench
View Pane
Console
The primary window of the Workbench GUI is divided into three main areas: Side bar pane Top-left area displays one or more side bars that you may choose from the Windows menu. For details, see About the side bar panes on page 2-2. View pane Top-right area displays the currently selected view. For details, see About the view pane on page 210. Console Bottom area displays a command line that allows you to issue certain commands directly to the system. For details, see About the console on page 2-11.
21
Figure 2-2
Title Bar
Windows controls
Scroll Bars
Border Controls
Status Bar
You may create additional windows after starting Workbenchall have these basic features: Title bar Has standard Windows title bar features, including windows name and icons to minimize, maximize, and close. Double-click the title bar to toggle between maximized and a sizable window. Border Controls As needed, drag any outside border to resize the entire window. Drag the inside border between the side bar and view areas, or (if shown) the console area to change their relative sizes. Scroll bars Scroll bars appear in window areas when some content portions are not visible. They are along the right and/or bottom portions of a window area (side bar, view, or console). Simply drag a scroll slider (highlighted area) to scroll quickly. Or, click an ending scroll arrow to move in small increments. Status bar At the bottom left of the Workbench window is a status bar. The status bar displays meanings of toolbar buttons. When working in a wire sheet view, other details are revealed in the status line.
2-2
Figure 2-3
You use a popup menu to perform all operations that are available from inside the side bars (such as cutting or pasting). You use the title bar to open, close, and resize the side bars. For more information about the side bar title bar, see About the side bar title bar on page 2-3. For more information about types of side bars see Types of side bars on page 2-3.
Close
Minimize/Maximize
In addition, all side bars have the following controls: Close menu Drop down control used to close the side bar pane. Pane title Icon and text that identifies the side bar. Maximize button When more than one side bar is open, this button appears on the right side of any non-maximized side bar. Clicking on the maximize button will expand the side bar to fill the side bar pane and the restore button will change to the maximize button. Restore button If the side bar pane is at maximum size, the restore button appears on the top right corner of the title bar. Clicking on this button will restore the side bar pane to its previous size and the maximize button will change to the restore button.
To find out more about specific side bar panes and their controls see Types of side bars.
2-3
Bookmarks side bar Displays a list of bookmarks. For details, see About the bookmark side bar on page 2-4. Help side bar Provides a tree view of available help documentation. For details, see About the help side bar on page 2-4. Navigator side bar Provides a tree view of the system. For details, see About the nav side bar on page 2-5. For more information about the nav side bar, see Types of nodes in the nav side bar tree on page 2-6, and About the nav side bar toolbar on page 2-7. Palette side bar Provides a tree view of components that are available in specific palettes. For details, see About the palette side bar on page 2-7 and About the palette side bar toolbar on page 2-8. Jobs side bar Provides a tree view of available components. For details, see About the jobs side bar on page 2-8. Bound ords side bar Provides a listing of all bound ords used in a Px file. For details, see About the bound ords side bar on page 2-9. Widget tree side bar Provides a tree view of all widgets used in a Px file. For details, see About the widget tree side bar on page 2-9. Properties side bar Provides a listing of all properties for a component that is selected in the Px Editor. For details, see About the properties side bar on page 2-10.
From the bookmark side bar, you can double click on bookmark nodes or use popup menus to perform all operations that are available from the side bar (for example, go directly to a bookmarked location, manage bookmarks, edit bookmarks, and more). The quick access provided here is very helpful for changing screens without having to go through multiple selections using other menus or submenus. For more details about the bookmark side bar, refer to the following: To find out how to add or remove bookmarks in the bookmark side bar, see To add a bookmark on page 12-7. For details about managing bookmarks, see To manage bookmarks on page 12-7 For details about editing bookmarks, see To edit a bookmark on page 12-7
2-4
Figure 2-6
The help side bar has three tabs that you may select by clicking on the tab. The three help tabs are listed and briefly described, as follows: Table of Contents Contains a tree view of help topics, listed in alphabetical order by topic. API Contains a tree view of help topics, listed in alphabetical order by module. Search Contains a Find: text entry field and Search button. For details on using the Search, see Using the help side bar on page 12-7.
2-5
Figure 2-7
At the highest level, the nav side bar tree may include the following (when working from a localhost): My Host (local system) My Modules Platform Stations (connected or disconnected)
2-6
the component node. For more details on components, see About components on page 1-9. Control Control points may be displayed directly in the root of the Config node. For more information about Control points, see About point components on page 1-11 and Data and Control Model on page 3-1. Drivers Provides a place to store driver modules (such as the Niagara Network, BACnet drivers, Modbus, and more). When expanded, displays a tree view of loaded driver modules. For more details about drivers, see Driver architecture on page 4-1. Services Component for storing services, such as alarm service, history service, program service, and more.
The nav side bar toolbar includes the following: New tree button When clicked, creates a new tree in the nav side bar. When you have more than one tree node, you can select one to activate from the Drop-down tree selector. Close tree button When clicked, closes the currently displayed palette. Drop-down tree selector When palettes are open in the palette side bar, this selector allows you to choose which palette to display
2-7
Figure 2-9
For more details about the palette side bar, refer to the following: To find out how to use the palette side bar, see Using the palette side bar on page 12-9. For details about adding palettes to the palette side bar, see To open a palette on page 12-
9
About the palette side bar toolbar
In addition to the standard side bar title bar (see About the side bar title bar on page 2-3 for more details) the palette side bar has a toolbar, located just below the title bar as shown in Figure 2-10. Figure 2-10 Palette side bar tool bar
Drop-down palette selector
The palette toolbar includes the following: Open palette button When clicked, opens the Open Palette dialog box. Refer to To open a palette on page 12-9 for information about opening palettes. Close palette button When clicked, closes the currently displayed palette. Drop-down palette selector When palettes are open in the palette side bar, this selector allows you to choose which palette to display.
2-8
Figure 2-11
2-9
Figure 2-13
Note: It is often easier to use the Widget Tree to select objects when you have a lot of objects on a viewespecially when there are several layers of objects. When you select an object in the tree view it is selected in the Px view as well and displays the selection borders and handles.
2-10
Figure 2-15
View pane
Multiple tabbed views may be added to the view pane by using the tab feature. You can add, close, and select tabs in the view window. The view area displays the currently selected view for the active tab. You can change the selected view by doing any of the following: double-click on an item in the nav palette tree select a view or action from the nav palette popup menu select a command from a menu or submenu select a command from the locator bar select a view from the view selector or from the view popup menu
The thumbnail view, when active, appears in the top right corner of the window to help you find your way around the wire sheet. For more details about the thumbnail view, refer to Show Thumbnail on page 14-56. For more details about using tabs, refer to Creating tabs in the view pane on page 2-19.
The console has scroll bars on the right side and the window size may be adjusted by dragging the top border bar. The console provides you with access to a command line prompt without leaving the Workbench environment. From the console you may type in commands directly, including the help command for additional help. The following lines are some console level commands, parameters, and options:
2-11
Tour of the Workbench GUI About the menu bar >wb -help usage: wb [options] <ord> parameters: ord initial ord to display options: -profile:<type> workbench:WbProfile to use -locale:<x> set the default locale (en_US) -@<option> pass option to Java VM
For detailed information about the menus, refer to Types of menu bar items on page A-2.
2-12
Figure 2-18
Toolbar
In addition to the primary (always visible) toolbar, additional sets of toolbar icons are added to the toolbar when different views are active. For example, when the wiresheet view is active, the Delete Links icon is available. When an icon is dimmed, it is unavailable. For more information about specific toolbar icons, refer to Types of toolbar icons on page A-13.
The purpose of the locator bar is to provide a graphical navigation field for selecting and displaying destination references. The locator serves two functions. First, it is automatically updated each time a new view is selected - so that it shows you the Ord of each view. Second, since the Ord is displayed in a graphical row of icons, you may click on any icon along that Ord or any child node from the Ord graphical dropdown menu. Find the Open Ord command by selecting File > Open from the menu bar.
2-13
The view selector provides a context sensitive menu with commands that allow you to quickly display different views of the information that is currently in the view pane. The commands in the view selector differ, depending on the current view pane contents. For example, the view selector commands that are available when you are viewing the platform in the view pane are different from the commands that are available when you are displaying the driver manager view.
2-14
Figure 2-21
If you right-click in a blank area of the pane (not selecting any items any the tree), the nav side bar pane will display the Refresh Tree Node and Sync Tree commands. For descriptions of nav side bar popup menu items, refer to About the nav side bar popup menu items on page A-9.
2-15
Figure 2-23
2-16
Table controls and options These controls affect the display of information in a table view. For details see Table controls and options on page 2-17. Batch editing Batch editing is available in many table views. For details see Batch editing (or batch processing) on page 2-17. Chart controls and options These controls affect the display chart views. For details see Chart controls and options on page 218.
Data Parameters
Data parameters These controls include Delta (for history logging) and Time Range settings. Delta reporting option This option is useful for history logging, when you want to display value changes (delta) in your report. Refer to About delta logging on page 6-15 for information about delta logging. Time range option list This list has a variety of predefined time range options, including an option that allows you to restrict your data presentation to a particular date and time range that you specify. Title bar This area of the table displays the name of the data collection on the left side of the title bar and in some tables (collection table, history table, alarm extension manager, and others) displays the total number of records in the table on the right side of the title bar. Column headings Each column of data has a title that indicates the data type. Column boundaries Each column has a movable column boundary that can be used to re-size the column using the mouse control. Stretch or shrink column width by dragging the column boundary, as desired. Use the Reset column widths menu item to reset all column widths to their default size. Table Options menu This menu is located in the top right corner of the table and provides one or more of the following controls and options. The standard table options menu includes the following items: Reset column widths This menu item sets all columns in the table to their default widths. This is useful if you manually changed widths of columns, and now some contents are hidden (even after scrolling). Export This menu item opens the Export dialog box where you can choose to export the table to PDF, text, HTML, or CSV (comma separated variable). Context-sensitive menu items Additional context-sensitive menu items appear in the table options menu, depending on the component that you are viewing. These additional menu items allow you to select or deselect the item in order to display or hide the column data in the table.
Select multiple rows in a table by pressing the Ctrl or Shift key while clicking the desired rows. Use the popup (right-click, context-sensitive) menu or a toolbar icon to select an editing command
2-17
that performs an action or opens a dialog box editor that is appropriate for the view. Edit appropriate fields if a dialog box is used and click the OK button to process the edits. Note: Some actions, such as moving rows, or editing certain types of fields, are not appropriate for batch editing. In these cases even though you can select multiple rows in the table, the action will be performed on only one (usually the top, or highest) selected record in the table. Figure 2-26 shows an example of batch processing three alarms by selecting three rows in a table view and using the popup menu. In this case all three alarms are acknowledged when the Acknowledge command is selected. Figure 2-26 Batch processing (acknowledging) multiple alarms
Data parameters These controls include Delta (for history logging) and Time Range settings. Delta reporting option This option is useful for history logging, when you want to display value changes (delta) in your report. Refer to About delta logging on page 6-15 for information about delta logging. Time range option list This list has a variety of predefined time range options, including an option that allows you to restrict your data presentation to a particular date and time range that you specify. Chart Title This area of the chart displays the name of the chart. This title is editable in the chart builder view. Y Axis Displays units for the y axis. X Axis Displays units for the x axis. Zoom Controls Zoom controls appear when you drag the mouse cursor left-to-right or top-to-bottom in order to zoom into the plotted data area. Use the zoom control to reduce the magnification amount, or to move the chart left, right, up, or down. You can reduce the zoom level in increments by using the decrease zoom icon . You can restore normal view (no zoom) in one click by clicking the normal view icon . Zoom Controls in Hx Web profile view are available from a popup menu, shown in Figure 2-28, that is activated after you click once on the chart area.
NiagaraAX-3.x User Guide
2-18
Figure 2-28
The popup menu includes the following control-related menu items: Zoom Inzooms in one increment each time you select this menu item. Zoom Outzooms out one increment each time you select this menu item. Original Viewreturns to the non-zoomed display (only available if you have zoomed in). Higher Qualitytoggles between higher and lower quality graphic display for the chart. Charted Values The color of the line and type of line is editable in the Chart Builder view. Popup menu (Export) The popup menu displays the PDF Export menu item. This menu item opens the Export dialog box where you can choose to export the chart to PDF, text, HTML, or CSV (comma separated variable). Tool Tip When you hover the mouse pointer over the chart, a tool tip displays the date, time, and value of that location in the chart. The values are defined by chart axes and not the values of the actual data points. Figure Figure 2-27.
2-19
Figure 2-29
Tabs in view
As needed, you can use each tab to display a different view, component, or even host, all within the same Workbench window. When you select a tab (make it active), the locator bar shows the current path and view. Also, the menu and tool bars update to show appropriate options for the current view. From the view of the active tab, you can copy items, select another tab, and then paste them into that view. You can also drag items into an active view from the (Nav or Palette) side bar. In the Workbench view pane you can use tabs to help organize and selectively display information. Only one tab may be active at a time. In addition to simply clicking on a tab to make it active, you can select File: > Next Tab from the menu bar to move to the next tab, moving left to right, or you can move to the last tab by choosing File: > Last Tab from menu bar. To close a tab, do any of the following: Right-click a tab and choose Close Tab to close that tab, or Right-click a tab and choose Close Other Tabs to close all tabs except that tab. From the menu bar, choose File: > Close Tab. The currently active tab is closed.
The following options are available in the options dialog box: General Workbench options Alarm console options Alarm portal options Text editor options Lexicon options Bajadoc options
NiagaraAX-3.x User Guide
2-20
Note: The Time Format and Unit Conversion parameters affect values that are displayed when connected to a station using Workbenchregardless of the User preferences (set under User Manager). The User preferences that are set under the User Manager are in effect when connected to a station by a browser. Time Format Choose from a format option to set the way that Workbench time values are displayed by default. Unit Conversion Choosing the English or Metric option converts values that are displayed in Workbench to the chosen unit type. Selecting None leaves units in the state that is assigned at the point facet. AutoLogoff Enabled Setting this parameter to True will activate the AutoLogoff feature. When activated, the AutoLogoff feature will automatically log off a user from a platform when there is no activity detected in Workbench for the period specified in the AutoLogoff Period field. Setting this parameter to False will disable the AutoLogoff feature. AutoLogoff Period Time until Workbench logs off a user when AutoLogoffEnable is set to True. Prompt For Name On Insert When set to True, Workbench will display a Name dialog box, when a new item is added to the workspace. Use Anti Alias Anti-aliasing causes text to look crisper or smoother on the screen. When this parameter is set to true, any editable text (for example a label or a text block) will be anti-aliased. Font Size Choose between Normal and Large font options for Workbench display.
2-21
Figure 2-32
Alarm console options include the following: Minimum Group Ack Priority Set a minimum priority level at which groups of alarms (more than one at a time) may be acknowledged. Needs Explicit Acknowledgement When set to true, all alarms must be acknowledged by this console before they are removed from the alarm table. Sounds Enabled When set to true causes a sound to accompany an alarm. Default Sound File Sets the path to the default sound file. Continuous Alarm When set to true, causes an alarm to repeat continually, until it is acknowledged or cleared. Alarm priority coloring The following properties work together in combination to produce a range of colors that are assigned to the possible range of alarm priorities (1 - 255). Low Priority Color Choose a color to designate a low priority alarm. Mid Priority Color Choose a color to designate a mid priority alarm. High Priority Color Choose a color to designate a high priority alarm. The highest priority (priority 1) is assigned the color of the High Priority Color setting. The MidPriority and Low Priority colors are assigned likewise, to Mid and Low Priority alarms. Alarm priorities that fall between these priority levels are assigned colors on a color-scale along a path defined by the three assigned colors. Alarm Class Mapping Provides a way for you to create alarm classes and map specific alarms to classes.
Alarm console options include the following: Tray Icon Enabled When set to True, displays an alarm icon in the system tray when the alarm portal is active.
NiagaraAX-3.x User Guide
2-22
Alarm Popup Enabled When set to True, displays an alarm popup window when the alarm portal is active. Alarm Popup Always On Top When set to True, causes the alarm popup window to stay on top of other windows when the alarm portal is active. Alarm Popup Uncloseable When set to True, makes the alarm popup window uncloseable when the alarm portal is active.
Bajadoc options
Baja reference documentation includes both Java API details as well as Baja slot documentation. Show Baja Only When set to True displays only the reference documentation for slots (Properties, Actions, and Topics). When set to False, documentation on the Java constructors, methods and fields is also displayed. Flatten Inheritance This option allows you to flatten the inheritance hierarchy into a single set of documentation. When set to False only the Java members and Baja slots declared in the specified class are displayed. When set to True all Java members and Baja slots inherited from super classes are also shown.
Px editor options
These options offer ways to customize the presentation and behavior characteristics of the Px editor view. The Px editor options properties are shown in Figure 2-36 and described in the following list:
2-23
Figure 2-36
Px editor options
Show Grid This property sets the default condition of the Px editor grid. Select true to make the grid visible by default or select false to make the grid hidden by default. Either setting may be changed at any time using the PxEditor menu. Grid Size This property sets the size of the grid in the Px editor. Grid Color This property sets the color of the grid in the Px editor. Click in the color field to display the Color Choose dialog box. Use the Color Chooser to set the color that you want to assign to the grid. Use Snap This property sets the default condition of the Snap feature in the Px editor. Select true to make objects snap to locations when they are at a distance equal to the Snap Size. Select false to disable the snap feature. Either setting may be changed at any time from the PxEditor menu. Snap Size Set an integer value in this field to define the interval between successive snaps. Show Hatch This property sets the default condition of the Px editor hatching that displays on objects on the Px editor canvas. Select true to make the hatching visible by default or select false to make the hatching hidden by default. Either setting may be changed at any time using the PxEditor menu. Hatch Color This property sets the color of the hatching in the Px editor. Click in the color field to display the Color Choose dialog box. Use the Color Chooser to set the color that you want to assign to the Px editor hatching.
Wiresheet options
Wiresheet options, shown in Figure 2-37, allow you to customize the appearance of the wire sheet. Figure 2-37 Wire sheet options
Wire sheet options include the following: Show Grid When set to True displays a grid background on the wire sheet view. Show Status Colors When set to True, will display a different color for each status when it appears in the wire sheet. Show Thumbnail When set to True provides a small thumbnail view of the whole wiresheet for orientation and navigation purposes. Thumbnail X A field is provided here for setting the X axis for the default position of the thumbnail view. Thumbnail Y A field is provided here for setting the Y axis for the default position of the thumbnail view.
2-24
Lexicon options
Lexicon options, shown in Figure 2-38, allow you to change the default filter settings for the lexicon report and the lexicon editor. Figure 2-38 Lexicon options
Lexicon options include the following options: Hide Ref Values Ref Values are those filter values that begin with a / . Setting this to True will hide the filter values from lexicon view. Use this if you do not want to localize references (like icons). Hide Accelerators When set to True this option hides entries that define keyboard accelerators. Use this if you do not want to localize the accelerators. Show Missing When set to True this option hides entries that are localized. Use this if you do not want to see localized keys.
2-25
2-26
CHAPTER
Data and Control Model
In any NiagaraAX station, all real-time data is normalized within the station database as points, a special group of components. Each point represents one data item. Note: This applies to a Supervisor station as well as a JACE station, a shift from r2 Niagara data modeling. Stations no longer have external links between them. Instead, proxy points under a Niagara network are used. For more details, see About the Niagara Network on page 4-50. The following sections provide more details: About control points About point extensions About control triggers About point status About proxy points About writable points About composites
Control points are the foundation for all points in the station, including all proxy points. Types of control points Other control components About data value categories About point types About point Out About point inputs About point actions About point facets
31
Boolean Category
BooleanPoint BooleanWritable
Numeric Category
NumericPoint NumericWritable
Enum Category
EnumPoint EnumWritable
String Category
StringPoint StringWritable
See About data value categories on page 3-2 and About point types on page 3-2.
3-2
Figure 3-2
At a minimum, the Out property provides: value Current value of the data item, within one of four possible data categories. See About data value categories on page 3-2. facets Items affecting the display of the value, such as decimal places, engineering units, or text descriptors for Boolean/enum states. See About point facets on page 3-7. status Current status of the data, meaning the health and validity of the associated value. Status is specified by a combination of status flags, such as fault, overridden, alarm, and so on. If no status flag is set, status is considered normal and appears by default as {ok}. Status flags are set in a number of ways. See About point status on page 3-15. priority Currently active Niagara priority level (from a 16-level priority scheme), for writable control points only. For more details on priority, see About the priority scheme on page 3-24. Note: All writable control points include priority in status, including writable proxy points. Priority appears at the end of the Out value, by default formatted as @ n, where n is 1 to 16, or if the fallback value is in effect, formatted as @ def. For example: Off {ok} @ 1.
By default, a writable points glyph (shape on wire sheet) shows only inputs In10 and In16 pinned for linking. However, when linking to a writable point, the Link editor shows all available priority inputs. For more details, see About the priority scheme on page 3-24.
3-3
Figure 3-4
An action is a slot that defines a behavior. Some other control objects and extensions also have actions. In the case of the 4 writable control points, default actions include the ability to: Override the point at priority levels 8 (override) and 1 (emergency override), where control can be independently set or autoed at either level. An override can be for a defined (or custom) length duration, as specified in the actions popup dialog. See About override actions on page 3-4. Set the value of the points Fallback property. See About set (Fallback) action on page 3-4. Often, you modify a writable points default actionssee Modifying default actions on page 3-5.
By default, a Permanent override is the first choice in the drop-down listthe override value will remain effective until the next time this action is autoed. Other timed durations are available, including a Custom selection in which a user specifies a duration in hours, minutes, and seconds. After clicking OK, the override action is issued to the pointif this is the highest effective priority level, the writable point operates under this control. If this is a timed override, the action is automatically autoed upon expiration of the override period.
3-4
Figure 3-6
From the set action prompt, a Cancel leaves the current Fallback property unchanged. Otherwise, the Fallback property is set to the value entered (or currently displayed value). Note: The set action prompt does not display (or accept) a null value for Fallback. However, a Fallback of null can be entered from the points property sheet. A common application for this feature is with NumericWritables used as setpoints, particularly under a NiagaraNetwork. As Niagara proxy points are always read-only points (not writable types), yet inherit any actions of the source point, this feature provides user access to setpoints via px graphics without creating additional proxy points. In particular, this set action is designed to work well with SetPoint type widgets (found in the kitPx palette). For details, see About Widgets on page 8-9. Note: Each of the four constant kitControl components also provides a set action that works in a similar manner, including with kitPx widgets. However, a constant object (NumericConst, BooleanConst, etc.), has no priority inputs or Fallback propertythe set action simply writes directly to the components current Out slot. For details, see the About Constant components section in the kitControl Guide.
Display names By default, action display names are generic (Emergency Inactive and so on). You can change the display name for any action. From the slot sheet, click on an actions Display Name for an editor (Figure 3-7). When you change a display name from defaults, it appears in listed in bold.
3-5
Figure 3-7
When a user invokes an action, the popup menu lists possible actions by more meaningful descriptors. For example, you could change the set action display name from Set to Set Fallback. Action access By default, for any writable point, all actions are available to any admin-level user, and all actions except emergency-level ones are available to an operator-level user. As needed, you can selectively hide actions (from any level user), or change default permissions for actions. From the slot sheet, do this by editing the actions config flags (right-click the action and select Config Flags, as shown in Figure 3-8). Figure 3-8 Editing config flags of action to hide or change permission level
In the Config Flags editor, you click to assign or remove config flags. As pertains to action slots, the following flags are most often changed: Operator If checked, only operator-level access is needed to invoke the action. If cleared, admin-level access is needed. For details on permission levels, see About permission levels on page 9-6. Confirm Required If checked, a second (confirmation) dialog appears after the action is invoked, before the action executes. An example confirmation dialog is shown in Figure 3-9. By default, this flag is cleared. Hidden If checked, the action does not appear (is hidden) from the action popup menufor any user. You may wish to do this selectively for some actions, for example, the set action for Fallback access. (Note that a user with admin-level rights to the point may still access the points slot sheet.)
3-6
Figure 3-9
Optionally, you can add or remove facet values in a pointhowever, for most points you will only modify or provide new values for the default facets. Note: For string-type points (StringPoint, StringWritable), facets have little practical application. By default, the Facets slot is empty for string-type points.
3-7
Figure 3-11
When defining range enumerations, instead of defining a custom one with your supplied ordinals and tags text, you can also select from well known frozen enumerations, as defined in various installed modules. A checkbox enables this and provides a drop-down list for you to select by module and enumeration type (see Figure 3-12). Figure 3-12 Frozen enum selection in Enum dialog
Depending on the driver/network type, the Point Manager under a device may automate this facets range configuration when you add enum-type proxy points. For example, under a Lonworks device, if you add a EnumPoint for a Lonworks NVO that uses an enumerated SNVT, that points facets will automatically be configured with the correct range values. Note: If an enum-type point receives an input value not included in its defined facets range, it displays the ordinal integer value for that input. This varies from the multistate objects used in r2 Niagara, which would display Error for any value not defined in its stateText entries.
3-8
enum values (in its range), using display tag text. This list appears ordered top-to-bottom by the tag associated with each ordinal, lowest-to-highest. NumericWritable Upon an override or emergency action, an entry dialog permits a value only between the facets min and max values, inclusive. By default, these facets values for numeric-type points are min= -inf and max= +inf (no effective range checking for an action). For example, you could use this facets feature with a NumericWritable that sets a temperature control setpoint, by setting its facets min= 65 and max=85. After saving this change, any override or emergency action issued to that NumericWritable would need to fall within this range. Otherwise, a user would see a message showing the acceptable range, and be prompted to try again. Note: Facets min and max values do not affect any received input values or proxied data, only what can be issued via an action.
3-9
Figure 3-13
If a point has multiple extensions, they are processed in the same top-to-bottom order that they appear listed in that points property sheet. You can re-order extensions in a pointfrom the top of the points property sheet, or on the points icon in the Nav sidebar, right-click and select Reorder. Note: If needed, you can also select and expose extension properties (for linking convenience) on the points glyph by using the Composite editor of the parent point. For more details, see About composites on page 3-26.
3-10
Figure 3-14
Proxy extension for control point (null) and a Bacnet proxy point.
For more details, see About proxy points on page 3-18 and ProxyExt properties on page 3-23.
Control extensions perform additional processing on a points received value. There are relatively few types of control extensions. See Types of control extensions on page 3-11.
3-11
ProxyExt (control:Extensions)
(standard for any point, see About the proxy extension on page 3-10)
Alarm extension properties define items such as alarm enable (annunciation) transition types, alarm delay times, associated alarm class, and alarm display text for different transition types. You define the actual alarm limits or state(s) in properties in the extensions Offnormal Algorithm slot. For more details, see About alarm extension properties on page 7-3.
General description
Provides alarming based upon numeric alarm high and low limits. Includes configurable deadband. Provides alarming based upon one of two possible values (state) as an alarm condition. Provides alarming based upon mismatch between commanded value and actual (sensed) value. Extension has feedbackValue input property for linking.
Writable
NumericWritable any object with single numeric Out, e.g. kitControl: Math object Add BooleanWritable any object with single Boolean Out, e.g. kitControl: Logic object And BooleanWritable
BooleanChangeOfStateAlarmExt (alarm:Extensions)
BooleanPoint
BooleanCommandFailureAlarmExt (alarm:Extensions)
3-12
General description
Provides alarming based upon one of multiple possible values (state) as an alarm condition. Provides alarming based upon mismatch between commanded value and actual (sensed) value. Extension has feedbackValue input property for linking. Provides alarming based upon any combination of status flags, including overridden, null, etc. Sliding alarm limit for LoopPoint based upon controlled process deviation from setpoint. Provides alarming based upon accumulated runtime (elapsed active time). References a specific DiscreteTotalizerExt under same parent point. Provides alarming based upon accumulated COS (change of states). References a specific DiscreteTotalizerExt under same parent point.
Writable
EnumWritable
EnumWritable
BooleanWritable with DiscreteTotalizerExt any object with single Boolean Out (also with a DiscreteTotalizerExt), e.g. kitControl: Logic object And BooleanWritable with DiscreteTotalizerExt any object with single Boolean Out (also with a DiscreteTotalizerExt), e.g. kitControl: Logic object And
ChangeOfStateCountAlarmExt (kitControl:Alarm)
Each history extension has various properties in two major groups: Collector Determines how or when data is collected, such as active time, and (if applicable) either change tolerance or the collection interval time. History Config Determines how the data is stored and accessed in the system, such as history name, capacity, and
3-13
BooleanInterval NumericChangeOfValue
as above NumericPoint
Collects upon each change of value (outside a specified tolerance) or any object with single Numeric Out, e.g. kitCon- change of status. trol: Math object type Add Collects upon a repeating time interval, as configured. Collects upon each change of enumerated state or status. Collects upon a repeating time interval, as configured. Collects upon each change of string value or status. Collects upon a repeating time interval, as configured.
NumericInterval EnumChangeOfValue
as above EnumPoint
as above EnumWritable any object with single Enum Out as above StringWritable any object with single String Out as above
EnumInterval StringChangeOfValue
as above StringPoint
StringInterval
as above
The two control trigger types are: Interval Fires at a regular, repeating intervals specified in its Trigger Mode property. For example, every n minutes, n hours, or whatever combination needed. Daily Fires once a day at a specific time and day of week, as specified in its Trigger Mode property. For
NiagaraAX-3.x User Guide
3-14
example, at 00:00:00 (midnight) all days of week except Sunday. Each type has even more configuration capabilities to further define the fire time.
Type
alarm
Meaning
Point currently has a value in an alarm range, as defined by property in its alarm extension.
fault
Originates from a proxy point only. Typically indicates a configuration or licensing error. If it occurs after normal operation, it may indicate a native fault in device, or the points parent device has a fault status.
overridden
Current point control is from an action, meaning a user-invoked command at either priority level 8 (override) or priority 1 (emergency).
disabled
Originates from a proxy point only. Point (or its parent device or network) has been manually disabled (property enabled = false).
3-15
Type
down
Meaning
Originates from a proxy point only. Driver communications to the parent device are currently lost, based upon the device status (Monitor) configuration for that network.
stale
Originates from a proxy point only. Driver communications have not received a requested response for this data item within the configured times (Tuning period).
null unackedAlarm
Current point control has entered a null state, vs. a specific value and priority level. Typical to fallback operation for a writable point. Last point alarm event has not yet received user acknowledgment. Points alarm extension uses alarm class requiring acknowledgment.
3-16
See Figure 3-19 for examples of override and alarm status in simple control points. Figure 3-19 Status with simple control points
3-17
For the duration of the override, the linked Average object will also have an overridden status, as will the Reset object, and so on. However, note that the linked writable point (NWcombined) in this example does not have overridden statusstatus never propagates to any point. Note: Status propagation did not occur in Niagara r2, and is a new configuration option in NiagaraAX. Before using this feature in an actual job, you should test and evaluate results to be sure it has the desired effect. For example, if a Logic or Math object is exposed in a graphic and appears overridden, a user may (incorrectly) assume that they can right-click command (perform an action) on that kitControl object, based on status color indication.
3-18
As needed, you can create folders under a devices Points container to further organize the proxy points. In addition to proxy points, you can also add simple control points (null proxy ext), schedule objects, and other kitControl objects under a devices Points container. Note: See also Location for kitControl components in the kitControl Guide. Depending on station type, proxy point locations will vary as follows: JACE station Most proxy points are under non-Niagara driver networks, such as Lonworks, Bacnet, and Modbus, to name a few. These points represent real-time data in various devices attached (or somehow networked) to the JACE controller. Like all AX stations, the JACE will also have a Niagara Network too. Any proxy points under it will represent data received from other JACE stations and/or perhaps the Supervisor station. Supervisor station Typically, most proxy points are under its Niagara Network, where each JACE appears as a station device. Proxy points under each station device represent real-time data from that JACE. Typically, most data in a JACE station also originates as a proxy point, and so these points are often a proxy of a proxy. For details, see About the Niagara Network on page 4-50. Note: If the Supervisor is specially licensed for direct field device communications, such as a BACnet Supervisor or OPC Supervisor, its station will have many proxy points under other driver network types, and perhaps only a few under its NiagaraNetwork. In Drivers architecture, it resembles a JACE. For more details, see Driver architecture on page 4-1.
3-19
Figure 3-22
Typically, you have performed your previous station configuration of this network with the host (e.g. JACE) networked and communicating to the devices of interest. This allows you to use the Learn Mode feature (provided by most drivers). This feature is especially useful for adding proxy points to the station. In the Point Manager, the Learn Mode toggles the view between only proxy points that are currently in the station (Database), and a split view showing both a Discovered area and the Database area. See About Learn toggle on page 4-16 for more details. Clicking the Discover button launches a point discovery job. The driver queries the selected device to retrieve available data. Depending on a number of factors (driver type, communications rate, amount of data), this can take from only a few seconds to over a minute. See Figure 3-23. Figure 3-23 Points Discover in progress
When the discover completes, the Discovered view portion provides a table of available data items. Each row represents at least one item (a candidate for one proxy point). If there are multiple, closelyrelated data items, that row appears with a leading plus (+). You can expand it to see other available data items. Again, each row is a candidate for one proxy point. Depending on the driver type, table column headings varyfor example a Bacnet points discover shows Object Name, Object ID, etc., in the Discovered table (see Figure 3-24).
3-20
Figure 3-24
As needed, you click on column headers to resort and/or use the scroll bar to view available discovered data items. After selecting one or more items by clicking on rows (to highlight), you can click the Add button to start the proxy point creation process. The Add dialog appears (Figure 3-25). Figure 3-25 Add points dialog
The Add dialog allows you to select each data item and change things about its default point creation before it is added to the station database. Most important is Type, meaning the control point typeas unlike other things (such as Name) you cannot change that after the creation. Apart from Name and Type, most other properties are proxy extension properties. Selecting the Type drop-down, alternate point types are available for selection, see Figure 3-26. If the driver recognizes the data item as writable, this will include writable point types.
3-21
Figure 3-26
Typically, you do not change the data category type (Boolean, Numeric, etc.), but you may wish to select either a read-only point or a writable point. You click any discovered data item to select it for changing Type, or any other property. If a common change is needed among data items (for example, Poll Frequency), you can select multiple items and edit that property one time. When you are satisfied with the point types shown for each item, you click the OK button at the bottom of the Add dialog. Those proxy points are then created in the station database in the Points container, and now appear as table rows in the Database (lower) table of the Point Manager view. The source data items now appear ghosted in the Discovered (upper) table, to indicate that they now exist in the station database. See Figure 3-27. Figure 3-27 Proxy points added to station
You may repeat this process as needed to create additional proxy points, where you can toggle the display of the Discovered portion off and on by clicking the Learn Mode tool. Once in the Database table of the Points Manager, you can click to select (highlight) a proxy point, then modify it using the Edit button, or simply double-click it. This produces an Edit dialog nearly identical to the Add dialog, where you can change the same proxy extension properties and Name (but not Type). You can also select multiple proxy points and use the Edit dialog to gang edit one or more of the same properties that are common to each selected point. In the Database portion, you can right-click a proxy point to access its normal views, including property sheet. There, you can expand its Proxy Ext to see many of the same properties you saw in the Add and Edit dialogs. Also, you can right-click a proxy point in the Database table to access any available point actions (if a writable point). Each Points container has other views besides the default Point Manager. For example, you can select its Wire Sheet view to see and organize the proxy points glyphs (Figure 3-21 on page 19), add additional objects from palettes control and/or kitControl, and so forth. Note: The following notes apply when working with proxy points. In a Niagara Network, the Discover and Add process is different than in other driver networks. There, you use a BQL Query Builder to select data items in a remote station. For more details, see
3-22
About the Niagara Network on page 4-50 and About the Bql Query Builder on page 4-61. Any Point Manager view only shows proxy points. If you added other objects (for example, control points with null proxy extension, or kitControl objects), they do not appear in the Database table. However, they are visible in the Nav tree and the Points wire sheet. If you want folders under Points to organize your proxy points and other objects, use the New Folder button in the Point Manager to create each folder. This provides a Point Manager view for each folder. For more details, see About the Point Manager on page 4-28.
ProxyExt properties
Regardless of the driver, the proxy extension (ProxyExt) for any proxy point has a number of core properties that provide the same behavior. Depending on the driver, other ProxyExt properties are often presentsee the particular driver document for details on those properties. Core properties in any ProxyExt include the following: Status (read only) Status of the proxy extension, which in turn determines parent point status. See Proxy point status on page 3-18. Fault Cause (read only) If point has fault status, provides text description why. Enabled Either true (default) or false. While set to false, the points status becomes disabled and polling is suspended. Device Facets (read only) Native facets used in proxy read or writes (Parent points facets are used in point status display, and are available for edit in Add and Edit dialogs in Point Manager). Conversion Specifies the conversion used between the read value (in Device Facets) and the parent points output (in selected point facets). Note: In most cases, except when working with particular Ndio proxy points, or perhaps Modbus proxy points, the standard Default conversion selection is best. Conversion selections include: Default (The default selection). Conversion between similar units is automatically performed within the proxy point. For example, if a Lon proxy point with a LonFloatProxyExt (Device Facets of degrees C), if you set the points Facets to degrees F, its output value automatically adjusts. If you set the parent points Facets to dissimilar units (say, in this case to kilograms), the parent point has a fault status to indicate a configuration error. Linear Applies to certain Ndio proxy points, such as NdioVoltageInput and NdioResistiveInput. Also commonly used in some Modbus proxy points. For these points, you typically want the points output value in some units other than Device Facets (if Ndio, voltage or resistance), and the Lin-
3-23
ear selection provides two fields to make the transition: Scale: Determines linear response slope. Offset: Offset used in output calculation. Reverse Polarity Useful in a Boolean-type Ndio proxy point to reverse the logic of the hardware binary input. Also, may be used in any drivers proxied BooleanPoint, as a way to flip the read state of the native value. Note: Be careful in the use of the reverse polarity conversion, as it may lead to later confusion when troubleshooting logic or communications problems. Thermistor Type 3 Applies to an NdioThermistorInput point, where this selection provides a built-in input resistance-to-temperature value response curve for Type 3 Thermistor temperature sensors. Tabular Thermistor Applies to an NdioThermistorInput point, where this selection provides a control for a popup dialog for a custom resistance-to-temperature value response curve, including ability to import and export response curves. Tuning Policy Name (most drivers) Associated network tuning policy for this proxy point, by name. Tuning policies are used to separate poll rates and other driver features. See About Tuning Policies on page 4-8. Read Value (read only) Last value read from the device, expressed in device facets. Write Value (read only) Applies if writable point only. Last value written, using device facets.
3-24
However, note that by default, a set action exists on any writable point, which writes directly to the Fallback value. See About set (Fallback) action on page 3-4. If you want a writable point to always have a Fallback of null, go to its slot sheet and set the Hidden config flag on the set slot. Otherwise, a user can invoke a right-click command to set Fallback to any value. For more details, see Modifying default actions on page 3-5.
Min Active Time:00000h 01m 30s Specifies that once started, the fan must run at least 90 seconds. Min Inactive Time:00000h 03m 5s
3-25
Specifies that once stopped, the fan must remain stopped at 3 minutes, 5 seconds. Starting with the fan stopped at schedule level (priority 16), if a user gives it a manual override on (priority level 8), the fan will run for 90 seconds at priority level 6 (a higher level). After this period, the fan continues running at the override 8 level for the duration of the override. During the initial 90 seconds, a different override action (off or auto) will be ineffectiveas the higher priority level 6 remains in control. See Priority level conventions on page 3-25. Once stopped, the points minimum off time will keep the fan off at priority level 6 for the specified duration (in this example, 3 minutes and 5 seconds). During this period, only an emergency command or input change at In2In5 can effect further change.
About composites
Currently, a composite is something that Workbench allows you do to virtually any component in a station, notably control points and objects, and even folders that contain control logic. When you make a composite, you expose slots of child components in the glyph (object shape) of that parent (composited) component. This can simplify linking and promote reuse of control logic.
Caution Composites have associated issuessee Composite issues on page 3-29. For now, you should avoid making folder composites in your control logic, and instead use the composite feature only at the point/ object level to expose extension slots (if necessary). See example Point-level composite on page 3-26. When you composite a component (say a control point, meaning its contents), you select specific slots in child components (say, properties and/or actions of its extensions) to be exposed in the shape of that point. Then, when looking at that point in the wire sheet view of its parent folder, you can see exposed properties of children as linkable slots (and/or available actions). Note: If you are familiar with Niagara r2, the composite concept is similar to Bundle or Composite objects, only more flexibleyou can expose slots in containers many levels down, for example. However, please see the Caution above.
Point-level composite
Figure 3-28 shows a proxy NumericPoint representing a space temperature value that has two extensions: an alarm extension (OutOfRangeAlarmExt) a history extension (NumericInterval) Property sheet of proxy point with two extensions
Figure 3-28
In this example, when another system-related BooleanWritable (representing the system fan) has a false (Off ) status, it is desired that this temperature point be: disabled from alarming, and disabled from continued history collection
3-26
To achieve these disable functions, you must link the controlling source fan out to a slot of each extension (visible in points wire sheet view, but not in the parent wire sheet for the point itself ). Furthermore, other kitControl objects needed. Without making a composite, the necessary objects and links may appear as shown in Figure 3-29. Figure 3-29 Proxy point example without composite
kitControl Objects Proxy Numeric Point
Notice that when looking at the proxy NumericPoint in the wire sheet of its parent folder, it is not apparent that this point has linked extensions. By making a composite of the NumericPoint (acting as the container for both the extensions plus the additional kitControl objects) you can simplify reuse and clarify available links. Figure 3-30 shows the now-composited NumericWritable linked to the controlling BooleanWritable, and the wire sheet view of the NumericWritable that contains the needed kitControl objects. Figure 3-30 Proxy point as composited container
In this example, the exposed input slots in the composite were renamed from In to almInhib and histStop respectively, to clarify what each does. When looking at the Composite Editor for this example NumericPoint, it appears as shown in Figure 3-31.
3-27
Figure 3-31
Folder-level composite
Note: Please see the related Caution on page 26. Figure 3-32 shows a simple example of three Math objects chained together, located in a LogicA folder. Together, they perform a Celsius to Fahrenheit conversion. A NumericWritable is also shown linked to the first Math object to test. Figure 3-32 Simple example of folder before compositing
If this application was needed later, you could copy all 3 linked objects again and insert in another (perhaps already crowded) wire sheet. However, the middle Multiply object reveals an intermediary result that is distracting. Or, you could just create a new subfolder with only the 3 linked objects and then link directly to the child objects as needed (however, it would not be obvious from the parents wire sheet that links to children in that folder were established). It would be better to encapsulate this into a single object with only a single input (degrees F) and single output (degrees C). You can do something like this by compositing the parent container, in this example folder FolderA. In this case, you would want to delete the link from the test NumericWritable first, then open the Composite Editor for the parent component FolderA (Figure 3-33). The Composite Editor lets you expand the tree of all contained components and expose those items of interest.
3-28
Figure 3-33
In this example, only the In A of the first math object and the Out of the third math object is selected to be exposed. The Composite Editor provides a tree pane showing slots of points and objects (by clicking the expand controls), and a slot is exposed by simply double-clicking it. Other controls in the editor are available to rename, remove, reorder and reverse exposed items, but are not used here. (For more details, see Making a composite.) After clicking OK to perform the composite, the item composited (in this example, LogicA) shows exposed slots when viewed in its parents wire sheet. Figure 3-34 shows the test NumericWritable now linked to the composited LogicA folder. Figure 3-34 Example LogicA folder showing exposed input and output
You could later reopen this folders Composite Editor and rename the exposed properties differently, perhaps inDegF and outDegC (to make the purpose of the composited folder clearer). This would not affect the three (child) math objects in any way.
Composite issues
Although composites can simplify linking and make understanding logic flow easier, they always introduce performance issues. Perhaps the biggest issue is that once you link a dynamic value to a composite, for example the out of a proxy point, it essentially pinned into the subscribed state. This means that proxy point will always be polling (regardless of any other usage). In addition, each item exposed in a composite represents a link, where each link consumes some small amount of station resources. If used excessively, composites could noticeably reduce the total capacity of the station.
3-29
3-30
CHAPTER
Driver architecture
In any NiagaraAX station, one or more driver networks are used to fetch and model data values. Data is modeled with proxy points, lower-tier components in that drivers architecture. For more details, see About proxy points on page 3-18. To support a drivers proxy points, the station must have that drivers network architecture. The following main topics apply to common driver architecture: What are networks? About Network architecture About the Driver Manager Common network components About the Device Manager Common device components Types of device extensions About the Point Manager About Histories extension views About Schedules extension views About the Niagara Network
41
Figure 4-1
Note: Currently, all stations require a NiagaraNetwork. It may be used to model data in other NiagaraAX stations. Also, it contains the NiagaraFoxService required for Workbench-to-station communications. For more details, see About the Niagara Network on page 4-50. Note: By convention, you should keep all driver networks located under the stations Drivers containerit is a special component with a view that provides some utility. See About the Driver Manager on page 4-4 for more details.
To simplify driver modeling, the New Station wizard automatically creates the necessary Drivers container, complete with a NiagaraNetwork (and its required component slots). If engineering a JACE station, you invariably add additional driver networks, opening the drivers palette and copying the network-level component into Drivers. Or, you can use the New button in the Driver Manager. Examples are a LonNetwork or BacnetNetwork. If engineering a Supervisor (PC) station, the NiagaraNetwork may be the only one needed. Optionally, you may add a database network (providing the PC host is licensed for it). And, if a PC host licensed as a direct integration Supervisor (e.g. BACnet Supervisor), you may add a driver network (e.g. BacnetNetwork) directly into its Drivers container. Note: Regardless of host platform, in most cases the network component is the only item you need to manually copy from that drivers palette. After that, you use manager views to add child components like devices and proxy points, even if programming offline.
4-2
This enforces the correct component hierarchy under that driver as you engineer, and helps coordinate mechanisms used by the driver for communications. Exceptions to this rule are noted (as applicable) in other documentation about NiagaraAX drivers.
Note: Depending on the specific driver, there may be additional slots in the DriverNetwork. For example, if a field bus network, there may be PollScheduler and/or CommConfig slots. Some of these may require proper configuration before driver communications occur. See Additional network components on page 4-11. The DriverNetwork is also the parent container for all device-level components. Devices list in tabular format in the default view for that network, the DeviceManager. See About the Device Manager on page 4-12. You use the Device Manager to create and manage device components, and (if the driver provides this), use discover features.
The DriverDevice is also the parent container for all device extensions. As shown in Figure 4-5, device extensions (e.g. Points) are visible under the device when you expand it in the nav tree.
4-3
Figure 4-5
By default, each driver network lists showing its name, a type description, a real-time status field, whether it is enabled, and a fault cause field (empty, unless the network is in fault). Within the Driver Manager view, network-level operations are available: Double-click a network to go to its Device Manager view. See About the Device Manager on page 4-12. Right-click a network to see its popup menu, including available actions. Available actions will vary by driver, but may include Ping, Upload, and Download as examples. Buttons at the bottom of the Driver Manager provide other functions. See the section Driver Manager New and Edit on page 4-4.
4-4
Edit Note: New and Edit are also on the Driver Manager toolbar and the Manager menu.
New
The New button in the Driver Manager allows you to add a new driver network to the station. This is equivalent to copying a driver network component from that drivers palette. The New dialog provides a selection list for network type, and also the number of networks to add (Figure 4-7). Figure 4-7 New dialog in Driver Manager
Note: Currently, you are allowed to add multiples of any driver network, as well as any network type (regardless of the stations host platform). However, please understand that many networks should be one-only per station, e.g. a NiagaraNetwork and BacnetNetwork. Also, consider that networks shown in the selection list reflect only the modules available on your Workstation, and may not be present (or supported) on the target NiagaraAX host.
Edit
The Edit button in the Driver Manager allows you to rename a selected network, or to set it to disabled (Figure 4-8). Figure 4-8 Edit dialog in Driver Manager
Caution Whenever you set a network to disabled (Enabled = false), the network component and all child driver components (all devices, proxy points, etc.) change to disabled status. If a field bus driver, communications routines like polling and device status pings also suspend. By default, disabled status color is gray text on a light gray background. This network-wide action may be useful for maintenance purposes. Note that Enabled is also individually available at the device-level and proxy point-level, using the Edit button/dialog in the Device Manager or Point Manager, respectively. A disable at the device-level disables all child (proxy points), as well as polling to that points under that device. A disable at the proxy-point level disables the single point.
4-5
Network status properties About network Alarm Source Info About Monitor About Tuning Policies Additional network components
Enabled
By default, network Enabled is trueyou can toggle this in the property sheet, or in the Driver Manager (by selecting the network and using the Edit button). See related Caution on page 5.
Health
Network Health contains historical properties about the relative health of the network in the station, including historical timestamps.
4-6
Alarm Source Info properties work the same as those in an alarm extension for a control point. For property descriptions, see About alarm extension properties on page 7-3. Note: Each child device object also has its own Alarm Source Info slot, with identical (but independently maintained) properties. See Device Alarm Source Info on page 4-20.
About Monitor
A networks Monitor slot holds configuration for the ping mechanism used by the driver network. In the networks property sheet, expand the Monitor slot to see configuration (Figure 4-11). Figure 4-11 Example Monitor properties
Monitor provides verification of the general health of the network, plus the networks pingables (typically, devices) by ensuring that each device is minimally pinged at some repeating interval. If a device responds to the monitor ping, device status is typically ok, and normal communications routines to it (proxy-point polling, plus reads of device schedules, trends, etc. if supported by the driver) proceeds normally. Typically, this applies even if the device returns an error response to the ping, because this indicates that the device is alive. If a device does not respond to the monitor ping, it is marked with a down statusthis causes normal communications routines to that device to be suspended. Upon the next successful monitor ping to that device, device status typically returns to ok and normal communications routines resume. Note: Whenever successful communications occur to a device, that device components Health property is updated with the current time. The network ping Monitor will only ping the device if the time of last health verification is older than the ping frequency. Therefore, in normal operation with most drivers, the proxy point polling mechanism actually alleviates the need for the monitor ping, providing that the ping frequency is long enough. Also, in most drivers if a point poll request receives no response (not even a null) from a device, a ping fail condition is immediately noted, without waiting for the monitor ping interval. The following sections provide more Monitor details: Monitor properties Monitor considerations by driver
Monitor properties
The monitor ping properties are as follows: Ping Enabled If true, (default) a ping occurs for each device under the network, as needed. While set to false, device status pings do not occur. Moreover, device statuses cannot change from what existed when this property was last true. Note: It is recommended you leave Ping Enabled as true in almost all cases. Ping Frequency Specifies the interval between periodic pings of all devices. Typical default value is every 5 minutes (05m 00s), you can adjust differently if needed. Alarm On Failure If true (default), an alarm is recorded in the stations AlarmHistory upon each ping-detected device event (down or subsequent up). If false, device down and up events are not recorded in the stations AlarmHistory. Startup Alarm Delay Specifies the period a station must wait after restarting before device down or up alarms are generated. Applies only if the Monitors property Alarm On Failure is true.
4-7
Note: Some driver networks do not have Tuning Policies, for example an RdbmsNetwork for a database driver. Also, the NiagaraNetwork has greatly simplified Tuning Policies. By default, a drivers TuningPoliciesMap contains just a single TuningPolicy (Default Policy). However, you typically create multiple tuning policies, changing those items needed differently in each one. Then, when you create proxy points under a device in that network, you can assign each point (as needed) to the proper set of rules by associating it with a specific tuning policy. As a simple example (under a BacnetNetwork), you could duplicate the default tuning policy twice, naming the first copy Slow Policy and the second copy Fast Policy. Then, in each copy change the Poll Frequency property from Normal to Slow or Fast, respectively. You would then have 3 available (and different) poll frequency groups to pick from when you create and edit proxy points. The following sections provide more Tuning Policy details: Tuning Policy properties Tuning Policy considerations by driver
4-8
Write On Start Applies to writable proxy points. Determines behavior at station startup. If true, (default) a write occurs when the station first reaches steady state. If set to false, a write does not occur when the station reaches steady state. Write On Up Applies to writable proxy points. Determines behavior when proxy point (and parent device) transitions from down to up. If true, (default) a write occurs when the parent device transitions from down to up. If set to false, a write does not occur when the parent device transitions from down to up. Write On Enabled Applies to writable proxy points. Determines behavior when a proxy points status transitions from disabled to normal (enabled). Note this status can be inherited globally if the parent device was set to disabled (or network-wide if driver network was set to disabled). If true, (default) a write occurs when writable point transitions from disabled. If set to false, a write does not occur when writable point transitions from disabled. Stale Time Applies to all proxy points. If set to a non-zero value, points become stale (status stale) if the configured time elapses without a successful read, indicated by Read Status ok. If set to zero (default), the stale timer is disabled, and points become stale immediately when unsubscribed. Note: By default, proxy point status stale is indicated by tan background color. In addition, stale status is considered invalid for any downstream-linked control logic. For more details, see About isValid status check on page 3-18. Poll Frequency (May not exist in some drivers) Applies to all proxy points. Provides a method to associate the tuning policy with one of 3 Poll Rates available in the networks Poll Service: Fast Rate, Normal Rate, or Slow Rate. The default poll frequency is Normal. Note: Depending on the driver, there may be a single Poll Service (or Poll Scheduler) slot under the network, or as in the case of a BacnetNetwork, a separate Poll Service for each configured port (IP, Ethernet, Mstp) under its BacnetComm > Network container. The NiagaraNetwork uses subscriptions instead of polling.
4-9
Figure 4-13
Example BacnetPollService
Dibs stack. When first subscribed, a pollable moves to the top of the dibs stack (first dibs). The poll scheduler always polls the dibs bucket before doing anything else. The dibs stack is polled last-in, first-out (LIFO). As long as entries are in the dibs stack, they are polled as fast as possible with no delays. 2. When the dibs stack is empty, the scheduler attempts to poll the components in each rate bucket using an algorithm designed to create uniform network traffic. For example, if the fast rate is configured to 10 seconds and there are 5 components currently subscribed in the fast bucket, then the scheduler will attempt to poll one component every 2 seconds. Note: Every ten seconds the poll scheduler rechecks the buckets for configuration changes. So if a pollables configuration is changed from slow to fast, it takes at most ten seconds for the change to take effect. Poll statistics are also updated every ten seconds. You can manually reset the statistics by issuing the Reset Statistics action to the Poll Service (Figure 4-14). Figure 4-14 Reset Statistics action of PollService
4-10
4-11
See the driver document for specific details on configuring a networks communications components.
For more details see About the Niagara Network on page 4-50, or the corresponding driver document for driver-specific properties and components of a network.
4-12
Figure 4-17
Following station configuration, this view provides a status and configuration summary for all devices networked using that driver. The Exts column provides quick double-click access to device extensions, such as Points for proxy points, Schedules for imported schedules, and so forth (see Types of device extensions on page 4-24 for details). You can also use it to issue actions to selected devices, such as ping, upload, and so forth. At the bottom of the view, buttons New Folder and New let you create new device folders and devices in the station database. The Edit button lets you edit one or more selected devices in the station database. If the driver supports online device learning, buttons Discover, and Match are also typically available. Finally, additional buttons may be available, depending on the driver. For more details, see: Device New Folder and New Device Edit About Device Discover, Add and Match (Learn Process) Manager table features
New Folder
The New Folder button in the Device Manager adds a special DeviceFolder component you can use to organize devices. This is equivalent to copying that same component from that drivers palette. A Name dialog lets you name the folder before it is created (Figure 4-18). Figure 4-18 Example New Folder dialog in Device Manager
When you click OK, a new DeviceFolder component is added under the network. Note: A drivers DeviceFolder component is different than a normal Folder component, as it provides that drivers Device Manager view by default (just like the parent network component). Also, an All Descendants command is available from the root Device Manager, which allows you to see all devices in the network.
4-13
All Descendants
When in the Device Manager of a device folder, it is unaware of devices in other device folders (or in the root of the network component). However, from the root Device Manager view (of the network), you can flatten the folder structure to view all devices by selecting it from the Manager menu (Figure 4-19) or by simply clicking the All Descendants tool on the toolbar (Figure 4-20). Note: Be aware that in a large network, with many device folders and devices, using the all descendants feature may decrease performance. This might result from so many devices/points being subscribed. Figure 4-19 Manager menu All Descendants command
Figure 4-20
Note: If you are using device folders, and you click on a table column to resort devices, please be aware that any device-to-device folder organization is lost during that view. However, you can always see contents of device folders clearly in the Nav tree, and again when returning to the Device Manager view from another view.
New
The New button in the Device Manager allows you to add a new device component to the station. This is equivalent to copying a device component from that drivers palette. The New dialog provides a selection list for device type, and also the number of devices to add (Figure 4-21). Figure 4-21 Example New dialog in Device Manager
When you click OK, a new device-level component is added under the network. You usually need to edit specific details for each new device, including addressing parameters for communications.
4-14
Device Edit
In the Device Manager view, you can edit any device component in the station database by simply doubleclicking it. (Editing does not apply to device folders.)
Edit
The Edit dialog appears with the device listed (Figure 4-22). Figure 4-22 Example Edit dialog in Device Manager (single device)
Note: The Edit dialog for a device component only shows some of the device components properties. Typically, these are key properties required for communications, and will vary among drivers (to access all properties of the device component, go to its property sheet). When a single device is selected in the Edit dialog, you can edit any property except Type (it was fixed when you added the device). Included is the ability to edit the Name of the device in the station. This is equivalent to the right-click Rename command on the component. The following related topics also apply: Device gang edits Manager table features
4-15
About the Device Manager About Device Discover, Add and Match (Learn Process)
Figure 4-23
When you have the Edit dialog open with multiple devices, you can also click on select ones to make individual edits (e.g. Name, or any other editable property), during the same dialog session where you made gang property edits. When you click OK, all the changes are applied to the device components as made during your Edit session. For more details, see About gang edits. Note: When you have multiple devices selected in the Edit dialog, properties that must be unique (such as Name) are automatically unavailable (dimmed). However, note that some properties that typically should be unique (often address properties) may still be available for gang edit, as this rule is not automatically enforced. Typically, when editing these properties, you should verify only a single device component (row) is highlighted in the table.
Note: Whenever in Learn Mode of any Manager view (DeviceManager, PointManager, and so forth) you can drag the border between the two panes to resize, as necessary.
4-16
About the Device Manager About Device Discover, Add and Match (Learn Process)
Discover
The Discover button is available in the Device Manager only if the driver supports online discovery. When you click Discover, the Device Manager view splits into two panes (Learn Mode), and at the same time typically launches a discovery job (Figure 4-25). Figure 4-25 Discover splits Device Manager view
Note: In some drivers, an intermediate dialog may appear before the discovery job begins. For example, in a discover for a BacnetNetwork, a Configure Device Discovery dialog allows you to limit possible ranges of devices, before discovery begins. For more details, see the Bacnet Users Guide. The two panes in the Device Manager operate as follows: Discovered (top pane) Lists devices discovered on the drivers network, as candidates. Any device found that already exists in the station database appears ghosted (faintly listed). A job progress bar is also included on top of the Discovered pane. Note: A Cancel button is available during a discovery job. If needed, use it to stop discovery. Database (bottom pane) Lists devices and device folders that are currently in the station database.
Add
The Add button is available in the Device Manager in Learn Mode when you have one or more devices selected (highlighted) in the top Discovered pane. When you click Add, an Add dialog appears that allows you to edit items before the device component(s) are created in the station database (Figure 4-26). Figure 4-26 Add dialog from Add button in Device Manager
4-17
The Add dialog is nearly identical to the device Edit dialog, but allows you to edit Type as well as other device properties. Often, device address properties in the Add dialog already have acceptable values for operation (otherwise, communications to that device would not have occurred). Often, you change only Name, unless you know other settings you wish to change. You can always Edit the device component(s) after you click OK and add them to your station. Note: When you have one or more devices selected in the top Discovered pane, an Add tool is also available on the toolbar (plus symbol), as well as a command in the Manager menu. Also, you can simply double-click a discovered device to bring it up in the Add dialog.
Match (Device)
Device Match is a feature that may be useful when you have an application replicated many times at the device level, or if you have programmed offline using the New device feature. In the first case (replicated device application), you could discover and add one typical device, and complete further engineering under it (learning and adding proxy points, point extensions, creating other control logic, adding Px views, including all self-contained links and bindings). Then, you could duplicate that typical device component (choosing Duplicate in its right-click menu) for as many identical devices as exist. The Match feature now allows you to match each duplicated device component to a unique discovered device, saving engineering time. This repopulates the necessary properties of the duplicated device object with the correct values from the discovered device. In the second case (offline programming) where a connection to the actual device network is unavailable, you can manually add New devices and begin station engineering of a driver network. Typically, most component creations under a driver network are possible (including all levels) using the New feature in the various manager views (Device Manager, Point Manager, other device extension managers). Or, you can add saved applications (from the device level on down) and edit as necessary. Then, when online with the driver network later, you could use Match to sync to existing components (device-level, proxy points, and so forth). The Match button in the Device Manager becomes available when in Learn Mode, and you have:
1. Selected one device candidate in the top (Discovered) pane. 2. Selected one existing device component in the bottom (Database) pane. Note: In this case, the toolbar also has an available Match tool, and the Manager menu has a Match command. When you click Match, the Match dialog appears, as shown in Figure 4-27. Figure 4-27 Match dialog example in Device Manager
Note: Match is strictly a one-to-one function for discovered-to-databasenote that it is unavailable any time you have multiple items selected either in either the top or bottom pane. The Match dialog is nearly identical to the single-device Edit dialog, and typically provides the discovered device address values. Often, most properties in the Match dialog already have acceptable device address values required for operation (otherwise, communications to the discovered device would not have occurred). You can always Edit the device component after you click OK and add it to your station.
4-18
Reset Column Widths Useful if you manually changed widths of columns, and now some contents are hidden (even after scrolling). The reset restores all columns to widths that accommodate contents. Export Produce the standard Export dialog, where you can select exporting the table to PDF, text, HTML, or CSV (comma separated variable). See About table exports for more details. select or clear columns for display Depending on the driver, a certain default collection of columns is pre-selected for display in the Manager view. You can change that by checking or clearing column headings.
Column resorting
Click on any column header to toggle the table sort between ascending (first click) and descending (second click). The current table sort is indicated by a small triangle in the sorting column.
4-19
Status of devices is verified by successful polling, or the device status ping as configured in the network components Monitor configuration. See About Monitor on page 4-7. From the Device Manager view, you can also right-click a device, and from the popup menu select Actions > Ping to manually verify communications. Depending on conditions, a device may have one of various status flags set, including fault or disabled, or others in combination, such as down, alarm, stale, and/or unackedAlarm. In the Device Manager, nonok status in indicated for any device by row color other than white.
Enabled
By default, device Enabled is trueyou can toggle this in the property sheet, or in the Device Manager (by selecting the device and using the Edit button). See Caution on page 5.
Health
Device Health contains historical properties about the last successful message received from the device, including timestamps.
4-20
These properties work the same as those in an alarm extension for a control point. For property descriptions, see About alarm extension properties on page 7-3. Note: Each parent network component also has its own Alarm Source Info slot, with identical (but independently maintained) properties. See About network Alarm Source Info on page 4-6.
In the case of a Lon device (DynamicDevice) various address parameters are stored under a DeviceData component, itself visible when you expand the device in the Nav tree. For more details on device-level address properties, see the specific driver document.
Poll Frequency
Common to most devices is a Poll Frequency property, typically located below device address properties. It provides a drop-down menu to select among 3 poll frequencies, as configured in the networks Poll Service. For more details, see About poll components on page 4-9.
Object types in these spaces are: Components in the component space under a Config node (regular component space). Files in the files space under a Files node. Histories in the histories space under a History node.
4-21
A station uses these objects when running, and when it is stopped they persistcomponents in the stations database (config.bog), files in the stations directory, and histories within the history database. Virtual component spaces are different, in the following ways: There can be multiple virtual component spaceseach belongs to a different virtual gateway, which are specialized components in the stations component space (under Config). A virtual component space is a mapping of virtual components, organized in a tree fashion, created at runtime when its virtual gateway is started (accessed). Virtual components are transient components created in the station only when needed. When no longer necessary (i.e. become unsubscribed) they are automatically removed in the running station. When the station is stopped, virtual components do not exist. This permits monitoring applications in cases where normal proxy points would use too many resources. Virtual components have limitations, and should not be confused with other components (such as proxy points). For example, links to and from virtual components, use of point extensions (history, alarm, etc.), and typical copy/paste operations are not supported.
This is a logical division of gateways (separating data by its source device). However, this is not to say that future virtual component applications will always use this method of hierarchy for virtual gateways. Gateway activation Unlike with a devices extensions, there is no special view for a virtual gatewayyou simply double-click it to access the gateways property sheet, or expand it in the Nav tree. When you do this for a devices virtual gateway, a driver-specific call is made to the device to gather data, where the results appear as child virtual components. In the case of the BACnet driver, expanding a virtual gateway fetches an object list, where each BACnet object in the device appears as a virtual component (slot) under the gateway. See Figure 4-34. Figure 4-34 BacnetVirtualGateway functions as BACnet object list
As shown in Figure 4-35, you can expand any virtual component to see its virtual property sheet, resulting in another incremental call to the device.
4-22
Figure 4-35
This virtual view property sheet reflects dynamic values, noting that virtual components are transient vs. persisted componentsmeaning they are dynamically created (and subscribed) only when accessed, and are not stored in the station database. Note: Virtual components have limitations when compared with other components (such as proxy points). For example, links to and from virtual components, use of point extensions (history, alarm, etc.), and typical copy/paste operations are not supported. Property sheet access of virtual components (as shown in Figure 4-35) can provide utility when configuring or commissioning a device, especially for one time modification of parameters (assuming that the device permits writes). For example, you could quickly adjust an alarm limit setting, whereas (otherwise) you would typically have to create a specific proxy point in the station database to do this. The other common application for virtual components is for real-time monitoring of values in Px views (graphics). See the next section Virtual components in Px views for more details. Virtual components in Px views The AX-3.2 and later feature of virtual components provides utility when reviewing and making one-time property value adjustments for objects in devices, as described in Gateway activation on page 4-22. In addition, virtual components can be used to show real-time values in Px viewsat least when the built-in features of proxy points (right-click actions, status coloration) are not required. Note: A virtual gateway cannot have its own Px view, but you can use its child virtual components in Px views for other components, for example on the device component itself, or its Points extension, and so on. The only persisted (permanent) record of such a virtual component is its ord in the Px binding to it, which uses a Virtual ord syntax that includes the virtual gateway within it (and activates it at runtime). This ord is automatically resolved when you drag a virtual component onto the Px page, and make your property selection in the popup Px Make Widget dialog, as shown in the example in Figure 4-36. Figure 4-36 Dragging virtual component into Px editor view, with resulting Make Widget popup
4-23
The selected property in the virtual component displays in the Px widget, for example in a field editor, as shown in Figure 4-37. Figure 4-37 BacnetVirtualComponent in Px view
Note: For complete details on Px views and widget editing, see About Px Editor on page 8-5. Virtual ord syntax The general syntax for a virtual ord uses a specialized form as follows:
<ord to VirtualGateway>|virtual:/virtualPath
where virtualPath represents some hierarchy of virtual components and child properties. For example, for BacnetVirtualComponents, the general virtual path syntax is:
<ord to VirtualGateway>|virtual:/objectType_Instance/propertyName
where N is the property array index. For specific virtual ord details, refer to the corresponding driver document section about Virtual Points.
Perhaps the most important of all device extensions is the Points extensionthe container for all proxy points (representing data originating from that device). Types of Device extensions include: Points extensionsee About the Points extension on page 4-25. Histories extensionsee About the Histories extension on page 4-25.
NiagaraAX-3.x User Guide
4-24
Alarms extensionsee About the Alarms extension on page 4-26. Schedule extensionsee About the Schedules extension on page 4-27. Note: Starting in AX-3.3, the NiagaraStation component (device in a NiagaraNetwork) also has a Users extension. For more details, see About the Users extension on page 4-57.
These values are proxied using NiagaraAX control points, or proxy points. Values can be both read from data values in that device, and written to value stores in the device. For details see About control points on page 3-1 and About proxy points on page 3-18. Note: You create all proxy points using the Point Manager view of Pointssimply double-click Points under any device component, or right-click Points and select Views > Point Manager. See About the Point Manager on page 4-28 for more details.
A devices Histories extension serves as the parent container for history descriptorscomponents that specify how history-type collections (log data) are imported or exported. By default, it also contains a Retry Trigger, see About the Retry Trigger on page 4-26. Note: Creating history import and history export descriptors is how you save a Niagara history to a different location (station) from where it originated. In a typical application, this is considered archiving. For example, an originating history (with a limited record count) may be in a JACE station. If imported to a supervisor station, its history import descriptor can be configured such that the imported history in the supervisor has unlimited record capacity. The JACE history can run collecting only the last 500 records, while the imported history in the supervisor will collect all (unlimited) records.
NiagaraAX-3.x User Guide
4-25
The difference between a history import and history export are as follows: Import An imported history appears in the local station as a Niagara history, where data is effectively pulled from a remote source device. If configured by a history import descriptor under Histories of a NiagaraStation device, the source is another Niagara history in that remote station. If configured by a history import descriptor under Trend Logs of a BacnetDevice, the source is a BACnet Trend Log object residing in that BACnet device. Export (NiagaraStation only) An exported history is a Niagara history that exists in the local station, and is configured by a history export descriptor to push its data to a remote NiagaraStation. This adds it to the histories in that remote station. Note: Under a BacnetNetwork, the single LocalDevice component (that represents station data exported to BACnet) has a special view on its child Export Table component that permits exporting station histories as BACnet Trend Log objects. See the BACnet Guide section Bacnet server configuration overview for more details. You create history import descriptors and export descriptors under the Histories extension of a device using separate views. For details, see About Histories extension views on page 4-37.
Upon any unsuccessful execution of a history import/export descriptor or schedule import extension/ schedule export descriptor contained in that same device extension, the Retry Trigger defines subsequent retries that will automatically occur upon the interval period defined (default value is 15 minutes). This continues until successful execution occurs.
4-26
matching AlarmClass is found, the stations default AlarmClass is used. If cleared, all received alarms are routed to the single local AlarmClass specified. Last Received Time Timestamp when last alarm from this station was received. This is configured remotely, either in the sending Niagara station or the BACnet device. Note: Remaining properties apply to the Alarms extension under a NiagaraStation component only (are not available in Alarms extension under a BacnetDevice). Last Send Time Timestamp when last local alarm was routed to this device. This is configured under the local stations AlarmService with a corresponding StationRecipient or BacnetDestination component linked to one or more AlarmClass components). Last Send Failure Time Timestamp when last local alarm routed to this station could not be sent. Last Send Failure Cause Text string describing failure cause routing local alarm to this station.
A devices Schedules extension is the parent container for imported schedulesNiagara schedule components with a ScheduleImportExt. Events in an imported schedule are obtained from that device, and are read-only (often called slave schedules). By default, the Schedules extension also contains a Retry Trigger, see About the Retry Trigger on page 4-26. The Schedules extension can also contain schedule export descriptors. These correspond to local station schedules that are exported (pushed) to that remote station (often called master schedules). A schedule export descriptor is automatically created whenever a local schedule is imported into a remote station. The difference between a schedule import and schedule export are as follows: Import An imported schedule appears in the local station as a Niagara schedule, where read-only schedule events are configured/adjusted in a remote source device. If under a NiagaraStation device, the source is a Niagara schedule in that remote station. If under a BacnetDevice, the source is a BACnet Schedule or Calendar object residing in that BACnet device. That objects data is now modeled as a Niagara schedule component. Export This is a Niagara schedule in the local station that is exported into a remote station (NiagaraNetwork) or BACnet Schedule or Calendar object (BacnetNetwork). A resulting schedule export descriptor allows configuration of a push mechanism to keep event configuration synchronized in the remote device. Note: Under a BacnetNetwork, the single LocalDevice component (that represents station data exported to BACnet) has a special view on its child Export Table component that permits exposing Niagara schedule components in the station as either a BACnet Schedule object or Calendar object. For details, see the Bacnet Users Guide.
4-27
You create imported schedules under a devices Schedules extension using an Import Manager view. A separate Export Manager view provides access to schedule export descriptors. For details, see About Schedules extension views on page 4-45. Note: Schedule components local to the station can reside anywhere under the stations Config hierarchy and be imported by one or more other stations. As this occurs, a schedule export descriptor is automatically created under the NiagaraStation component that represents the remote station (and is located in its Schedules container). On the other hand, if you import a schedule from another NiagaraStation or BacnetDevice, it must reside in that devices Schedule container. Imported schedules are always under a specific device.
When building a network in the station, you use this view to create, edit, and delete proxy points in the station database. See About proxy points on page 3-18. Following station configuration, this view provides a status summary for proxy points. You can also use it to issue an override action to a writable proxy point, e.g. Active, Off, and so on. Note: Only proxy points appear in the Point Manager Databaseany other components that may also reside under Points do not appear. For example, you do not see kitControl or schedule components, or any control point with a null proxy extension. However, you can use other views of Points (wire sheet, property sheet, slot sheet) to access these items. At the bottom of the view, buttons New Folder and New let you create new point folders and proxy points in the station database. An Edit button lets you edit one or more selected proxy points. If the driver supports online device learning, buttons Discover, and Match are also typically available. Finally, additional buttons may be available, depending on the driver. For more details, see: Points New Folder and New Point Edit About Point Discover, Add and Match (Learn Process) About other Points views
4-28
Note: New Folder and New are tools on the Point Manager toolbar, and in the Manager menu.
New Folder
New Folder in the Point Manager adds a special PointFolder component that you can use to organize proxy points. This is equivalent to copying that same component from that drivers palette. A Name dialog lets you name the folder before it is created (Figure 4-44). Figure 4-44 Example New Folder dialog in Point Manager
When you click OK, a new PointFolder component is added under Points. Point folders are often useful, especially if you are creating many proxy points, or need extra wire space for additional kitControl or schedule components (and whatever links you wish to create between them). Note: A devicess PointFolder component is different than a normal Folder component, because it includes that devicess Point Manager view as its default view (just like the parent Points component). You can doubleclick a point folder (either in the Point Manager view pane or in the Nav tree), to access its Point Manager. Also, an All Descendants command is available from the root Points Manager, which allows you to see all proxy points in that device. All Descendants When in the Point Manager of a point folder, it is unaware of proxy points in other point folders (or in the root of Points). However, from the root Point Manager view (of Points), you can flatten the folder structure to view all proxy points by selecting All Descendants from the Manager menu (Figure 4-45) or simply clicking the All Descendants tool on the toolbar (Figure 4-46). Note that all descendants is also available at any point folder (level) as wellyou just see all points in descendants from that folder level on down. Note: Be aware that in a device with many point folders and proxy points, using the all descendants feature (particularly at the Points root level) may decrease performance. This might result from so many points becoming subscribed. Figure 4-45 Manager menu All Descendants command
4-29
Figure 4-46
Note: If you are using point folders, and you click on a table to column to resort points, please be aware that any proxy point-to-point folder organization is lost during that view. However, you can always see contents of point folders clearly in the Nav tree, and again when returning to the Point Manager view from another view.
New
New in the Point Manager is to add new proxy points to the station. Typically, you use New only if the driver does not support online discovery, or if you are programming offline. Under any of the Modbus drivers, for example, you use New to add proxy points. Using New is equivalent to copying proxy points from that drivers palette, except it provides more utility to specify other parameters. Minimally, the New dialog provides a selection list for proxy point type, and also the number of points to add (Figure 4-47). Figure 4-47 Example New dialog in Point Manager
In some driver networks, the New dialog may provide other parameters, such as a starting address range when adding multiple proxy points. When you click OK, the number and type of proxy points you specified are added under Points or a point folder. You need to edit specific properties for each new proxy point (note these are typically properties of its proxy extension).
Point Edit
In the Point Manager view, you can Edit any proxy point shown in the station database by simply doubleclicking it. (Edit does not apply to point folders.)
Edit
The Edit dialog appears with the proxy point listed (Figure 4-48).
NiagaraAX-3.x User Guide
4-30
Figure 4-48
Note: The Edit dialog for a proxy point shows mostly properties under its proxy extension, plus (typically) the parent points Name and Facets. Many of the proxy extension values are required for communications, and will vary among drivers. To access all properties of the proxy point, including all those under any of its extensions, go to its property sheet. When a single point is selected in the Edit dialog, you can edit any property except Type (fixed when you added the point). Included is the ability to edit the Name of the proxy point in the station. This is equivalent to the right-click Rename command on the point. The following related topics also apply: Proxy point gang edits Manager table features
4-31
About the Point Manager About Point Discover, Add and Match (Learn Process)
Figure 4-49
When you have the Edit dialog open with multiple points, you can also click on a specific one to make individual edits (e.g. Name, or any other editable property), during the same dialog session where you made gang property edits. When you click OK, all the changes are applied to the proxy points as made during your Edit session. For more details, see About gang edits. Note: When you have multiple points selected in the Edit dialog, properties that must be unique (such as Name) are automatically unavailable (dimmed). However, note that some properties that typically should be unique (often address properties) may still be available for gang edit, as this rule is not automatically enforced. Typically, when editing these properties, you should verify only a single point component (row) is highlighted in the table.
Discover
The Discover button is available in the Point Manager only if the driver supports online discovery. When you click Discover, the Point Manager view splits into two panes (Learn Mode), and at the same time typically launches a discovery job (Figure 4-50). Note: Under a LonNetwork, Point Manager has a Learn Mode, but no point Discover. All possible data items were already discovered when the parent device was discovered and added. Here, enter Learn Mode by toggling (see About Learn toggle on page 4-16).
4-32
About the Point Manager About Point Discover, Add and Match (Learn Process)
Figure 4-50
Note: Under a NiagaraNetwork (only), a Niagara Point Manager discover produces an intermediate dialog: the Bql Query Builder. You use it to browse the remote station and specify what items to select from as discovered proxy point candidates. For details, see About the Bql Query Builder on page 4-61. In Learn Mode, the two panes in the Point Manager operate as follows: Discovered (top pane) Lists data items discovered on the drivers network, as proxy point candidates. For any data item found that already exists in the station database, it will appear ghosted (listed faintly). Note items listed may be expandablesee Discovered selection notes on page 4-33. A job progress bar is also included on top of the Discovered pane. Note: A Cancel button is available during a discovery job. If needed, use it to stop discovery. Database (bottom pane) Lists proxy points and point folders that are currently in the station database. Note: As necessary, drag the border between the two panes to resize. Also (at any time), toggle between the twopane Learn Mode and the single-pane (Database) view by clicking the Learn Mode tool in the toolbar (Figure 4-24 on page 16), or using the Learn Mode command in the Manager menu. Discovered selection notes Often, data items listed in the Point Managers discovered pane are expandable, having one or more related items, each individually selectable. Expandable items are indicated by a leading plus (+), which you click to expand (a toggle control). Figure 4-51 shows an example item (Lonworks nvoUnitStatus) expanded to reveal individual numerictype elements, each selectable as a separate proxy point.
4-33
About the Point Manager About Point Discover, Add and Match (Learn Process)
Figure 4-51
Here, if you selected only the top mode element to add, you would have one proxy EnumPoint to monitor the enumerated unit status (auto, heat, cool, etc), but would not have any of the related numerictype items proxied as control points. Depending on the driver/device type, expandable discovered items represent individual properties or other structured data. Some examples: BacnetDeviceEach top item is typically the present value property of the BACnet object (most commonly selected). Expand the item to see other properties of the object. NiagaraStationUsing Bql Query Filter defaults (Config, control, ControlPoint), each top item is equivalent to the Out slot of the Niagara component (and most commonly selected). Expand the item to see other slots in the component (including Out). LonDeviceEach top item is typically the first element (field) in a structured SNVT (multi-field data structure), as used in that particular network variable (nv or nci). To access other data fields in the SNVTs structure, you must expand that item. For specific details, refer to the Point discovery notes section in a particular driver document.
Add
The Point Manager's Add button is available in Learn Mode when you have one or more data items selected (highlighted) in the top discovered pane. When you click Add, an Add dialog appears that allows you to edit properties before the proxy point(s) are created in the station (Figure 4-52). Note: Whenever you select one or more items in the top discovered pane, the toolbar also has an available Add tool (plus symbol), and the Manager menu has an Add command. Also, you can simply double-click a discovered item to bring it up in the Add dialog.
4-34
About the Point Manager About Point Discover, Add and Match (Learn Process)
Figure 4-52
The Add dialog is nearly identical to the point Edit dialog, but allows you to edit Type as well as other properties. Often, you may wish to change Type from the pre-selected one, at least between read-only points and the equivalent writable control point within that data category. For example, if adding a proxy point for the present value (default) property for a BACnet Binary Output object, you may wish it to be a read-only BooleanPoint point rather than the default BooleanWritable. As shown in Figure 4-53, you can do this in the Add dialog before it is added to the station database, (but not later using the point Edit feature). Figure 4-53 Change Type as needed in point Add dialog
Note: In most cases, alternate point Types include StringPoint, and possibly others. Generally speaking, there are few practical applications in changing the data category of a proxy point type (e.g. from Boolean to Enum or Sting), however, this may be an option. Note that if working under a NiagaraNetwork, only read-only proxy points are available. Address-related properties in the Add point dialog already have acceptable values for operation (otherwise, the data item would not have been discovered). It is possible you change only Name and possibly Type, unless you know other settings you wish to change now. You can always Edit these properties in the proxy point(s) after you click OK and add them to your station.
Match
Match is a feature that may be useful when you have an application with proxy points you wish to reuse, or if you have programmed offline using the New point feature.
NiagaraAX-3.x User Guide
4-35
In the first case (application for reuse), you could have some number of proxy points included in an application that you have saved and now recopied under the target Points container. Often, addressrelated properties in the copied proxy points are incorrect. However, you can use the Point Managers Learn Mode and step through each proxy point in the copied application, and use the Match feature to sync with the intended (and discovered) data item. In the second case (offline programming) where a connection to the actual device network is unavailable, you can manually add New devices and New proxy points, and begin station engineering of a driver network. Typically, most component creations under a driver network are possible (including all levels) using the New command in the various manager views (Device Manager, Point Manager, other device extension managers). Or, you can add saved applications (from the device level on down) and edit as necessary. Then, when online with the driver network later, you could use Match to sync to existing components (device-level, proxy points, and so forth). The Match button in the Point Manager becomes available when in Learn Mode, and you have: 1. Selected one point candidate in the top (Discovered) pane. 2. Selected one existing proxy point in the bottom (Database) pane. Note: In this case, the toolbar also has an available Match tool, and the Manager menu has a Match command. When you click Match, the Match dialog appears, as shown in Figure 4-54. Figure 4-54 Match dialog example in Point Manager
Note: Match is strictly a one-to-one function for discovered-to-databasenote that it is unavailable any time you have multiple items selected either in either the top Discovered pane or bottom Database pane. The Match point dialog is nearly identical to the single-point Edit dialog, and typically provides the discovered point address values. Often, most properties in the Match dialog have acceptable address values required for operation (otherwise, the item would not have been discovered). You can always Edit the proxy point after you click OK and add it to your station.
4-36
Property sheet Also includes all proxy points, plus any kitControl and schedule components, simple control points, and so on. As needed, you can use this view to expand down to any level to access and edit properties. For example, you can access an alarm extension under a proxy point. Slot sheet Also includes all proxy points, plus any kitControl and schedule components, simple control points, and so on. As needed, you can use this view to edit config flags from defaults (say, for security schemes), edit config facets, and add name maps. Px view (New View) (Optional) A custom graphical view that you define by creating a new Px file or using an existing Px file. When created, this view becomes the default view for the devices Points extension (or if created for a points folder, its default view).
When building a network in the station, you use this view to create, edit, and delete history import descriptors. Each import descriptor you add results in the creation of a local Niagara history. Following station configuration, this view provides a status summary for collecting imported histories. You can also use it to issue manual Archive commands to one or more history descriptors. This causes an immediate import request to pull logged data from the remote device. Note: Only history import descriptors appear in the History Import Manager viewany other components that may also reside under Histories do not appear. For example, you do not see the default Retry Trigger component (see About the Retry Trigger on page 4-26). However, you can use the Histories property sheet to access these items.
4-37
At the bottom of the view, the button New lets you manually create new import descriptors in the station. An Edit button lets you edit one or more import descriptors. Buttons Discover, Add and Match are also available, (these work similarly as in the Point Manager). An Archive button is available to manually import (pull data) into one or more selected histories. Finally, additional buttons may be available, depending on the driver. For more details, see: History Import New History Import Edit About History Import Discover, Add and Match (Learn Process)
Note: The Edit dialog shows configuration properties of the history import descriptor, plus Name (equivalent to the right-click Rename command on the descriptor). To access all properties, (including all status properties) go to its property sheet. The following related topics also apply: History Import properties History descriptor gang edits Manager table features
History Import properties Properties of history import descriptors available in the Edit or Add dialog are as follows: Name Name for history import descriptor component. If discovered, typically left at default. Note: Editing name does not affect name of the resulting history (imported into station). History Id If under a NiagaraStation, (NiagaraNetwork), this property specifies the history name in the local stations history space, using two parts: /<stationName> and /<historyName>. If learned, station name is ^ (see note below) and history name reflects the source history name. Typically, you leave both fields at default values, or edit the second (<historyName>) field only.
4-38
Note: The ^ character is basically a shorthand character to refer to the device name of the parent container (NiagaraStation component). This may be useful if you have multiple JACEs with histories named the same. You can create and configure a single History Import Descriptor and then duplicate and paste it under the other stations without having to go in and change the station name each time. If under a BacnetDevice, the fields apply to the source BACnet object (trendLog, instance number <n>)you typically leave learned values at defaults. You name the Niagara history using an additional Local History Name property. Execution Time Either Daily (default), Interval, or Manual. If Manual, properties below are not available: Time of Day (Daily) Configurable to any daily time. Default is 2:00am. Randomization (Daily) When the next execution time calculates, a random amount of time between zero milliseconds and this interval is added to the Time of Day. May prevent server flood issues if too many history archives are executed at the same time. Default is zero (no randomization). Days of Week (Daily and Interval) Select (check) days of week for archive execution. Default is all days of week. Interval (Interval) Specifies repeating interval for archive execution. Default is every 15 minutes. Time of Day (Interval) Specifies start and end times for interval. Default is 24-hours (start 12:00am, end 11:59pm). Enabled Default is true. If set to false, does not execute import of history data. Capacity Specifies local storage capacity for imported history, either as Unlimited or Record Count. If set to Record Count, the following property is available: records Number of records (samples) to locally store. Default is 500. Full Policy Either Roll (default) or Stop. Applies only if capacity is set to record count If Roll, upon record count, oldest records become overwritten by newest records. If Stop, upon record count, importing stops (until history records are locally deleted). Note: Bacnet History Import descriptors have additional properties, including a Local History Name property visible from the Add or Edit dialog. History descriptor gang edits The Edit button in the History Import (or Export) Manager allows you to edit one or more descriptors in a single dialog. Before clicking Edit, use standard Windows keyboard controls to highlight (select) multiple descriptors (e.g. hold down Ctrl key and click desired descriptors). Note: Edit is also on the History Import (or Export) Manager toolbar and the Manager menu, if any descriptor is selected. The gang edit feature is useful for making identical changes in multiple (selected) descriptors. For example, you can change Execution Time (when data is pulled into imported history) in multiple descriptors at the same time (versus editing individually). When you have the Edit dialog open with multiple descriptors, you can also click on select ones to make individual edits (e.g. Execution, Time of Day), during the same dialog session where you made gang edits. When you click OK, all the changes are applied to the descriptors as made during your Edit session. For more details, see About gang edits. Note: When you have multiple descriptors selected in the Edit dialog, properties that currently have different values are automatically unavailable (dimmed). Only a property that currently has the same value (across all selected descriptors) is available for gang edit.
1.
4-39
Discover When you click Discover, the Histories Import Manager splits into two panes (Learn Mode): discovered items in the top pane, and existing import descriptors bottom pane (Figure 4-57). Note: If under a BacnetDevice, a Bacnet Trend Logs Discover job is started, with a progress bar at top. If BACnet Trend Log objects are found, they are listed in the discovered pane. Figure 4-57 Discover splits Histories Import Manager
Note: Under a NiagaraNetwork (only), the discovered pane shows the collapsed tree structure of all Niagara histories of that selected NiagaraStation. Click to expand and select histories for import. See Discovered selection notes on page 4-40 for more details. In Learn Mode, the two panes in the Histories Import Manager operate as follows: Discovered (top pane) Lists histories (Niagara) or Trend Logs (Bacnet) found in the device, as history descriptor candidates. Any item that already exists as a history in the station is ghosted (faintly listed). If a BacnetDevice, a job progress bar is also included on top of the Discovered pane. Note: A Cancel button is available during a discovery job. If needed, use it to stop discovery. Database (bottom pane) Lists history descriptors currently in the station database (each has an associated history). Note: As necessary, drag the border between the two panes to resize. Also (at any time), toggle between the twopane Learn Mode and the single-pane (Database) view by clicking the Learn Mode tool in the toolbar (Figure 4-24 on page 16), or using the Learn Mode command in the Manager menu. Discovered selection notes In the Niagara History Import Manager, discovered histories of a NiagaraStation are under an expandable tree structure, organized by station name (Figure 4-58).
4-40
Figure 4-58
Histories under the same station name as the parent NiagaraStation (device) component are local histories for that station. Histories under any other stations represent histories currently imported into (or exported to) that station. For example, discovered histories in Figure 4-58 for NiagaraStation J403IP98 include local histories (expanded); other imported histories from station NxMbTest56 are shown contracted. Note: From any NiagaraStation, you can import both its local histories and already-imported histories, as needed. However, unless circumstances warrant a relay archive method, it may be best to import histories directly from the source station whenever possible. Add The Add button is available in Learn Mode when you have one or more items selected (highlighted) in the top discovered pane. When you click Add, a dialog appears that allows you to edit properties before the history descriptor(s) are created in the station. Note: Whenever you select one or more items in the top discovered pane, the toolbar also has an available Add tool (plus symbol), and the Manager menu has an Add command. Also, you can simply double-click a discovered item to bring it up in the Add dialog. The Add dialog is identical to the history import descriptor Edit dialog. For details on properties, see History Import properties on page 4-38. Match Match, as an online function, is available if you have one history selected in the top (discovered) pane and one history import descriptor selected in the bottom (database) pane. However, usage of Match when importing histories from a device (NiagaraStation, BacnetDevice) is generally not recommended. Instead, use the Discover and Add method to import histories.
4-41
Figure 4-59
You use this view to create, edit, and delete history export descriptors. Each export descriptor you add results in the creation of a Niagara history on that remote station. Following station configuration, this view provides a status summary for exporting local histories. You can also use it to issue manual Archive commands to one or more history descriptors. This causes an export push of history data into the selected histories at the remote Niagara station. Note: Only history export descriptors appear in the History Export Manager viewany other components that may also reside under Histories do not appear. For example, you do not see the default Retry Trigger component (see About the Retry Trigger on page 4-26), or history import descriptors. However, you can use the Histories property sheet or the Nav tree to access these items. At the bottom of the view, the button New lets you manually create new export descriptors in the station. An Edit button lets you edit one or more export descriptors. Buttons Discover, Add and Match are also available, (these work similarly as in the Point Manager). An Archive button is available to manually export (push data) into one or more selected histories. Finally, additional buttons may be available, depending on the driver. For more details, see: History Export New History Import Edit About History Import Discover, Add and Match (Learn Process)
4-42
Figure 4-60
Note: The Edit dialog shows configuration properties of the history export descriptor, plus Name (equivalent to the right-click Rename command on the descriptor). To access all properties, (including all status properties) go to its property sheet. The following related topics also apply: History Export properties History descriptor gang edits on page 4-39 Manager table features on page 4-19
History Export properties Properties of history export descriptors available in the Edit or Add dialog are as follows: Name Name for history export descriptor component. Typically left at default. Begins with Local_ for any history originating from the local station. Note: Editing name does not affect name of resulting history (exported into remote station). History Id This property specifies the history name to be created in the remote stations history space, using two parts: /<stationName> and /<historyName>. Histories originating in the local station show a ^ (shorthand for local station name), and history name reflects the source history name. Typically, you leave both fields at default values. Execution Time Either Daily (default), Interval, or Manual. If Manual, properties below are not available: Time of Day (Daily) Configurable to any daily time. Default is 2:00am. Randomization (Daily) When the next execution time calculates, a random amount of time between zero milliseconds and this interval is added to the Time of Day. May prevent server flood issues if too many history archives are executed at the same time. Default is zero (no randomization). Days of Week (Daily and Interval) Select (check) days of week for archive execution. Default is all days of week. Interval (Interval) Specifies repeating interval for archive execution. Default is every 15 minutes. Time of Day (Interval) Specifies start and end times for interval. Default is 24-hours (start 12:00am, end 11:59pm). Enabled Default is true. If set to false, history data is not exported. Note: The capacity and full policy of any exported history (created on the remote station) is determined by rules under that stations NiagaraNetwork History Policies, and is set at creation time only. For details, see About History Policies on page 4-52.
4-43
Note: The Histories Export Manager reinforces this process by providing two separate panes in the view whenever you enter Learn Mode. See About Learn toggle on page 4-16. Discover When you click Discover, the Histories Export Manager splits into two panes, or Learn Mode (Figure 4-61). The top discovered pane is a collapsed tree structure of all Niagara histories of the local station. Click to expand and select histories for export. See Discovered selection notes on page 4-44 for more details. Figure 4-61 Discover splits Histories Export Manager
In Learn Mode, the two panes in the Histories Export Manager operate as follows: Discovered (top pane) Lists all histories in the local station (station you are engineering). Any history that already exists as a history in the selected NiagaraStation device is ghosted (listed faintly). Database (bottom pane) Lists history descriptors currently in the station database (each has an associated history, exported to that remote station). Note: As necessary, drag the border between the two panes to resize. Also (at any time), toggle between the twopane Learn Mode and the single-pane (Database) view by clicking the Learn Mode tool in the toolbar (Figure 4-24 on page 16), or using the Learn Mode command in the Manager menu. Discovered selection notes In the Niagara History Export Manager, discovered local histories are under an expandable tree structure, organized by station name (Figure 4-62). Figure 4-62 Expand Niagara stations to see all Niagara histories
4-44
Histories under the same station name as the local station originated in that station. Histories under any other stations represent histories currently imported (or exported) into the local station. For example, discovered histories in Figure 4-62 for local station NxMbTest56 include locally-originated histories (expanded); other imported histories from station J403IP98 are shown contracted. Note: To any NiagaraStation, you can export both a stations locally-originated histories as well as alreadyimported histories, as needed. However, unless circumstances warrant a relay archive method, it may be best to export only locally-originated histories. Add The Add button is available in Learn Mode when you have one or more items selected (highlighted) in the top discovered pane. When you click Add, a dialog appears that allows you to edit properties before the history export descriptor(s) are created in the station. Note: Whenever you select one or more items in the top discovered pane, the toolbar also has an available Add tool (plus symbol), and the Manager menu has an Add command. Also, you can simply double-click a discovered item to bring it up in the Add dialog. The Add dialog is identical to the history export descriptor Edit dialog. For details on properties, see History Export properties on page 4-43. Match Match, as an online function, is available if you have one history selected in the top (discovered) pane and one history export descriptor selected in the bottom (database) pane. However, usage of Match when exporting histories from a device (NiagaraStation, BacnetDevice) is generally not recommended. Instead, use the Discover and Add method to export histories.
When building a network in the station, you use this view to create, edit, and delete imported Niagara schedules. In the case of a Niagara network (only), each schedule that you import results in the creation of a remote schedule export descriptor in that remote Niagara station.
4-45
Following station configuration, this view provides a status summary for collecting imported schedules. You can also use it to issue manual Import commands to one or more schedules. This causes an immediate import request to pull schedule configuration data from the remote device. Note: Only imported schedules appear in the Schedule Import Managerany other components that may also reside under Schedules do not appear. For example, you do not see the default Retry Trigger component (see About the Retry Trigger on page 4-26), or if a NiagaraStation, schedule export descriptors. However, the Nav tree and other views on Schedules provide you access to these items. At the bottom of the view, the button New lets you manually create new imported schedules in the station. An Edit button lets you edit a few properties of one or more imported schedules. Buttons Discover, Add and Match are also available, (these work similarly as in the Point Manager). An Import button is available to manually import (pull data) into one or more selected imported schedules. Finally, depending on driver, additional buttons may be available. For more details, see: Schedule Import New Schedule Import Edit About Schedule Import Discover, Add and Match (Learn Process)
Note: The Edit dialog shows some properties of the schedules ScheduleImportExt, plus Nameequivalent to the right-click Rename command on the schedule component). To access all properties of the schedule (including all status properties) go to its property sheet, or to see the imported schedule events, to its Weekly Scheduler view. To access the Scheduler, in the Nav tree you can simply double-click the schedule. The following related topics also apply: Schedule Import properties Schedule Import or Export gang edits Manager table features
Schedule Import properties Properties of imported schedules available in the Edit or Add dialog of the Schedule Import Manager are as follows:
4-46
Name Name for the imported Niagara schedule component. If discovered, will match the name of the source schedule. Must be unique among other components in same container. Note: Editing name does not affect name of the source schedule, nor the name of the corresponding schedule export descriptor (if source is a Niagara schedule). Supervisor Id (NiagaraStation only) Unique slot path of source Niagara schedule in that station. Object Id (BacnetDevice only) Combination of BACnet object type (schedule or calendar) and instance number (unique within that object type in that device). Enabled Default is true. If set to false, the imported schedule is disabled. Note: While disabled, the schedules Out slot has status disabled. Any downstream logic linked to Out no longer processes it. See About isValid status check on page 3-18. Execution Time (BacnetDevice only) Specifies how event-configuration refresh (import) occurs with source schedule, using a pull request method. Options are Daily, Interval, or Manual (default). If Manual, some properties below are not available, as noted: Time of Day (Daily) Configurable to any daily time. Default is 2:00am. Randomization (Daily) When the next execution time calculates, a random amount of time between zero milliseconds and this interval is added to the Time of Day. May prevent server flood issues if too many schedule imports execute at the same time. Default is zero (no randomization). Days of Week (Daily and Interval) Select (check) days of week for import execution. Default is all days of week. Interval (Interval) Specifies repeating interval for import execution. Default is every 15 minutes. Time of Day (Interval) Specifies start and end times for interval. Default is 24-hours (start 12:00am, end 11:59pm). Last Trigger Timestamp of when last interval or daily import occurred. Next Trigger Timestamp of when the next interval or daily import is configured to occur.
Schedule Import or Export gang edits The Edit button in the Schedule Import (or Export) Manager allows you to edit one or more items in a single dialog. Before clicking Edit, use standard Windows keyboard controls to highlight (select) multiple items (e.g. hold down Ctrl key and click desired schedules). Note: Edit is also on the Schedule Import (or Export) Manager toolbar and the Manager menu, if any item in the database is selected. The gang edit feature is useful for making identical changes in multiple (selected) items. For example, as shown in Figure 4-65 when using Edit in the Niagara Schedule Export Manager, you can change the Execution Time, Interval in multiple schedule export descriptors at the same time (versus editing individually). For more details, see About gang edits.
4-47
Figure 4-65
In Learn Mode, the two panes in the Schedule Import Manager operate as follows:
4-48
Discovered (top pane) Lists schedule components (Niagara) or Schedule and/or Calendar objects (Bacnet) found in the device, as candidates for imported schedules. Any item that already exists as a schedule in the station is ghosted (faintly listed). Database (bottom pane) Lists schedules currently imported in the station database (contained in Schedules container). Note: As necessary, drag the border between the two panes to resize. Also (at any time), toggle between the twopane Learn Mode and the single-pane (Database) view by clicking the Learn Mode tool in the toolbar (Figure 4-24 on page 16), or using the Learn Mode command in the Manager menu. Add The Add button is available in Learn Mode when you have one or more items selected (highlighted) in the top discovered pane. When you click Add, a dialog allows you to edit properties before the schedule is created in the station. The Add dialog and Edit dialog are identical. Note: Whenever you select one or more items in the top discovered pane, the toolbar also has an available Add tool (plus symbol), and the Manager menu has an Add command. Also, you can simply double-click a discovered item to bring it up in the Add dialog. For details on properties, see Schedule Import properties on page 4-46. Match2 Match, as an online function, is available if you have one schedule selected in the top (discovered) pane and one schedule selected in the bottom (database) pane. However, usage of Match when importing schedules from a device (NiagaraStation, BacnetDevice) is generally not recommended. Instead, use the Discover and Add method to import schedules.
Figure 4-67
Note: A Schedule Export Manager works differently in NiagaraNetworks and BacnetNetworks/ObixNetworks. For NiagaraStation, you do not create export descriptors using this viewthere is no Learn Mode, Discover, Add, or New. Instead, each schedule export descriptor is automatically created upon the remote Niagara station importing a local schedule component. For more details, see Station Schedules import/export notes on page 4-66. For a BacnetDevice or ObixClient, you do use Learn Mode to discover BACnet Schedule/Calendar objects or oBIX schedules in the device. Then, you select and add any as schedule export descriptor(s). In each export descriptor, you must specify the stations local schedule component that exports (writes) its event configuration to that remote schedule object. For more details, see the
NiagaraAX-3.x User Guide
4-49
NiagaraAX BACnet Guide or NiagaraAX oBIX Guide. After configuration, this view provides a status summary for exporting local schedules. You can also use it to issue manual Export commands to one or more schedules. This causes an export push of schedule configuration into the remote device. Note: Only schedule export descriptors appear in the Schedule Export Manager viewany other components that may also reside under Schedules do not appear. For example, you do not see imported schedules or the default Retry Trigger component (see About the Retry Trigger on page 4-26). However, the Nav tree and other views on Schedules provide you access to these items.
4-50
4-51
Enable Announcement Either true (default) or false. Enables multicast announcement messages for learn/discover. Multicast Time To Live Number of hops to make before a multicast message expires (default is 4). Server Connections Provides status information about current Workbench client connections to the local station (does not reflect station-to-station Fox connections). Trace Session States Either true or false (default). Debug usage for tracing session state changes. Trace Read Frame Either true or false (default). Debug usage for dumping frames being read from the wire. Trace Write Frame Either true or false (default). Debug usage for dumping frames being written to the wire. Trace Multicast Either true or false (default). Debug usage for tracing multicast messaging.
4-52
Figure 4-68
As shown in Figure 4-68, the Supervisors History Policies Config Rules determine the capacity and fullPolicy settings for each history upon export from the JACE stations WestWing403 and EastWing403. Rules are matched to remote station (device) names and history names, which determine the corresponding capacity and full policy values to apply upon history creation. If a history does not match any rule, it is created using the same capacity and full policy as in the source history. For an example related to this scenario, see Example rules on page 4-54. Default history policies By default, under a NiagaraNetworks History Policies, only a single default rule existswith wildcard matches to all stations and history names, specifying unlimited capacity and a roll fullPolicy. This means that any history that is exported into the station (from any remote station) is archived using a local history configured with unlimited capacity. Given the vast storage capacity of a supervisor host PC, the default one rule setting may be acceptable on the target of most exported histories (supervisor station). However, if for some reason you are exporting histories to a JACE station, you should definitely change the Default Rule of the History Policies under its NiagaraNetwork to specify smaller capacities. Even for a supervisor station, you may wish to change the default rule, and/or add additional optional config rules, as needed. Config Rules When a history is exported to the station (from another station), these rules are evaluated to set the local (archived) historys config properties capacity and fullPolicy. The first matching rule is used. The Default Rule is always at top, and cannot be deleted or renamed. Note: Rule priority is set by orderas the Default Rule is always first, it is highest priority. If you create other rules (in Workbench, right-click a rule, then click Duplicate), you can edit, rename, and reorder as needed. Each rule under the networks History Policies has the following configuration properties:
NiagaraAX-3.x User Guide
4-53
Device Pattern String matching to device names, meaning name of NiagaraStation(s) that are exporting histories. Default value is a wildcard (*), meaning all station names are matched. History Name Pattern String matching to history names of histories being exported. Again, default value is a wildcard (*), meaning all named histories are matched. Note: Both device pattern and history name pattern must apply for the rule to be usedotherwise the next rule down (in order) in History Policies is evaluated. capacity The capacity setting to use when creating the local history, if matched by device and history names. Either unlimited, or Record Count, with a finite record specified. fullPolicy Applies if capacity is not unlimited, and specifies if collection continues when the capacity record limit is reached (roll) or collection stops (stop).
Example rules As shown in the three-station scenario of Figure 4-68, histories in two JACE stations are exported to the Supervisor station. As shown in Figure 4-69, the receiving supervisor station has 2 additional config rules under its History Policies of its NiagaraNetwork. Figure 4-69 Example history policies config rules (supervisor station)
In this example, the highest-priority Default Rule matches all (any) stations exporting, with a history name pattern of Audit*this matches any AuditHistoryLog. Capacity is set to unlimited, as all history records are wanted for archive. The next two rules are applied to histories exported (by any stations), as follows: MetersRule This rule applies to any station, for any history named beginning with Meter (Meter*). Any such history is archived using unlimited capacity, as all records are wanted. EastWins This rule applies only to stations named beginning with East (East*), for any history. Such a history is archived using a capacity of 100,000 and a roll full policy. Following this example (with exported histories in the JACE stations, as shown in Figure 4-68), the histories are created in station Supervisor as follows: WestWing403 Histories are exported using following capacity and fullPolicy (from config rule): AuditHistoryLog: unlimited, roll (from Default Rule) LogHistory: 500 records, roll (no rule matched, using source history config, as in JACE) Meter1: unlimited, roll (from MetersRule) ZoneTemp1: 500 records, roll (no rule matched, using source history config, as in JACE) Meter2: unlimited, roll (from Meters Rule) ZoneTemp2: 500 records, roll (no rule matched, using source history config, as in JACE) EastWing403 Histories are exported using following capacity and fullPolicy (from config rule): AuditHistoryLog: unlimited, roll (from Default Rule) LogHistory: 100,000 records, roll (from EastWins rule) Meter4: unlimited, roll (from MetersRule)
NiagaraAX-3.x User Guide
4-54
ZoneTemp1: 100,000 records, roll (from EastWins rule) Meter3: unlimited, roll (from Meters Rule) ZoneTemp2: 100,000 records, roll (from EastWins rule) Again, note that the rules are processed in priority order. In this example, if the two optional rules were reordered (EastWins above MeterRule) before the JACE histories were exported, results would differ. Meter histories from EastWing403 would have a 100,000 record capacity instead.
By default, discovered stations list showing address. If a station uses a Fox port other than 1911 (default), address includes the port number appended, for example: 192.168.1.112.1912.
4-55
Figure 4-71
Typically, you enter a user name and password for a super user that exists in the remote station. By convention, this may be a user especially for station-to-station access (for example, a user m2m). See Multi-station security notes on page 9-10 for more details. Note: When working in an AxSupervisor station running AX-3.1 or later, additional platform properties are present, to specify the platform daemon credentials the Provisioning Service should use to connect to the remote JACE platform, to run provisioning jobs. Note: After you add a station, in the Station Managers database pane just double-click it to bring up the Edit dialog, which provides access to the same properties in the Add dialog (Figure 4-71). Or, you can access all client connection properties from the NiagaraStation components property sheet (Client Connection slot, along with status properties). Adding a NiagaraStation automatically creates a reciprocal NiagaraStation in the remote station. Reciprocal NiagaraStation component When you add a station under the Niagara Network, that remote station automatically adds a reciprocal NiagaraStation component under its own Niagara Network, representing your local station. However, it is created with its Enabled property set to false, and so has a status of disabled (gray on gray background). This provides a visual clue for you to edit its client connection username and password to a valid user account in the reciprocal station, and to set Enabled back to true for operation.
4-56
If AX-3.3 or later, Types of provisioning extensions in Provisioning for Niagara Networks. If AX-3.1 or AX-3.2, Types of provisioning extensions in the Provisioning Guide.
Note that provisioning extensions do not appear in the Station Manager, but do appear in the Nav tree.
Figure 4-72
4-57
otherwise the Default Prototype in the receiving station is used. Sync Required A read-only boolean that indicates if pending user changes require a sync to become effective. Ordinarily false unless user changes have occurred, and the sync delay time has not expired. Sync Delay Default is 30 seconds. Applies within a sending user station only. Specifies a configurable delay time that counts down following a change to a network User. Resets to full delay time upon each successive change. Following the last user change, if the delay time is met, network user changes (sent to the proxied station) are synchronized. This can be set uniquely among proxied stations if needed. Sync Retry Default is 5 minutes. Applies within a sending user station only. Specifies a configurable repeat time for previously unsuccessful user syncronization attempts (sent to the proxied station). Periodically, user synchronization will be attempted at this frequency until a successful sync is recorded. Last Sync Attempt Read-only timestamp of when user synchronization to/from this station was last attempted. Last Sync Success Read-only timestamp of when user synchronization to/from this station was evaluated as successful.
Note that it also possible to have a multi-tier network user sync configuration in a network, for example where there is a single master AxSupervisor host and several subordinate AxSupervisor hosts, each with multiple subordinate JACE stations. In the station configuration of each subordinate AxSupervisor's NiagaraNetwork, it would be enabled to Sync In to the single NiagaraStation that proxies the master AxSupervisor. In other NiagaraStations that proxy remote JACEs, they would have their Users extension enabled to Sync Out. In this regard, each subordinate AxSupervisor station could be considered both user receiving and user sending. MasterSup ("Master AxSupervisor" station):
NiagaraNetwork subWebSupA
4-58
Chapter 4 Driver architecture December 10, 2007 Users Sync Sync subWebSupB Users Sync Sync JstationA Users Sync Sync
4-59
The easiest way to do this, particularly on the AxSupervisor station, is using the User Sync Manager view. There, you typically select all (JACE) stations in this view to have a Sync Out Enabled of true. See the next section About the User Sync Manager for more details.
For each NiagaraStation in the network, the User Sync Manager shows the current status and configuration property values of its Users device extension. The example above, with its configuration of Sync In Enabled and "Sync Out Enabled" properties, is representative of a NiagaraNetwork in an AxSupervisor station, where all child stations are subordinate (typically JACE) stations. From this view you can select one or more rows (stations) to edit properties, as shown in Figure 4-74 below, or manually request a sync of selected stations. Figure 4-74 Edit dialog for one or more selected station's Users extension
3. 4.
4-60
User-receiving station (e.g. JACE) side 1. 2. 3. 4. Subordinate checks Sync In Enabled of its proxy for the AxSupervisor station. If false, the synchronization process is aborted. Subordinate coordinates with AxSupervisor to determine which users are out of sync. Subordinate receives list of out-of-sync user records from AxSupervisor. For each user: Find a matching prototype among User Prototypes. A prototype is either matched by name or if the the Sync Strategy is "Use Default Prototype", the default prototype is used. If no matching prototype, ignore user. On the incoming user, overwrite the local override properties (properties: Permissions, Nav File, Web Profile) from the prototype. Add the new user or update an existing user. When complete, Sync Required=false and sync timestamps are updated.
5.
4-61
Figure 4-76
As needed, expand Config to select the root component of interest and click OK (or simply double-click the component of interest). The proxy point Find is now limited to that area of the station. To change the type of component, click the Of type drop-down and make a selection (Figure 4-77). Figure 4-77 Select component type
The proxy point Find is now limited to that class of component. Note: A basic understanding of the NiagaraAX component class structure is helpful when making type selections. For example, selection of Boolean Point (as shown in Figure 4-77) includes all components that subclass from the simple BooleanPoint. Included are all BooleanWritables, as well as many kitControl components (Logic components, as one example in this case). If you select type Component, you have a full-width find. This means that all components are included this includes everything listed in the Of type drop-down, plus extensions and many other items (including kitControl objects not subclassed from Control Points, for example, NumericConst, DegreeDays, and LeadLagRuntime, as a few examples).
4-62
Figure 4-78
In the Figure 4-78 example above, the Match filter is set to: displayName, like, Fan*. This point discover returns components (within the Find parameters) that are named beginning with Fan. This match would include all components named Fan, FanAhu1, Fan21, Fantastic, and so on. However, components named FAN or FAN21 would not be included (case-sensitivity), nor would components named AhuFan or BFan be includedno leading wildcard (*) was used. Note: You can click the Match plus (+) icon multiple times to add multiple match lines, and configure each match line differently, as needed. Click the minus icon to remove a match line. If you have multiple match lines, note the drop-down selection beside Match (All, Any) becomes important, and works as follows:
All Works as AND logic, where a match must occur as specified on every match line. Any Works as OR logic, where a match must occur as specified on any match line.
Saving a query allows you to recall it later to either use directly, or to modify further as a starting point for another query. You can save as many Bql queries as you need. You can also edit a saved query (meaning rename it or reorder it in your list of saved queries). Note: Saved queries are unique to your Workbench instance, and not to any particular station. To recall a saved query, click the Load saved query icon (folder), and make a selection, as shown in Figure 4-80.
4-63
Figure 4-80
This loads that query into the Bql Query Builder dialog, where Find and Match entries automatically change to reflect how that query was constructed. To edit saved queries, click the Edit saved query icon (note pad). This produces a Save Query dialog in which you can rename and/or reorder the queries in the list (Figure 4-81). Figure 4-81 Edit saved Bql Queries
Note: If you are interested in the Baja Query Language (BQL), you can learn about queries within the Edit dialog. Make the dialog window wider, and study the syntax of a saved queries. For detailed information about queries, see BQL in the Niagara Developer Guide.
Other concepts about Niagara proxy points are explained in the following sections:
NiagaraAX-3.x User Guide
4-64
Proxy of a proxy, other candidates Link control and Niagara proxy points
In the example above, you cannot link into the Niagara proxy point BFanBO_1. So in the other (remote) station, you must make a Niagara proxy point for the And object, then link its output to the source point for BFanBO_1. Figure 4-84 shows the wire sheet views with these objects. Figure 4-84 Source control object now a Niagara proxy point in remote station
In a typical Supervisor station (with many Niagara proxy points), usually not much direct link control is needed, so this rarely applies. In addition, the schedule import/export mechanism allows for central scheduling control using local (imported) schedule components. However, if you are engineering applications between JACE stations that require link control, please understand you must always use Niagara proxy points in this fashion.
4-65
4-66
Figure 4-85
Note: The Edit dialog shows some configuration properties of the schedule export descriptor. To access all properties, (including all status properties) go to its property sheet. Note that if you doubleclick the Nav tree icon for an export descriptor, its property sheet displays. The following related topics also apply: Niagara Schedule Export properties Niagara schedule import/export default configuration Manager table features on page 4-19 Enabled By default true. While set to false (export descriptor disabled), export connections are not attempted to update the remote (imported) schedule. Execution Time Determines when an export update is made to the remote (imported) schedule, providing that a configuration change occurred in the local schedule that requires synchronization (export). For more details, see Niagara schedule import/export default configuration on page 4-66.Options are either Daily, Interval (default), or Manual. If Manual, the following properties are unavailable: Time of Day (Daily) Configurable to any daily time. Default is 2:00am. Randomization (Daily) When the next execution time calculates, a random amount of time between zero milliseconds and this interval is added to the Time of Day. May prevent server flood issues if too many schedule exports are executed at the same time. Default is zero (no randomization). Days of Week (Daily and Interval) Select (check) days of week for archive execution. Default is all days of week. Interval (Interval) Specifies repeating interval for export execution. Default is every 15 minutes. Time of Day (Interval) Specifies start and end times for interval. Default is 24-hours (start 12:00am, end 11:59pm).
Niagara Schedule Export properties Properties in the Edit dialog of a schedule export descriptor are:
4-67
4-68
CHAPTER
Field Bus Integrations
For purposes here, a field bus integration is any NiagaraAX driver besides the niagaraDriver (Niagara Network). All Niagara AX drivers resemble each other in basic architecture, including the Niagara Network. For more details, see About Network architecture on page 4-2, and About the Niagara Network on page 4-50. Field bus integrations such as BACnet, LON, Modbus, as well as various legacy drivers (typically serialconnected) each have unique characteristics and features. This section provides a collection of topics that apply to some of these drivers. The following main sections are included: Port and protocol variations Learn versus New devices and points Serial tunneling
Ethernet-connected driver
Many field bus drivers are Ethernet (port) connected, typically using some TCP/IP protocol for transport. For example, the Modbus TCP driver (ModbusTcpNetwork) uses the Modbus TCP protocolessentially the Modbus protocol wrapped in TCP/IP. The SNMP driver (SnmpNetwork) uses SNMP, an application-layer protocol within the TCP/IP protocol suite. These and other Ethernet-connected drivers operate from a single Ethernet port without difficulty, due to the high bandwidth and efficiencies of IEEE 802 network (and TCP/IP) standards. In addition to JACE platform usage, Ethernet-connected drivers are available for the AxSupervisor (PC) platform as well, for direct device integrations. These are specially-licensed versions of the AxSupervisor (by default, an AxSupervisor is licensed only for JACE device communications, via the NiagaraNetwork).
Serial-connected driver
Serial-connected drivers use a specific serial port on the host (JACE) platform. For example, the Modbus serial driver (ModbusAsyncNetwork) requires association with a specific COMn port on the JACE, which you do from the property sheet of this network component (Figure 5-1). Note: Only one network can be assigned to any one serial port (COMn) of the host JACE platform. That driver network essentially owns that communications port.
51
Figure 5-1
Slots under the Serial Port Config (SerialHelper) must be set to match the communications parameters of other devices on the attached network. Note that in this ModbusAsync example, you also select either the Modbus ASCII or Modbus RTU protocol (the driver supports either one, which you set according to the type of networked Modbus devices). Often, serial-connected drivers support legacy type device networks. In this case, the serial tunneling feature may be useful to run vendor-specific legacy Windows applications to do device configuration and maintenance (all from an IP station connection). See Serial tunneling on page 5-2.
Special-port driver
JACE controllers may include one or more special-use ports, for example one or more Echelon (LON) FTT-10 ports. Usage of such a port requires a specific driver. In this example, the Lonworks driver (each LonNetwork) associates with a specific LONn port, which is configured under that network component. For details, see the Lonworks Guide. Other special-use ports may appear as the evolution of JACE products continue.
Serial tunneling
A NiagaraAX station running one or more serial-based drivers can provide tunneling access to its connected devices. This allows you to use a vendors Windows serial-based application (via the serial tunnel client) to perform device-specific operations. Examples include application downloads or other device configuration. The tunneling client is separate from NiagaraAX Workbenchmeaning that you can install it on various PCs, as needed. The key advantage is that serial tunneling requires only a standard IP connection (to the station), yet provides access as if the client PC was attached to the target serial network via a physical COM port, for example RS-232. Note: No special licensing is required to use tunneling features in NiagaraAX. The following sections provide more details: Serial tunnel overview Client side (PC application) Station side (TunnelService) Serial tunneling usage notes
5-2
Figure 5-2
Serial tunneling uses the following components: Client (PC application) side The NiagaraAX Serial Tunnel client installs on any Win32-based PC (independent of Niagara Workbench). It provides a Niagara AX Serial Tunneling applet in the Windows Control Panel, corresponding to a virtual COMn port. For details, see Client side (PC application) on page 5-3. Server (station) side The host JACE must have the tunnel module installed to support serial tunneling. In addition, its station must be configured with a TunnelService and a child SerialTunnel component. For details, see Station side (TunnelService) on page 5-5. Note: A LonTunnel (lontunnel module) is also available, and uses the same basic architecture. It allows Lonworks application tunneling to connected LON devices on a JACEs FTT-10 network. For details, see Lon tunneling in the Lonworks Guide.
See the following additional sections: Installing the serial tunnel client Serial tunnel client configuration Serial tunnel client installation details
Step 4
NiagaraAX-3.x User Guide
5-3
The Installation Finished dialog appears (Figure 5-6)click OK again. See Serial tunnel client installation details on page 5-5 for a listing of installed components. Figure 5-4 Serial tunnel client installation
Figure 5-5
Figure 5-6
Fields in this dialog are described as follows: Serial Port The virtual COM port provided by this tunnel client. This should not conflict with any existing COM port assignment, as known to Windows, for a physical serial port (e.g. COM1). When you tunnel from a serial-based Windows application, you specify this virtual COM port. Host Address The IP address (or hostname) of the tunnel server, meaning the target JACE running a station with a serial-based network, TunnelService, and SerialTunnel. Tunnel Name The COMn device name (identifier) of the JACEs driver network to access. This will vary depending on the configuration of the network and its corresponding SerialTunnel.
NiagaraAX-3.x User Guide
5-4
User Name User in the target JACE station, where this station user must have admin write permissions for the stations TunnelService and child SerialTunnel(s). Password Password for this station user. Interactive (checkbox) If checked, this dialog reappears each time a serial-based application first opens this virtual COM port. If cleared, this dialog displays only if an open fails to establish a connection to the tunnel server (as stored from last entry). Typically, you leave Interactive checked. Note: When this dialog appears interactively, the Serial Port setting is read-only. To change it, you must access the Serial Tunneling applet from the Windows Control Panel.
5-5
Step 5
For any station user that needs to serial tunnel, make sure that they have admin write permissions for the SerialTunnel(s). Following this and the review of SerialTunnel properties, tunneling is now provided by the station. Figure 5-8 TunnelService with child SerialTunnel (copied from tunnel palette)
In the Figure 5-9 example, the remote host that is currently serial tunneling is 192.168.1.103. When a tunnel connection is terminated, this Tunnel Connection component is removed.
5-6
In addition to its statistical properties, a TunnelConnection has an available Disconnect action. This disconnects the active tunnel connection, removing the parent TunnelConnection component. A popup dialog Connection closed by remote host is seen on the client tunnel side.
Speed of the tunnel connection may be slower that a direct serial connection, due to the overhead of wrapping and unwrapping messages in Niagara Fox and TCP/IP protocols. Tunneling is not recommended if using a dialup modem for connection to the target JACE station.
Note: As in any station connection, note that User Name and Password are case-sensitive. Currently, only one tunnel connection is allowed per SerialTunnel. If another client application attempts a connection to that tunnel, a popup message appears on that PC (Figure 5-12). Figure 5-12 Tunnel busy
5-7
5-8
CHAPTER
About Histories
In Niagara, a data log is referred to as a history. Histories are ordered collections of timestamped records. A single history is a collection of specific data values from a component within any station - local or remote. Histories are organized by their source station (device), as shown in Figure 6-1. Figure 6-1 History files organized by station
The following topics are relevant to understanding histories: History Services The History Service, the Audit History service and the Log History service provide support for logging data in a Niagara station. In order to provide database support for histories in a Niagara station, the station must contain the History Service. Refer to About the history service on page 6-2 for details about the History Service. Refer to About the audit history service on page 6-3 and About the log history service on page 6-4 for information about those services. History ORD scheme Once you have a history service running, you can access histories that you create in the database using the history ORD scheme. The unique history scheme name history and each unique history ID provide identification for the individual histories. All history collections are identified by this unique id. For information on using the ORD scheme to access individual histories, refer to About ORDs on page 1-16. History space History space provides a means for viewing and working with history files in the history database. History space is visually represented in Workbench as a node in the nav tree and may be accessed by using the nav tree or by using the Open ORD dialog box. Views on the History space include the following: History Chart Builder, Database Maintenance, Nav Container View. For more information about history space and history space views, refer to Types of history space views on page 6-5. History views History views present the history information in various formats for both analysis and editing. Refer to Types of history views on page 6-9. History logging process Using histories involves a process of collecting, storing and archiving data. You can configure the history collection process to collect the data that you need and store the history records where you want them - locally or remotely. This process is described in more detail in About the history process on page 6-14. History Configuration History configuration includes working with parameters such as ID, history source, timezone, record type, and more. For more details on configuration, refer to Configure history extensions on page 6-17.
61
History data editing You can edit and filter the history data in workbench using the history editor view (described in About the history editor view on page 6-13). The editing process is described in more detail in About editing history data on page 6-20.
Each service is described in the following sections: About the history service on page 6-2 About the audit history service on page 6-3 About the log history service on page 6-4
The history service manages histories in ways that are not always visible to the user, including the following: identifies histories when the service is started (normally this is whenever the station is started) all existing histories are added to the service. life cycle management handles history management functions, such as creation and deletion of individual histories. namespace maintains the naming convention (namespace) for all histories. configuration maintains a global default configuration for the histories. The history extension manager and the history property sheet are two views of the history service that provide ways to work with history extensions. Refer to the following sections for more information about these views: About the history extension manager About history service property sheet
6-2
You can also Enable, Disable, or Rename any collection from this view by selecting the desired history extension in the table and using the History Ext Manager menu, popup menu, or toolbar icons, as described in the sections listed below: About the History Ext Manager menu on page A-8 About the history extension manager popup menu items on page A-11 About the history extension manager toolbar icons on page A-15 Note: If a history is disabled, its row is dimmed with a gray background in the history extension manager view.
Figure 6-5
6-3
Figure 6-6
When enabled, the Audit History Service logs all property changes and all actions taken on a component, such as the following: Property changed Property added Property removed Property renamed Properties reordered Action invoked You can view the Audit History Service properties, enable or disable the Audit History Service, and set record capacity parameters from the Audit History Service Property Sheet, as shown in Figure 6-7. Figure 6-7 Audit history service properties
6-4
Figure 6-8
You can edit the Log History Service properties and set configuration properties in the property sheet, as shown in Figure 6-9. Figure 6-9 Log history service properties
In addition to the standard HistoryConfig properties, the following properties are available for editing: Enabled select the true option to enable or the false option to disable the Log History Service. Minimum Severity you can choose the level of output that you want to record by setting the log level Minimum Severity property. This property is the lowest-level station output message that you want to log. The default log level for Minimum Severity is Error. You can change this to Warning., Trace, or Message.
Chart builder view This is the default view of the History Space node (in the nave tree). Use this view to build any one of several types of chart options from the data that is stored in one or more histories. See About the chart builder view for details. Database maintenance view Use this view to clear records or delete histories. Refer to About the database maintenance view on page 6-8 for more information about this view. Nav container view Use this view to display all histories in the station. See About the nav container view on page 6-9 for more details about this view.
6-5
Figure 6-12
The display of the Chart Builder view is divided into three primary areas: Display configuration fields Time Range Select a time parameter option from the list, including an option that allows you to set a specific time range using the Edit Time Range dialog box. Title Type a title for your chart in this text field. Grid Lines Select Show or Hide to show or hide grid lines on the history chart. Rollup Rollup (or Rollup Interval) is an interval of time that is used to determine what (and how) data is presented in your chart. Each point displayed, using the rollup, represents a designated time interval before the specified plot time. A rollup value of 1 hour will present data at a granularity level of every one hour, while a rollup value of 15 minutes will show data for every 15 minutes of logged data. Rollup options are: Average This option plots the average value for the selected rollup period.
NiagaraAX-3.x User Guide
6-6
Min This option plots the minimum value for the selected rollup period. Max This option plots the maximum value for the selected rollup period. Sum This option plots the total of the values in the selected rollup period. Histories pane This is the lower left area of the Chart Builder view. It displays all histories that are available in your local station or any station histories that you import by means of the Niagara network or other network driver (for example, BacnetNetwork). Histories are grouped under the station by station name. Double-click (Wb Web profile) or click (Hx Web profile) on a history name to copy it to the Current Charts pane. Note: The histories that are displayed in this pane are the same histories that are displayed under the history space node in the Workbench nav sidebar. Current Charts pane This pane displays the histories that are selected to be plotted. For each history, you may select the type of chart to generate, using the chart type option list, as displayed in Figure 6-13. Note: NiagaraAX-3.2 has more chart type options than earlier versions. Adjacent to the histories in this pane are icon-type controls that allow you to reorder histories in the pane or remove histories from the pane. Current chart pane options and controls
Figure 6-13
Control buttons The following control buttons are located at the bottom of the Chart Builder view: Build button Click this button to build the chart using the histories that are in the selected Current Histories pane. Clear button Click this button to remove all histories from the Current Histories pane. Figure 6-14 shows an example of chart that displays two histories. Figure 6-14 Two different history line charts using chart builder view (Wb and Hx Web profiles)
6-7
Figure 6-15
History pie chart and area chart using chart builder view
The left side of the histories area contains the available histories window. This window displays all histories that are available in your local station or any station histories that you import by means of the Niagara network or other network driver (for example, BacnetNetwork). Histories are grouped under the station by station name. Note: The available histories are the same histories that are displayed under the history space node in the nav sidebar. The right side of the histories area contains the targeted histories window. This window displays the histories that are affected when you click the Run Maintenance button. Move the histories that you want manage into this window using the control buttons, as described below: Controls and options for the database maintenance view are described in the following list: Add history button (right arrow) Click this button to move histories that are selected in the available histories window to the targeted histories window. Remove history button (left arrow) Click this button to move histories that are selected in the targeted histories window to the available histories window.
6-8
Clear Old Records option Select this option and use the Before date selector to remove records, based on date, from the histories that are in the targeted histories window. Before date field Use this field with the Clear old records option to set the year, month, day, and time parameters that you want to use for removing old records. Clear all records Select this option to delete all records from the selected history database. Delete Histories Select this option to delete all histories that are in the targeted histories window. Run Maintenance button Click this button to execute the option that you have selected on the histories in the targeted histories window.
In this view you can select any history and switch to any other view of that history (see Types of history views on page 6-9) using the view selector or the popup menu. In this view you can also rename histories, using the popup menu.
History Chart This view shows a plotted chart of the history data. This is the default history view. Refer to About the history chart view on page 6-10 for more details. Live History Chart NiagaraAX-3.3 provides background and live history charting for history data. This feature includes the ability to display historical data (trend data) in a Live History Chart view that plots a range of data from a configurable start time to the current time and continues plotting as new data is generated by the source. Refer to About the Live History Chart View on page 6-11 for more details.
6-9
History Table This table shows a view of history data that you can export and view in the following formats: PDF, CSV, Text. In addition, you can modify the tabular view of history data by choosing to show or hide columns and by filtering the data based on date and time. Use the Table Options menu in the top right corner of the history table to modify the history table view or to export the data in the view, as desired. Collection Table This view shows a table of any data (in this case history data) that you can export and view in the following formats: PDF, CSV, Text. Use the Table Options menu in the top right corner of the collection table to modify the table view or to export the data in the view, as desired. History Summary This view shows a summary of the historys status and configuration properties. History Editor This view allows you to actually edit data and filter histories.
The history chart view contains the standard chart controls and options to help you customize and view the data. Refer to Chart controls and options on page 2-18.
6-10
Figure 6-20
Hx charts essentially look and work the same in all target media except for a the following differences: The default time range for histories is now "Time Range" which is only the bounds of the history data. This is the default in workbench, so now history charts should look the same by default. You cannot however modify this time range. The existing options (Today, Last Month, etc.) are still available. Pie charts do not render in Microsoft Internet Explorer (IE) You may see slower render times in IE since the <canvas> tag has to be emulated using JavaScript and VML.
The Live History Chart view contains the standard chart controls and options to help you customize and view the data. However, in addition to these controls and options (described in NiagaraAX User Guide) this view has the following additional features: Item List pane This pane displays all the points that are linked to the chart view. You can click to select or de-select each item to display or remove the associated item plot from the chart. You can always resize the pane by dragging the left border to widen or narrow the pane in the view. Toggle Item List button Click this button to display or collapse the Item List pane.
6-11
Continuously updating view As new data is plotted the view continues to update. When the chart area is filled, the screen scrolls to keep showing the latest data.
Figure 6-23
In addition to a title bar that displays the history name and number of records in the table, the history table has the following four columns that are described in Types of history data fields on page 6-10. Timestamp Trend Flags Status Value Use the Table Options menu in the top right corner of the history table to modify the table view or to export the data in the view, as desired. Refer to Table controls and options on page 2-17 for a description of the Table Options menu.
6-12
Figure 6-25
In addition to a title bar that displays the history name and number of records in the table, the history table has the following four columns that are described in Types of history data fields on page 6-10. Timestamp Trend Flags Status Value Use the Table Options menu in the top right corner of the history table to modify the table view or to export the data in the view, as desired. Refer to Table controls and options on page 2-17 for a description of the Table Options menu.
Status parameters these parameters display data that is updated as of the time you select the history summary view. Record count this is the current number of total records, as of the Last Timestamp. First Timestamp this is the date, time and timezone information for the initial history record. Last Timestamp this is the date, time and timezone information for the latest recorded history record. Configuration parameters these parameters display data that identifies and characterizes the specific history. Refer to Configure history extensions on page 6-17 (see the History Config bullet item) for a description of the configuration parameters.
6-13
Figure 6-27
The history editor view is comprised of the following main areas: Title bar this area displays the history name and number of records in the history. Toolbar icons these icons are available on the toolbar when the history editor view is displayed. Refer to About the history editor toolbar icons on page A-15 for descriptions of these toolbar icons. Time range options this menu is located in the top left corner of the history editor view. You can select one of the predefined times or select the Time Range option that allows you to set a specific time range using the Edit Time Range dialog box. Table options menu Use the Table Options menu in the top right corner of the history editor view to change which columns are displayed or to export the data in the view, as desired. The history table options menu includes the following items: Table columns In addition to a title bar that displays the history name and number of records in the table, the history table has the following four columns that are described in Types of history data fields on page 6-10. Timestamp Trend Flags Status Value Use the Table Options menu in the top right corner of the history table to modify the table view or to export the data in the view, as desired. Refer to Table controls and options on page 2-17 for a description of the Table Options menu. Control buttons The following two control buttons are used to initiate record editing in the history editor view: Edit this button is available when one or more records are selected in the history editor table. When you click this button, the Edit Records dialog box appears. Select Outliers this button is available when the outlier configuration parameters are active (when the option box is selected in the Configure Outliers dialog box). When you click this button, the Configure Outliers dialog box appears. Use the Table Options menu in the top right corner of the history table to modify the table view or to export the data in the view, as desired. Refer to Table controls and options on page 2-17 for information about using the Table Options menu.
6-14
Figure 6-28
collect involves defining the parameters that specify what data will be recorded and when (or how often) it will be recorded. For example, you can collect data whenever a change of value occurs - or at a regular time interval that you specify. To collect history information you need to: Add history extensions to a component (refer to Add history extensions to a component) Configure the extensions (refer to Configure history extensions on page 6-17) Use a valid history name (part of configuration, see, About history names on page 6-18) Refer to Add history extensions to a component on page 6-16 for more details. store involves defining the parameters of the history database file. For example, you can customize the name of the database file, define the maximum number of records to save, and choose metadata to add to the records. Refer to Configure history extensions on page 6-17 for more details. archive (transfer) includes importing and exporting records from one station to another station. For example, you can limit your local station records to a small number that you specify and archive all records to another station. Refer to Archiving on page 6-20 for more details. You can add extensions to a components property sheet in order to extend the functionality of the component. By adding a history extension, the real-time value or status of the components output can be collected as a time-stamped entry in the associated history table. History extensions are available in the history palette, as shown in Figure 6-29. The history table is not stored as part of the components data but is a separate collection of data simply referred to as the history. Figure 6-29 History extensions
6-15
Figure 6-30
Two other parameters that apply to delta logging are related to the concept of rollover. Rollover occurs when a running total reaches a defined maximum number and then resets to zero or another defined number. The defined maximum number is represented in the history extensions by the Max Rollover Value parameter. The reset value (which is often zero) is represented in the history extensions by the Min Rollover Value parameter. These parameters allow you to specify the behavior of the delta logging when the rollover occurs. If you do not know these values or if they are not specified, then select the null option for these parameters. Figure 6-31 Using rollover value parameters with delta logging
Consider the following example. If you are logging energy consumption with the Max Rollover Value parameter set to 999,999 and the Min Rollover Value set to 100, then when a rollover is detected, the delta logging bases its delta calculations on a maximum value of 999,999 and a subsequent initial value of 100. Refer to Configure history extensions on page 6-17 for a list and short description of all the history extension parameters.
6-16
Figure 6-33
Extension types include: BooleanChangeOfValue used to collect boolean values whenever those values change. BooleanInterval used to collect boolean values at specified time intervals. NumericChangeOfValue used to collect numeric values whenever those values change. NumericInterval used to collect numeric values at specified time intervals. EnumChangeOfValue used to collect integer values (enumerations) whenever those values change. EnumInterval used to collect integer values (enumerations) at specified time intervals. StringChangeOfValue used to collect a string of characters whenever the characters change. StringInterval used to collect a string of characters at specified time intervals. For more details about extension types, refer to Types of history extensions on page 3-14.
6-17
History Config These properties set up the attributes of the History record. Id a unique identification for each history. The id value is the name that was automatically created by the History Name Format or manually created in the name field or rename dialog box. History Id
Figure 6-34
Source a read-only field that displays the ORD of the active history extension. Time Zone a read-only field that displays the time zone of the active history extension. Record Type displays the data that the record holds in terms of: extension type (history) and data type:(BooleanTrendRecord, NumericTrendRecord, and so on). Capacity allows you to set a finite number of records to collect or to choose to collect an unlimited number of records. If you choose the Record Count option, an additional records field displays. In the records field, type in the maximum number of records that you want to save in the history database. Full Policy - (Roll or Stop) allows you to choose what to do when the Capacity number is reached. The Roll option drops off the oldest record to make room for the newest record. The Stop option simply causes the history to stop recording. Interval a read-only field that displays the selected collection type: regular on interval. valueFacets allows you to use the Edit Facets dialog box to choose how you want to display the logged data. Change Tolerance for COV based collections, the monitored variable has to change at least this much to be logged as a changed value. Interval for Interval-based collection, the cycle time, or how often the history parameters are checked. Any time you change this parameter, a new history is created (or split-off) from the original history because histories with different intervals are not compatible. minRolloverValue this is a number that is used as the starting point for calculations for cumulative logging after a rollover. Rollover occurs after a running total maximum value is reached. Select the null option if a minRolloveValue is unknown. Refer to About delta logging on page 6-15 for more details about rollover and delta logging. maxRolloverValue this is a number that is used as a maximum value for calculations when a rollover is detected by the history logging process. Using this parameter and the minRolloverValue parameter helps you avoid getting negative numbers when you are logging running total data, such as energy usage. Refer to About delta logging on page 6-15 for more details about rollover and delta logging. precision this option allows you to select 32 bit or 64 bit options for the history data logging. 64 bit allows for higher level of precision but consumes more memory.
6-18
Note: If you use a literal name and not a script to name a history, you lose the automatic incrementing feature that the script provides. Duplicating extensions that have a literal name duplicates the exact literal name and therefore creates an invalid (non-unique) name. In this case, you must rename each duplicated history manually to create a unique name and avoid a fault condition. Figure 6-35 History naming relationships
As described in Configure history extensions on page 6-17, and illustrated in Figure 6-34, history names are part of the unique history extension property Id. When you rename a history at the history extension, you are renaming the history at its source. Therefore, the history configuration and the history Id both change. This concept is illustrated in Figure 6-36. Figure 6-36 Renaming a history in the history extension
If, however, you rename a history in a history space view, such as under the history space node in the nav sidebar, or in the nav container view, you are changing the name of the history as it has been saved in the history spacenot at the configuration (or origination) level. Therefore, the history Id is not changed and the history extension continues to produce records under the original history name as long as that history extension is active and enabled. This results in a history split; the newly-named history is no longer updated, as of the time of the renaming, but it contains all the records up to that time. In this scenario, a history under the original name begins with the first record after the renaming and continues recording as configured. This concept is illustrated in Figure 6-37. Figure 6-37 Renaming a history in the history space
Renaming Summary: No history split If you rename a history in either the property sheet view or the history extension manager view, you are editing the actual history extension and therefore not forcing a history split. History split If you rename a history in either the nav side bar view or the nav container view you are editing the name in the history space and not actually changing the history ID the history is split.
6-19
Archiving
Archiving is the process of saving a history out to a different location (station) from where it was originated. There are two general methods (or directions) for archiving, as described below: Pushing data (exporting histories) is the process of exporting history data and is done using the history export manager, shown in Figure 6-38. For details about exporting histories, refer to History Export Manager on page 4-41. Niagara history export manager
Figure 6-38
Pulling data (importing histories) is the process of importing history data and is done using the history import manager, shown in Figure 6-39. For details about importing histories, refer to History Import Manager on page 4-37. Niagara history import manager
Figure 6-39
Caution It is possible to alter good data and miss filtering some bad data points using the history editor view.
6-20
Workbench provides the ability to find and edit outliers based on parameters that you specify. The Configure Outliers dialog box, shown in Figure 6-40, appears when you click the Configure Outliers icon in the toolbar menu. Refer to About the history editor toolbar icons on page A-15 for a list of toolbar icons specific to the history editor view. Figure 6-40 Configure Outliers dialog box
Configure Outliers check box Outlier filtering is disabled by default. Select the check box to enable the outlier filtering feature and use the parameters that are displayed in the dialog box. Clear the check box to disable outlier data filtering. When outlier parameters are enabled, the Window and the Percent of Std Deviation fields are available and allow you to specify the intensity of the search for outliers in the data. Window Enter an integer in the Window field to define the number of surrounding data points to consider when determining whether a given point is an outlier. For example, if you use the default value of 4, it will look at the two points before and after the point under investigation (PUI). This is a surrounding window of 4 pointsfrom which a standard deviation will be calculated and used with the percentage parameter, as described, below. Percentage Enter a value in this field to specify the percent of standard deviation (calculated from the window of points) to apply for identifying whether or not the PUI should be considered a valid value (not an outlier). If the PUI falls outside of this valid range, then it is considered to be an outlier and its value is replaced by the linear interpolation of the surrounding 2 valid points. If the PUI falls within the range, then the data point is used and considered valid.
6-21
6-22
CHAPTER
About alarms
Figure 7-1 Typical alarm table display
Alarms notify personnel that a predefined set of parameters has been met. Typically, these are offNormal or Fault parameters that are configured to notify specified recipients about the specified condition and to record the conditions that exist when the monitored point meets these parameters. The normal parameters for an individual point are properties that may be set and edited, as desired, by a user with proper access and privileges. Alarm An alarm is used to indicate that some value is not within an appropriate or expected range. For example, the normal operating temperature range of a device may be 70 to 100 degrees F. You can set the out of range parameters to generate an alarm if the operating temperature exceeds the upper limit or goes below the lower limit of this range. Alert This is an alarm that does not have a normal state. For example, a motor may require lubrication after every 400 hours of operation (this is not an out of range condition). Using the alarming function in Workbench, you can configure an extension to send an email alert to you when the 400 hours runtime has accumulated on the motor.
Alarm examples
The following are examples of possible ways that alarms are used: Out of operating range notification (offNormal) An alarm is most commonly used to indicate that some value is not within an appropriate or expected range. For example, the normal operating temperature range of a device may be 70 to 100 degrees F. You can set the out of range parameters to generate an alarm if the operating temperature exceeds the upper limit or goes below the lower limit of this range. Advisory notification (alert) You may use an alarm in situations to report on a parameter that does not really have a normal state. For example, a motor may require lubrication after every 400 hours of operation (this is not an out of range condition). Using the alert function, a system integrator can setup an control point that monitors accumulated device run-time and sends an email alert notification at or before the 400 hours run-time has occurred. Device fault notifications (fault) Some devices may report values that are so far out of range that it is obvious that there is a device or system fault that needs attention. For example, if a device with a normal operating temperature of between 70 to 100 degrees reports a temperature of 0 degrees F or 1000 degrees F, then it is probable that there is a device or system fault and that the reported temperature is not the actual temperature at the device. The system engineer or supervisor can set parameters and enable alarms for a separate notification for values that are judged to be faults as opposed to simply out of range.
71
Figure 7-2
Under these three processes NiagaraAX provides highly specific and flexible alarming life cycle management, including the following alarming functions: creating alarms Alarms are generated by components using an alarm extension (refer to About alarm extensions and components on page 7-3). The alarm extensions create the alarm whenever specified values are outside of normal range. Those alarms are then handled by the alarm service (refer to About the alarm service on page 7-6). routing alarms Alarms are handled by the alarm service which, in addition to allowing you to specify routing destinations (including archiving destinations), provides notification and acknowledgement parameters. notification Alarms are routed to one or more recipients based on their alarm class. This includes notification by email, at the alarm console, a lineprinter, or at remote stations. acknowledgment Alarms may require a response from those who are notified. If a required acknowledgement is not received within an optionally-specified time, alarms can be escalated and re-routed to other designated alarm recipients. managing alarms alarms are archived in records that are managed by the alarm database management interface. The following list outlines the basic steps in the alarming process: add alarm extensions to components Choose alarm extensions to match the component data type. configure alarm extensions Configure the alarm parameters to define when a component is in an alarmed state. route alarms Configure the alarm parameters to define where an alarm record is sent. manage the alarm archive Use the alarm archive management tools to manage the storage of all alarms.
NiagaraAX-3.x User Guide
7-2
For details on adding extensions to a property sheet, see To add an extension to a component property sheet view: on page 12-16. Once the extension is added, configure the extension to meet your alarming requirements. Refer to About alarm extension properties on page 7-3 for more details.
7-3
Figure 7-4
Following, are the alarm extension properties descriptions: Alarm Inhibit A true value in this field prevents alarm generation due to any transition or state change. For example, if there is a true value in this field and an Offnormal value is reached, a toOffNormal status will not be communicated. When the state returns to Normal, a toNormal status will also not be communicated. A false value in this field will prevent alarms from being inhibited (even if an Inhibit Time is set). Note: The purpose of the Alarm Inhibit property is to prevent unintended alarms, such as in afterhours situations where a piece of equipment is turned off. A difference between Alarm Inhibit and Alarm Delay is that the Alarm Inhibit is a boolean value (true/false) and may be controlled by another device (for example, an ON/OFF value of a fan). If the Alarm Inhibit value is set to true, the Inhibit Time property qualifies the behavior. Inhibit Time The value of this property affects the length of time that the current Alarm Inhibit state will remain in effect after an Alarm Inhibit state change. For example, when an Alarm Inhibit value changes from true to false, alarm generation continues to be inhibited for a time that is specified by the Inhibit Time property value. When an Alarm Inhibit value changes from false to true, alarm generation may continue to be inhibited for a time that is dependent on the point type, as shown in Table 7-1. Time until Alarm Inhibit state change affects alarm generation
Table 7-1
Numeric point
Inhibit Time property value 0 (zero)
Alarm State This field displays the current alarm state of the component: Normal, Low Limit, High Limit, Fault. Time Delay
7-4
Note: Time Delay does not affect alarms generated by a Fault. There is no delay when transitioning in or out of a Fault generated alarm. This is the minimum time period that an alarm condition must exist before the object alarms. In other words, the object status must meet the alarm criteria for a continuous period equal to or greater than defined in the Time Delay property value before an alarm is generated. The general purpose of the Time Delay property is to provide a means to prevent nuisance alarms that may be caused by a momentary change in a state value (Normal, Low Limit, High Limit). Time Delay applies to properties that transition both in and out of alarm states. Therefore, an alarm status may continue to display as Offnormal (for example) for a time (equal to the Time Delay) after the value has come back into Normal parameters. The Time Delay is the minimum time period that a normal condition must exist before the object comes out of alarm. Note: Typically, when both Alarm Delay and Alarm Inhibit properties are used, Time Delay is less (shorter) than Alarm Inhibit. Alarm Enable Select any of the options to individually enable the generation of alarms when the following transitions occur: toOffnormal This is the time that the offNormal event occurred. toFault This is the time that the Fault event occurred Note: No alarms will be generated unless an Alarm Enable option is selected. To Offnormal Times This property displays four pieces of information that are related to the time that the component status changed to Offnormal. A null value means that the event has not occurred. See Figure 7-5. Alarm Time This property displays the time that the To Offnormal event occurred. Ack Time This property displays the time that the alarm was acknowledged. Normal Time This property displays the time that the To Normal event occurred. Count This field displays the total number of Offnormal events. To Offnormal times
Figure 7-5
To Fault Times This property displays four pieces of information that are related to the time that the component status changed to a Fault state. A null value means that the event has not occurred. See Figure 7-6. Alarm Time This property displays the time that the To Fault event occurred. Ack Time This property displays the time that the alarm was acknowledged. Normal Time This property displays the time that the To Normal event occurred. Count This field displays the total number of To Fault events. To Fault times
Figure 7-6
To Normal Times This property displays the time that the component transitioned to a normal state.
7-5
Time in Current State This property displays the elapsed time since the component transitioned to the current state. Source Name This property displays the name of the alarm source. If you use the default script setting %parent.displayName%, the source name field will show the display name of the alarm extension parent. You can edit this script or type in a literal string to display. To Fault Text Enter the text in this field that you would like to display when the component is in a Fault state. To Offnormal Text Enter the text that you would like to display when the component is in a Offnormal state. Note: This text may be overriden in the Alarm Console display by text that you enter into the High Limit or Low Limit fields. To Normal Text Enter the text that you would like to display when the component is in a Normal state. Hyperlink Ord Use this property enter or choose an Ord, a BQL Query or a path to a component that you would like to associate with an alarm status on the component you are configuring. When an alarm is reported in the console, the Hyperlink button is active and uses this path. Use the folder icon to browse to the file that you want to link to. Click the arrow icon to the right of the folder icon to test the Ord that you enter. Sound File Enter or choose the path to a sound file that will execute when the current component is in an alarm state. Use the folder icon to browse to the file that you want to use. Click the arrow icon to the right of the folder icon to test the path that you enter. Alarm Icon Use this property to enter or choose the path to a graphic file that will added to the display in the timestamp column of the alarm table in the Console Recipient view. Use the folder icon to browse to the file that you want to use. Click the arrow icon to the right of the folder icon to test the path that you enter. Fault Algorithm This property when available, displays fault parameters. Different options are available here, depending on the alarm extension being used. Offnormal Algorithm Use this property to enter high and low limit parameters for numeric components and select the alarm value (on or off) to designate the alarm state for a boolean component. Different options are available here, depending on the alarm extension being used. Alarm Class Use this property to select an alarm class from the option list. The alarm class specifies the alarm routing options for this component. Refer to About alarm class on page 7-15 for details about alarm class. Meta Data Use this property to enter new facets using the meta data property. See About point facets on page 3-7 for details about facets.
About notes
Notes are simple text entries that are associated with a particular alarm. It is possible to add a Note to one alarm or to multiple alarms. Alarm records that have notes are indicated by a note icon. Refer to Types of alarm details view dialog boxes on page 20 for more information about Notes.
7-6
Each station may contain a single alarm service that coordinates the routing of alarms within the NiagaraAX framework and maintains the alarm database. The alarm service is available in the alarm palette, as shown in Figure 7-7. Figure 7-7 Alarm service in the alarm palette
If you do not have the alarm service in your active station, you can add it by dragging and dropping a copy from the alarm palette, as shown in Figure 7-8. Figure 7-8 Adding the alarm service
The alarm service may contain one or more alarm classes (refer to About alarm class for more information about alarm class). An alarm class may route alarms to one or more alarm recipient types (refer to Types of alarm recipients on page 7-18 for more information about alarm recipient). The routing process includes getting alarm acknowledgements from the recipients back to the source, and alarm notifications from the source to the recipients. The default view (wire sheet view) of the alarm service makes it easy to visualize the relationships between the alarm class and the alarm recipient. These relationships are created by linking the alarm class to the alarm recipient, as described in About alarm class on page 7-15. In addition to the wire sheet and property sheet views, there are several other views of the alarm service. See Types of alarm service views on page 7-9 for a description of the alarm service views.
7-7
If you do not have the memory alarm service in your active station, you can add it by dragging and dropping a copy from the alarm palette, as shown in Figure 7-8. Figure 7-10 Adding the alarm service
Like the alarm service, the memory alarm service may contain one or more alarm classes. An alarm class may route alarms to one or more alarm recipient types. The routing process for the memory alarm service is the same as the standard file-based alarm service and includes alarm acknowledgements from the recipients back to the source, and alarm notifications from the source to the recipients. The default view (wire sheet view) of the alarm service makes it easy to visualize the relationships between the alarm class and the alarm recipient. These relationships are created by linking the alarm class to the alarm recipient, as described in About alarm class on page 715. The memory alarm service has the same views available as the standard alarm service. The main distinction of MemoryAlarmService is that when you use this service, alarms are not stored persistently on the station host (typically a JACE) as they are with the standard file-based alarm service. Choosing MemoryAlarmService might be appropriate for situations where you do not want to keep a large store of alarms on your host and are looking primarily for immediate alarm notifications. Alarm records are stored in memory and therefore they are lost in the case of a power failure.
7-8
A white alarm icon in the table indicates that the current state of the alarm source is normal and acknowledged. A note alarm icon (it may be any color) in the table indicates that there is a note associated with the alarm A link icon in the table indicates that the alarm has a link associated with it. When an alarm displays this icon, the Hyperlink button is also active. An optional icon may display if it is setup in the alarm properties. If included, this graphic appears at the left end of the alarm record row.
In addition to the standard Workbench views (Wire Sheet, Category Sheet, Slot Sheet, Link Sheet) there are several views specific to the alarm service, including the following: Alarm Extension Manager view The alarm extension manager is a view of the alarm service that provides a record of information about each alarm extension. See About alarm extension manager on page 7-9 for details. Instructions Manager view The Instructions Manager view provides a way to view, assign, and edit the instructions that can be assigned to alarms. See About the Instructions Manager view for details. Alarm Class Summary The alarm class summary view provides a concise list of information relative to each alarm class. Refer to About the alarm class summary view on page 7-12 Alarm Database Maintenance About the alarm database maintenance view on page 7-13 Alarm Service Property Sheet The alarm service property sheet is a typical Workbench property sheet view that shows all the alarm service slots. See About alarm service property sheet for details.
7-9
Figure 7-12
The alarm extension manager view provides the following data fields: Point This field indicates the point that is the parent of the listed alarm extension. Extension This field identifies the type of extension that is listed (for example: OutOfRangeAlarmExt, StatusAlarmExt, or others). Alarm State This field displays the status of the listed alarm extension; for example, High Limit or Normal. toOffnormal Enabled This field indicates (as True or False) if the toOffnormal parameter of the extension is enabled (true) or not (false). toFault Enabled This field indicates (as True or False) if the toFault parameter of the extension is enabled (true) or not (false). Alarm Class This field identifies the name of the alarm class that the extension is assigned to (defaultAlarmClass or other class).
Figure 7-13
Edit alarm extensions from the alarm extension manager in the following ways: toOffnormal Enabled and toFault Enabled settings You can toggle ON and OFF the toOffnormal Enabled and toFault Enabled parameters of each selected alarm extension using the popup menu. Edit Alarm Class You can change the alarm class assignment of the alarm extensions. Select single or multiple (for batch editing) and from the popup menu select the Edit Alarm Class menu item. Choose the desired alarm class from the option menu and click the OK button to change the alarm class setting for the selected alarm extension(s).
7-10
7-11
Types of alarm service views About the alarm class summary view
Figure 7-14
Instructions Manager view with one point and one master instruction selected
The alarm class summary view has the following data fields: Name This data field displays the alarm class name. Open This data field displays the total number of open alarms associated with the alarm class. In Alarm This data field displays the total number of alarms (points currently in alarm) associated with the alarm class. UnAcked This data field displays the total number of unacknowledged alarms associated with the alarm class. Last Alarm This data field displays the timestamp of the last alarm associated with the alarm class. alarm.Class.priority This data field lists the priority of each alarm transition type. For example, toOffnormal=1, toFault=60, toNormal=220, and so on. To Path String This data field identifies (as a string value) the path to the alarm class. Alarm class summary view display features include: Note: You can double-click on any row in the view and the view will change to the property sheet view of the alarm class that you clicked on. You can also use the popup menu to select a view.
7-12
Types of alarm service views About the alarm database maintenance view
The Alarm Database Maintenance view has two main sections: Alarm History table This table fills the upper part of the view and contains a table of alarm history records. Maintenance controls pane These controls are located below the table pane and contain the following controls and parameter options: Clear Old Records option allows you to clear alarm records before a certain date and time. The Before field is provided to allow you to set the date and time for removing old records. Clear All Before Selected Record option allows you to delete all records that have a timestamp earlier than the timestamp of the record that is currently highlighted in the table. Clear All Records options allows you to delete all records, regardless of the date. Run Maintenance button This button initiates the maintenance action. The alarm database maintenance view has the following properties: UUID This data field displays the unique universal identifier (UUID) of the alarm record. Source State This data field displays the status of the listed alarm source; for example, High Limit or Normal. Ack State This data field displays either Acked or Unacked to indicate whether the alarm has been acknowledged or not. Ack Required This data field displays either True or False to indicate whether or not an acknowledgement is required for this alarm. Source This data field displays the alarm source name. Alarm Class This data field identifies the name of the alarm class that the extension is assigned to (defaultAlarmClass or other class). Priority This data field displays the priority number of the alarm.
7-13
Types of alarm service views About the alarm database maintenance view
Normal Time This data field displays the time that the alarm went to normal (if applicable) Ack Time This data field displays the time that the alarm was acknowledged (if applicable) User This data field identifies the name of the user that acknowledged the alarm. An unacknowledged alarm will display unknown in this field. Alarm Data This data field presents a detailed list of alarm data. Alarm Transition This data field displays the last transition type of the alarm. Last Update This data field displays the time of the last alarm update.
The alarm details dialog box displays read-only details about the alarm that is displayed in the database maintenance view.
7-14
Note: For details about the alarm database manager views, refer to About the alarm database maintenance view on page 7-13. For details about the alarm class summary view, refer to About the alarm class summary view on page 7-12. For details about the alarm extension manager, refer to About alarm extension manager on page 7-9.
You can set up multiple alarm classes in order to have a variety of alarming and routing options available for selection from the alarm extension properties. For example, you may set up an alarm class that routes to the console recipient and station recipient, while you may use another alarm class that routes alarms only to an email recipient, as shown in Figure 7-20. Figure 7-20 Alarm classes and linked alarm recipients
For more information about alarm recipients, refer to Types of alarm recipients on page 7-18. For information about configuring alarm classes, refer to About alarm class properties on page 7-16.
7-15
Figure 7-21
Each level may be routed to a different alarm recipient, as shown in Figure 7-21, so that if an alarm remains unacknowlwedged long enough, it may be sent to as many as four different recipients (including the original recipient). However, if an alarm is acknowledged at any level, then it is not escalated to the next Level. In addition to having an Enable property, each alarm escalation level has a Delay property that allows you to set the amount of time that you want to allow an alarm to remain at any level before it is moved to the next escalation level. Refer to About alarm class properties on page 7-16 for more information about Alarm Class properties.
The alarm class property sheet is shown in Figure 7-22 and described in the following list: Note: Remember that these alarm class properties are specific to their parent alarm class and therefore, the properties do not contain values that are assigned to other alarm classes. Ack Required Any alarm assigned to this alarm class is required to have the selected alarm transitions acknowledged when the associated option is selected (toOffnormal, toFault, toNormal, toAlert). If no option is selected, then no ack is required. Priority These fields allow for custom entry of priority levels for each alarm transition type. The priority levels are associated with the alarms and are indicated graphically by colors that you can set in the alarm options dialog box. Refer to Alarm console options on page 2-21 for details about setting priority colors.
7-16
Total Alarm Count This property displays the total number of alarms that have been assigned to the alarm class from all sources. Open Alarm Count This property displays the current total number of open alarms. Note: An Open Alarm is an alarm that is in normal status and is not acknowledged (or acknowledged and in alert status). In Alarm Count This property displays the total number of alarm conditions. Unacked Alarm Count This property displays the total number of unacknowledged alarms. Time of Last Alarm This property displays the time that the last alarm (assigned to this alarm class) was generated. Escalation Level(n) Enable (where n is 1, 2, or 3) Select the true or false option of this property to enable or disable escalation at this level. Escalation Level(n) Delay (where n is 1, 2, or 3) This property is the time since the alarm was generated until it is escalated. This is not the time between escalation levels. Set a time (in hours and minutes) that you want to allow an unacknowledged alarm to remain unacknowledged before you escalate it to the next level. One minute is the smallest increment that you can set for escalation level delay.
Note: The Alarm menu is available when you are in the alarm console view. The alarm class mapper dialog box has two primary windows, as shown in Figure 7-25 and described below: Alarm Class Definitions window This window is located at the top of the alarm class mapper dialog box. You can create, delete, or edit alarm mapper definitions in this window and then assign any existing alarm classes to these definitions, as shown in Figure 7-25. Click on the Edit button to display the Edit dialog box (shown in Figure 7-24) where you can configure the mapper alarm definition.
7-17
Figure 7-24
Note: The icons, hyperlinks, and sounds in the alarm mapper definition do not override those that are assigned in the alarm extension itself. If these parameters are assigned in both the alarm extension and in the alarm class mapper definition, the alarm class mapper definition parameters are ignored. Alarm Class Definitions Mapping window This window is located at the bottom of the alarm class mapper dialog box. You can map any existing alarm classes to alarm mapper definitions. To do this, click the Add Mapping button to display the Map Alarm Class dialog box, as shown in Figure 7-25. Choose an available alarm class in the upper option box and assign it to the mapper alarm class definition in the lower option box. Click the OK button to complete the assignment. The mapping appears in the lower window. Remove mapping assignments by selecting the mapping in the lower window and clicking the Remove Mapping button. Alarm class definitions mapping
Figure 7-25
7-18
Console recipient properties are described in the following list: Time Range allows you to set a limited period of time during a day for collection of alarms, using the following parameters: Start Time a time of day to begin alarm collection, defined by hour, minute and second. End Time a time of day to end alarm collection, defined by hour, minute and second. Days Of Week option boxes allow selection of specific days to collect alarms. Transitions option boxes allow selection of specific alarm transitions to display in the console. Only those transitions that are selected will be displayed in the console even though the alarms are still saved into the alarm history. The default view of the console recipient is the alarm console view (for details about the console view, see About the alarm console).
The alarm console manages alarms on a perpoint basis. Each row in the alarm console is the most recent alarm from a point. To view all the current alarms or to get more details about a particular alarm from that point, use the alarm sources view and the associated dialog box displays.
7-19
To view all the current alarms from a particular point in the open alarm sources view, double click the desired row. The alarm details view appears, as shown in Figure 7-28. Figure 7-28 Open alarm sources view
As with other tables, you can show or hide columns using the Table Options menu in the top right corner of the table (refer to Table controls and options on page 2-17). To acknowledge an alarm, select the desired alarm and click the Acknowledge button. An alarm is cleared from the alarm console when both of the following conditions exist: alarm is acknowledged the point is in a normal state alarm record dialog box This dialog box shows additional detailed information about a specific point alarm, as shown in Figure 7-29. It also allows you to: acknowledge an alarm using the Acknowledge button. jump directly to a point using the Hyperlink button. add notes to the alarm record using the notes dialog box (use the Notes button). Alarm record dialog box
Figure 7-29
Filters dialog box The Filters dialog box displays parameters, as shown in Figure 7-30, that you can use to include or exclude alarms from the alarm console by selecting or deselecting parameters. This filter action only affects which alarms display in the alarm console, it does not edit any alarm record data or perform any alarm maintenance.
7-20
Figure 7-30
You can choose, for example, to filter out any alarms in the alarm console that are currently in a Normal state by selecting the Source State check box and then selecting all states except Normal and clicking the OK button. This action filters out all alarm records that have Normal current Source States. If the source state changes or if you change the settings in the Filters dialog box, the alarm console table will update to change the display, as indicated. Note: It is important to remember that the settings do not reset automaticallyyou must remove any filters that you set in order to view all alarm records. Notes dialog box Use the Notes dialog box to add a note to one or more alarms. To add a note to all the alarms from a selected source, open the Notes dialog box directly from the alarm console view, using the Notes button. If the selected alarm record represents a source with multiple alarms, any note that you add is added to all the alarms associated with that alarm source. When there is more than one alarm associated with an alarm record, the Notes dialog box displays a <Multiple Alarms> message, as shown in Figure 7-31. Adding a single Note to more than alarm
Figure 7-31
The Notes dialog box is comprised of the following: Message pane The message pane is located in the upper half of the dialog box. It displays the text of any notes that are already associated with the selected alarm record. If multiple alarms are associated with the selected alarm record, the message pane also displays a <Multiple Alarms> notice to alert you to the fact that adding a note adds the note to all the alarms associated with the selected alarm source. Editor pane The Editor pane is located in the lower half of the dialog box and is a text field that allows you to type the text for any note that you are adding. Add Note button This button saves the note to the alarm record and dismisses the Notes dialog box.
NiagaraAX-3.x User Guide
7-21
Close button This button closes the Notes dialog box without saving any information. You can also open the Notes dialog box from the Alarm Record dialog box. Since the Alarm Record dialog box displays single alarm records, notes are added to only one alarm at a time using this method. Figure 7-32 Opening the Notes dialog box from the Alarm Record dialog box
Station recipient properties are described in the following list: Time Range allows you to set a limited period of time during a day for collection of alarms, using the following parameters: Start Time a time of day to begin alarm collection, defined by hour, minute and second. End Time a time of day to end alarm collection, defined by hour, minute and second. Days Of Week option boxes allow selection of specific days to collect alarms. Transitions option boxes allow selection of specific alarm transitions to display. Only those transitions that are selected will be displayed even though the alarms are still saved into the alarm history.
NiagaraAX-3.x User Guide
7-22
Route Acks when this parameter is set to true, Acks are routed to this recipient; when set to false, Acks are not routed to the recipient. Remote Station option selection displays eligible remote stations. Stations appear in the option list if there is a valid network connection to the station. Alarms that are sent to a remote station are routed according to the parameters defined in the Alarm class that is selected in the Alarm component under the remote stations NiagaraNetwork. Refer to Station Alarms notes on page 4-66 for more information about remote station alarm routing.
The properties on an email message recipient (shown in Figure 7-35) include the data for the email message fields as well as alarm collection parameters. Figure 7-35 Email recipient property sheet
7-23
Figure 7-36
Lineprinter recipient properties are described in the following list: Time Range allows you to set a limited period of time during a day for collection of alarms, using the following parameters: Start Time a time of day to begin alarm collection, defined by hour, minute and second. End Time a time of day to end alarm collection, defined by hour, minute and second. Days Of Week option boxes allow selection of specific days to collect alarms. Transitions option boxes allow selection of specific alarm transitions to display in the console. Only those transitions that are selected will be displayed in the console even though the alarms are still saved into the alarm history. Route Acks when this parameter is set to true, Acks are routed to this recipient; when set to false, only alarms (not Acks) are routed to the recipient. Printer this option list displays printers that are available for selection. Select a valid lineprinter from the list or type in the name of the desired printer. Language this field provides a place to enter the ISO 639 language code for the language associated with the line printer. This is a two letter code (lower-case preferred). Refer to the following link for the complete list of codes: http://www.loc.gov/standards/iso639-2/langcodes.html. Print Format This field has the following editable default parameters. Source: %alarmData.sourceName% this parameter sends the source name of the alarm to print on the first line. Timestamp: %timestamp% this parameter sends the timestamp of the alarm to print on the second line State: %sourceState% / %ackState% this parameter sends the alarm state and the acknowledged state to print on the third line Priority: %priority% this parameter sends the alarm priority to print on the fourth line Alarm Class: %alarmClass% Text: %alarmData.msgText% Note: For more information about how to format data in this field, click on the help icon to the right of the field. Alert on Failure when this parameter is set to true, an alert is generated if the printer fails to print the alarm.
7-24
CHAPTER
About Presentation XML (Px)
This section describes the presentation tools that are available in Niagara AX Workbench. Basic presentation concepts and AX presentation architecture principles are described in About presentation on page 1-13. If you plan to visually display the control logic that you develop in Workbench (for operations or for engineering purposes) then you need to understand the basic principles of Px and understand the capabilities and limitations of your different target media. Obviously, graphics and text look different and have greater limitations on a cell phone display, when compared with a computer-based web browser. It is important to develop Px files with the target media types in mind and to test your Px views in the target media types as you develop them. Usually, it is easier to complete the engineering of your control logic using the wire sheet and other views before beginning to design the presentation of that logic. There are features and tools in the Px Editor, such as the Make Widget wizard, that allow you to drag and drop components from the nav tree onto various panes in the Px Editor. If you have already built the logic, it should visible in the tree and available for drag and drop. The general process of creating presentations for control logic can follow many different paths. The three major steps, shown in Figure 8-1, are provided as an example to help illustrate the process. Figure 8-1 Simplified presentation process
Create view When you create a view, you are creating a relationship between a Px file and a component. The Px file defines the view and that view may be associated with one or more components of various types, such as folders and points. Refer to the following sections for information related to Px views: About Px views on page 8-2 About Px files on page 8-3 About Px viewer on page 8-4 Bind data After creating a view with a Px file, you add graphic visualizations (called widgets) to the file and pass data to these widgets using data binding. The bound data from the control objects animates and updates the widgets. Refer to the following sections for information related to widgets and data binding: About Px Editor on page 8-5 About Widgets on page 8-9 About the PxInclude Widget on page 8-12 Animating Graphics on page 8-17 About Px target media on page 8-25 About Web Profiles on page 8-26 About the Make Widget wizard on page 8-30 Make Widget wizard: examples on page 8-32
81
Create a Nav file In order to easily find and navigate between views, a special file type (.nav file) is available for creating a customizable navigation tree. Edit the Nav File using the Nav File Editor and assign a particular Nav File to a user in the users profile (using the User Manager view). Refer to the following sections for information related to the Nav file: About the Nav file on page 8-47 About the Nav File Editor on page 8-49
About Px views
A Px view is a custom graphical view that you define in a Px file. The purpose of a Px view is to provide a visualization of information in a rich, dynamic format that is easy to create and to edit. By using the Px Editor to build Px files, you can create the desired visualization of your control logic without having software programming skills. When attached to a component, the Px view becomes the default view for the component. Looking at an objects Px view in the property sheet (where it may be edited) helps illustrate what a Px view is. A Px view is comprised of the following parts, as shown in Figure 8-2: Icon Assign or change the icon file that appears to the left of the Px view display name. After assigning this icon to the view, it appears in the view selector menu, the nav tree side bar, and in the property sheet view. Note: Icon graphics must be linked into your view from a module (for example, use the following path to find a folder icon: module://icons/x16/folder.png). Icon graphics are not supported outside of modules. Px File Assign the Px file that is associated with active Px view. See About Px files on page 8-3 for more about Px file. Required Permissions Assign or edit the Operator and Admin permissions that are applicable when the view is active: Read (r), Write (w), Invoke (I). Media Edit the target media of the Px view: workbench or html. See About Px target media on page 8-25 for details about target media types. Px view in a component property sheet
Figure 8-2
The Px view highest on the slot sheet is the default view. You can reorder Px views to change the default Px view of a component. For an active component, all Px views (if any) appear in the view selector, as shown in Figure 8-4.
82
Figure 8-4
After completing the fields in the New Px View wizard, click the OK button to finish. The new Px view is displayed in the Px Editor. If you choose to have the wizard create a new Px file, it will be a simple default file, as shown in Figure 8-6 on page 3.
About Px files
The Px file defines the content and presentation of a Px view. The Px file is a special XML file that describes the components in a database and can be any collection of components, up to a complete database. All views (wire sheet view, property sheet view, category sheet view, and so on) can be used on components in a Px file. This means that a Px view can be used to provide a complete variety of options in the development of dynamic user interfaces. The contents of a very basic Px file is shown in Figure 8-7, as it appears in the Text Editor. This file simply contains an empty canvas pane nested in a scroll pane. Figure 8-6 Basic default Px file in Text Editor View
83
As you add more objects to the file, (typically using the Px Editor) the file looks more like the snippet shown in Figure 8-7. The graphic components, value bindings, and their container elements and attributes are all referenced in the Px file. Figure 8-7 Px file in Text Editor View and in Px Editor View
The elements in the Px file are also graphically represented in the Widget Tree side bar pane. For information about the Px Editor, refer to About Px Editor on page 8-5. For information about the Widget Tree side bar, refer to About the widget tree side bar on page 29. For more information about the Text Editor, refer to workbench-TextFileEditor on page 14-63.
Shared Px files
A single Px file may be used as part of one or more Px views. Since the bindings within a Px file are always resolved relative to the current ORD, you can reuse the same Px file across multiple components by specifying bindings with relative ORDs. This allows you to create a single presentation and use it in views that are assigned to components that can use identical graphic layout. The obvious advantage of this file sharing is that you only need to create and edit one Px file for many views, thus saving time and ensuring consistency among similar applications. However, it requires that you understand the following caution:
Caution Editing a Px file affects all views that use that particular Px file: Any time that you view a component in the Px Editor you have its Px file open for editing. If the Px file is shared with other Px views, then all of those Px Views are changed.
About Px viewer
The Px viewer presents Px in a non-editable display. The Px viewer allows the user (with required permissions) to view information and invoke actions on controls in the display. Any time you select a Px view from the right-click menu or from the View Selector menu, the Px viewer displays the active components view, as shown in Figure 8-8. Use the Px editor to edit the Px file (as described in About Px Editor on page 8-5).
84
Figure 8-8
Px Viewer
About Px Editor
When you select the Px Editor view of a component, or of a Px file, the Px Editor displays the Px file in the Workbench view pane. Figure 8-9 shows a Px View of a component with several items selected. Figure 8-9 Px Editor
The default view of the Px Editor comprises three main areas: Canvas The largest area of the Px Editor (by default) is the canvas pane. Typically, you place widgets on the canvas and edit them using one or more of the three side bars and additional dialog boxes. If you want to change the default size of the canvas pane that appears in new Px files, then edit the canvas pane that is in the "/workbench/newfiles/PxFile.px" file (under your NiagaraAX installation (My Host > My File System > Sys Home) directory. Refer to About Widgets on page 8-9 for more information about widgets. Side bar pane The Px Editor side bar pane appears on the far right side of the view pane only when the Px Editor is active. Refer to About the side bar panes for more information about side bar panes. Use the Px Editor toolbar menu to hide or display individual side bars or to show or hide the Px Editor side bar pane. Refer to Types of side bars on page 2-3 for more information about individual side bars. Px Editor toolbar The Px Editor toolbar displays above the view pane when the Px Editor is active. Refer to Px Editor toolbar icons on page A-14 for more information about individual Px Editor toolbar icons.
85
Figure 8-10
86
About Px Properties
Starting with NiagaraAX-3.3, you can use Px Properties to facilitate graphic view design in the Px Editor view. Px Properties are entities based on a Px file markup convention that provide stylesheet-like control for properties in a Px file. You work with Px properties using a Px Properties palette and the contextsensitive popup menu to "link" defined Px properties to Px objects in the appropriate object properties field. The following graphic shows an example of two Px properties defined in the Px Properties palette. Figure 8-12 Px Properties palette with two defined properties
Px Property concepts
Px Properties provide a convenient way to apply property values to Px file properties. When you create a Px property, a <properties> tag pair is entered into the Px file code to hold all property definitions. Each property that is created is defined by a set of parameters (such as "name", "type", and "value") and enclosed in a pair of <property> tags. Figure 8-13 Px Properties assigned in the Px file code
These property parameters are assigned to or removed from individual Px object properties through a process of Linking or Unlinking. When an object property is assigned a Px Property (using the Link popup menu item), the property sheet displays the Px Property name in the property value field with a light green background shading. Figure 8-14 Linked Px Property Names Display in Property Value Field with Shading
87
Figure 8-15
Px Properties Palette
Note the following about the Px Properties palette: Palette controls are located across the title bar and work like other Px palette controls. The Add New button opens the Add dialog box for adding a new Px property. The Delete button deletes any currently selected property. Property names are displayed in the left column of the palette table. Property values are displayed in the right Value column of the table. The value select and edit buttons are located to the right side of each property value, as required.
Using Px Properties
Typically you work with Px properties in the following ways: Create Px Properties Click the Add New button to open the Add dialog box. In the Add dialog box, you can name the property and choose property types from drop down lists. Edit Px Properties In the Properties palette Value column, click on the value select and edit buttons to edit a selected existing property values. Delete Px Properties Click the Delete button to delete a selected property. Link Px Properties With a Px object selected, right-click on the desired object property and select the Link menu item from the popup menu. Under the "Link" submenu, select the property item to apply.
Note: The popup menu is context sensitive. Px Properties that are not appropriate for the selected object property are not available (dimmed). Unlink Px properties With a Px object selected, right-click on the linked property and select the Unlink menu item from the popup menu.
88
Figure 8-16
About Widgets
Widgets are components that provide visualization. You can use the Px Editor to work with widget properties in defining user interface functions for control and information display. User widgets can process input in the form of mouse, keyboard, and focus events. User events are grouped into these same event categories. The bajaui module, the kitPx module, and the kitPxHvac module all contain widgets that you can use for building rich user interfaces. You can find these widgets by opening them under the palette side bar, shown in Figure 8-17, or you can find them using the Make Widget wizard. refer to Using the palette side bar on page 12-9 for instructions about using the palette side bar. refer to About the Make Widget wizard on page 8-30 for details about the Make Widget wizard. Widgets in the bajaui palette
Figure 8-17
The widget tree side bar provides a good illustration of the hierarchy structure of all widgets in a Px file (refer to About the widget tree side bar on page 2-9 for a summary of the widget tree side bar). Some complicated widgets have mini-frameworks all to their own, such as the table widget, tree widget, treeTable widget, and textEditor widget. Refer to the Baja Widget Toolkit in the NiagaraAX Developer Guide for more details about these types of widgets and for developer-level information about widgets.
NiagaraAX-3.x User Guide
89
The following sections discuss some of the primary characteristics of widgets, including: Widget layout Types of panes Widget painting Commands About widget properties
Widget layout
A tree-type hierarchy of Px elements defines widget relationships and physical layout, in a structure where parent-child relationships exist between components. All widgets occupy a rectangular area that is defined by a position and a size. The position of a widget is defined by its x, y coordinates relative to its parents coordinate system and each widget may have a default (or preferred) size. The size of the widget is defined by the width and height properties. Figure 8-18 shows a simple layout of a widget (C), held by a parent widget (B), that is the child object of a widget (A). Note: If either of the child objects are positioned outside of the view area of the parent, they will be clipped and not be totally visible. Figure 8-18 Scroll pane (A) holds canvas pane (B) with widget (C)
Some widgets are designed specifically to be container widgets that hold other widgets. These widgets are called panes. Figure 8-19 shows the pane hierarchy in the widget tree and on the Px editor canvas. Refer to Types of panes for a list of commonly used panes. Figure 8-19 Pane hierarchy in the widget tree
Types of panes
Widgets that are designed to be containers for child widgets are called panes. Different types of panes provide different functions. The following list is a summary of some commonly used panes: CanvasPane used for absolute positioning. BorderPane used to wrap one widget and provide margin, border, and padding similar to the CSS box model. EdgePane supports five potential children: top, bottom, left, right, and center. The top and bottom widgets fill the pane horizontally and use their preferred height. The left and right widgets use their preferred width, and occupy the vertical space between the top and bottom. The center widget gets all the remaining space. See Figure 8-20 for an example. GridPane lays out its children as a series of columns and rows. Extra space in the rows and columns is configurable a number of ways using the panes properties.
NiagaraAX-3.x User Guide
810
SplitPane supports two children with a movable divider between them. TabbedPane supports multiple children - only one is currently selected using a set of tabs. Note: Even though only one tab is visible at a time, all tabs must be loaded on the page, even if they are not visible. If many tabs, with a lot of information, are on a single page, the page may load very slowly. ScrollPane supports a single child that may have a preferred size larger than the available bounds. The scroll pane provides a set of scroll bars for viewing areas of the child widget that go outside of its bounds. ReportPane supports headers and footers in report PDFs. The ReportPane allows its content to span multiple pages, and allows each page to have a common logo as well as a page number and timestamp.
Figure 8-20 illustrates the edge pane layout using borders and labels. Figure 8-20 Edge panes, borders, and labels on a canvas pane
Widget painting
Painting defines how widgets present themselves graphically (using: colors, transparencies, and so on), as well as clipping. Graphics are always translated so that the origin 0,0 is positioned at the top, left corner of the widget. The graphic's clip (visible area) is set to the widget's size. Alpha and transparent pixels blend with the pixels already drawn. Widgets are drawn in property order, the first widget is drawn first (at the bottom), and the last widget drawn last (on the top). Effective z-order is reverse of property order.
Commands
Widgets can have user commands that are commonly used with buttons and menu actions. Toggle commands are commonly used with a checkbox, radio button, and other items. Menu commands are available and used on fans, coils, and other widgets, as shown in Figure 8-21. Figure 8-21 Widget commands
For more information about commands, refer to the Baja Widget Toolkit in the NiagaraAX Developer Guide.
811
This widget provides a way for users to embed a single Px file in another Px file. The key benefit of this feature is the ability to create reusable Px views and embed them into one or many other Px views. The following sections describe the NiagaraAX-3.3 widget: PxInclude Widget Concepts Types of PxInclude Widget Properties Using the PxInclude Widget (including About ORD Variables, General Procedure for Using the PxInclude Widget and ORD Variables, and Examples Using PxIncludes and ORD Variables)
812
The following diagram illustrates the basic concept of embedding one Px file in one or more other Px files. Figure 8-24 PxInclude Concept Diagram
Note the following about the Px files represented in this diagram: Px files X, Y, and Z are included in other Px files Px files X, Y, and Z may display as independent views, as well as be embedded using the PxInclude widget. Px file Y is included in both Px file A and Px file B. Changes to files X, Y, or Z are displayed in their parent Px files (A or B), via the PxInclude, when the parent view is refreshed. PxIncludes work by defining an ord property value that points to the "included" file, as shown in the following illustration. Figure 8-25 PxInclude points to the file to be embedded
This example shows the "inc1.px" file embedded in another Px file. The embedded filename is visible in both the Properties dialog box and in the Widget Tree. When PxIncludes are added to a Px file, the "include" markup appears as follows in the Px code (visible in the "Text File Editor" view). Figure 8-26 Simple PxInclude markup in a parent Px file
813
ord The value of this property (an ORD) identifies the Px file that is linked using the PxInclude widget. See an example in Figure 8-27, below. variables This optional property identifies the value of any variables in the Px file specified by the ord property. Clicking on the variable field displays the variables dialog box, where you can define the variable value. See an example in the Figure 8-27, below. Also see About ORD Variables on page 8-15. layout This property contains parameter fields for values that prescribe PxInclude widget size and location. visible This property has two options: true and false. Setting the option to false causes the widget to not display. Example PxInclude Properties Palette in the Px Editor
Figure 8-27
Note the following about this illustration: The "ord" property file:^px/aircraft/inc_performance.px specifies to include the Px file named "inc_performance.px". This file is located in the station's (^) "px/aircraft" folder. The "variables" property value indicates that the included file has a single variable named "target" and that this variable is defined as "slot:/Simulator/Performance". The "visible" property value is set to the default value "true".
Note: Only the ord variables that are selected in the bottom left window of the Make Widget Wizard are available for configuring after the PxInclude file is imported. See About_ORD_Variables.
814
Figure 8-28
When you complete the Make Widget Wizard, you may have the PxInclude widget configured fully, or edit it further, if needed.
Note the following about this example: Px File Y uses two ORD variables: $(var1) and $(var2). Px File Y is embedded in two different Px files using PxInclude widgets. In Px File A, var1 is defined as "A", resulting in a binding "ord=A". The "ord=A" value binds the widget to a "Point A", so a value from that "Point A" is displayed in the parent view (Px File A). In Px File B, var1 is defined as "C", resulting in a binding "ord=C". The "ord=C" value binds the widget to a "Point "C", so a value from that "Point C" is displayed in the parent view (Px File B). Similar to the descriptions above, in Px files A and B, var2 is defined as ord=B and ord=D, respectively, resulting in different point values displayed in Px Files A and B.
815
Using the PxInclude Widget General Procedure for Using the PxInclude Widget and ORD Variables
General Procedure for Using the PxInclude Widget and ORD Variables
The following is a general sequence of steps that you can take to use the PxInclude widget: Step 1 Step 2 Create (or open an existing) Px file that you want to use as an "included" or "child" Px file. This is the file that may be embedded in "parent" Px files using the PxInclude widget. Design the child Px file, as desired. If you are using any bound variables, consider whether or not to use an ORD variable for the "ord" property value of any bindings that you may want to assign only at the parent Px file level. Create any ORD variables using the $(var) syntax. Save the child Px file in the desired location. Create (or open an existing) parent Px file. This is the file that uses the PxInclude widget to embed the child Px file. Add a PxInclude widget to the parent Px file using one of the following methods: Drag (cut and paste) the widget from a palette and edit the ord property to add the child Px file. Drag (cut and paste) the child Px file from the workbench nav tree to add the widget to the parent Px file with the child Px file already defined in the PxInclude ord property. Drag (cut and paste) a component from the nav tree to initiate the Make Widget Wizard. Use the Make Widget Wizard to select the child Px file and choose which variables to bind. Select the PxInclude widget and edit the following properties, as required: enabled, layout, and visible - leave set to default values. ord - click the value field and define or browser to select the child Px file. If you used the Make Widget wizard, this field may already be defined. variables - click the value field to open the Variables dialog box. Use the editor field to define an ord value for each variable that appears. Notice the After column to verify the correct ORD path for each variable. Click the OK button to close the Variables dialog box. Save the parent Px file and attach it as a view to a component, if desired. Verify that the variable ORD paths are set correctly by viewing the parent Px file from the component view (if used).
Step 7
Note the following about this example: The top half of the dialog box comprises an "editor" field. This is where you can type a text string in the "Value" column to substitute for the variable. This example shows a single variable that is used in four instances. Each instance of the variable ORD has a different point appended to the variable. The bottom-left area of the dialog box displays each instance of the variable, as defined in the child Px file, in a Before column. The bottom-right area of the dialog box displays the results of any edits entered in the editor field in an After column. This is the literal ord value that is used in the Px file.
NiagaraAX-3.x User Guide
816
Note the following about this example: The PxInclude widget is placed in the bottom left corner of the Px Editor view of a parent Px file (displaying 3 of the 4 included ORD variables). The ORD variables are defined by typing in the editor field Value column of the Variables dialog box. The variable values display in the After column in the lower half of the Variables dialog box. Defined variables display in the PxInclude Properties dialog box (or Properties palette) with multiple variables displaying in the "variables" property value field separated by commas. Values display in the PxInclude widget area only after the variable is defined (using the Variables dialog box).
Animating Graphics
Animated graphics are graphics that change, or update, based on data values that come from object sources that are connected (or bound) to them. A graphic can be as simple as a single word of text (ON) or a number (72), or it can be an animated image (rotating fan). Widgets provide the graphic visualization of data in Workbench, so animated graphics are comprised of one or more widgets assembled in a Px file, available for display using the Workbench display media types. Widgets are animated by binding any widget properties to a legitimate data source. This means that you can connect numeric values to widget properties that use numeric values and you can connect binary values to objects that can use binary values. By animating the properties of a widget, you can control text and image appearance as well as a change a widgets location on the page and even its visibility. The following sections describe the different concepts that relate to animating graphics: Data binding Types of bindings Types of binding properties Relative and absolute bindings
Data binding
All widgets may be bound to data sources using data binding. Bindings are established between a widget and an object using an ORD. A single binding consists of a single widgetobject relationship. A bindings ORD property identifies the location of the object that updates and animates the widget. For example, the most common type of binding, the value binding, provides some of the typical functions that are associated with building real-time information for presentation as both text and graphics. This includes support for mouse-over status and right-click actions. Additionally it provides a mechanism to animate any property of its parent widget using converters that convert the target object into property values. Figure 8-32 shows a value binding to a fan widget as viewed in the Edit Binding dialog box.
NiagaraAX-3.x User Guide
817
Figure 8-32
Figure 8-33 illustrates the object-to-widget property binding concept. In this example, a widget has three separate data bindings. This means that each binding is coming from a different object and therefore each binding has a different ORD that defines its binding. Each binding provides access to an objects values so that they may be used, as required, to animate the widget properties. Figure 8-33 Widget with three bindings
Types of bindings
There are different types of bindings that may be used with widgets. Some bindings work with only a certain type of widget (for example, a bound label binding) and other binding types may be used with several types of widgets (for example, a value binding). Figure 8-34 shows bindings as they appear in a Workbench options list. Figure 8-34 Types of bindings
Following, is a list and short description of each binding type. Action binding invokes an action on the binding target component when an event is fired by the parent widget. See About action bindings on page 8-23 for details. Bound Label binding connects a value to a bound label widget. See About bound label bindings on page 8-20 for details. Field Editor binding used to bind field editor components to an object. See About field editor bindings on page 8-23 for details.
818
Popup binding used to display a Px view in an additional popup window that you can specify and configure. See About Popup Bindings on page 8-23 for details. Setpoint binding used to display the current value of a "setpoint" and also to provide the ability to modify it. See About spectrum setpoint bindings on page 8-22 for details. Spectrum binding used to animate a widget's brush (color) property. See About spectrum bindings on page 8-21 for details. Spectrum setpoint binding used in conjunction with a spectrum binding. See About spectrum setpoint bindings on page 8-22 for details. Table binding used to bind table data in a bound table. See About table bindings on page 8-23 for details. Value binding used to bind to values that are typically under a component. See About value bindings on page 820 for details.
819
popupEnabled This property has true or false options and allows you to specify if you want to allow a secondary window or dialog box to appear when a user clicks on this label from a browser or Px viewer. position This property is used to designate an initial screen position for a popup window. setpoint This binding property specifies the value that is used for displaying the Mid Color. For example, if you set this value to 70, then the color that you define for Mid Color will be displayed when the bound value is 70. size This property is used to designate an initial screen size for a popup window. statusEffect this property provides the following three options for enabling or disabling status effects: Color choose this option to enable a background color change when the bound value status changes. Color and blink choose this option to enable a background color change and a blinking effect when the bound value status changes. None choose this option to disable any effects based on bound value status changes. summary This property allows you to specify a display name for the widget in text or by means of a script. title This property value specifies the text that appears in a popup window title bar. widgetEvent This property allows you to specify one of several possible events: actionPerformed, focusEvent, invokeAction, keyEvent, mouseEvent. Possible actions are dependent on the type of widget and action. Some widgetEvents allow you to specify an actionArgument, as described, above. widgetProperty This property allows you to specify the property that you are targeting in the bindings parent widget. For example, you can use a spectrum binding that has a bound label parent to change the background property of that parent label by selecting background in the Widget Property options field. Or, you can change the foreground color by choosing foreground. You can target only one value per binding but you may add additional bindings if you want to target more that one property in the parent widget.
Bound label binding properties include the following: ORD Hyperlink Summary Popup Enabled Status Effect Refer to Types of binding properties on page 8-19 for a description of the binding properties.
820
The properties pane for the bound label binding is shown in Figure 8-36. Figure 8-36 Value binding properties
Value binding properties include the following: ORD Hyperlink Summary Popup Enabled Refer to Types of binding properties on page 8-19 for a description of the binding properties. Refer to Types of Converters for a list of converter types.
Types of Converters
Converters are used to change data from one type to another so that the data can be used to communicate with a particular widget property value. In most cases, when you animate a property, the correct data converter appears, by default, at the top of the list, as shown in Figure 8-37. Figure 8-37 Types of converters
The following types of converters are available when using a value binding: Fixed Simple I Numeric to I Simple I Status to Simple Object to String
Spectrum properties include the following: ORD Widget Property Low Color Mid Color High Color Set Point Extent Refer to Types of binding properties on page 8-19 for a description of the binding properties.
821
Setpoint properties include the following: ORD Hyperlink Summary Popup Enabled Widget Event Widget Property Refer to Types of binding properties on page 8-19 for a description of the binding properties.
Spectrum setpoint properties include the following: ORD Hyperlink Summary Popup Enabled Widget Increment Refer to Types of binding properties on page 8-19 for a description of the binding properties.
Spectrum setpoint properties include the following: ORD Hyperlink Summary Popup Enabled Refer to Types of binding properties on page 8-19 for a description of the binding properties.
822
Action binding properties include the following: ORD Widget Event Action Arg Refer to Types of binding properties on page 8-19 for a description of the binding properties.
The properties pane for the table binding is shown in Figure 8-43. Figure 8-43 Table binding properties
Table binding properties include the following: ORD Refer to Types of binding properties on page 8-19 for a description of the binding properties.
Field editor binding properties include the following: ORD Refer to Types of binding properties on page 8-19 for a description of the binding properties.
823
The Popup Binding has the following properties: ord Degrade behavior title icon position size Refer to Types of binding properties on page 8-19 for a description of the binding properties.
Note the following about this example illustration: In the Px Editor view, a Popup Binding is added to a Px button widget (Popup Weather) The Popup Binding properties (displayed in the bottom left corner) specify the following: The Popup Window displays the default view of the component at ORD= slot:/Services/WeatherService/Edinburgh No degrade behavior is assigned. The title "Pop up" appears in the top left corner of the Popup Window. The "workbench.png" icon is assigned to the top left corner of the Popup Window. Window x and y coordinate screen position is x=100 and y=100 pixels. Popup Window size is 800 pixels wide and 600 pixels high.
This is a particularly important point to remember if you want to design Px files that are used in multiple views on a local station or even possibly for use across different stations. When you use the Px Editor tools to bind data, the ORD is usually supplied in an absolute format, by default. The ORD is relative to the station, such as: station:|slot:/Logic/HousingUnit/AirHandler/DamperPosition. This absolute path ensures that the data always resolves to a single unique component (DamperPosition) in the location that is specified by the ORD, regardless of where the Px file or the parent component is located. If the same Px file is attached to a view that belongs to a different component, the ORD will still resolve to the original DamperPosition component because of the absolute path. However, if you make
824
data binding relative, then the path will resolve relative to its current parent ORD. This relative path makes the Px file resolve data bindings correctly to identically named components that reside in different locations, thus making one Px file usable in many views. You can open the Relativize ORDs dialog box from the Bound ORDs palette, as shown in Figure 848. This Px Editor tool provides a convenient way to change absolute ORDs to relative ORDs. Figure 8-48 Relativizing bound ORDs
This allows the Px Editor to advise you if you use any features in your Px file that are not supported by the target media that you have designated.
825
About profiles
Note: In Workbench, the concept of Profiles pertains to the different ways that Workbench is displayed while using either the Java plugin or using Hx technology. In this context, it does not refer directly to security settings or personal preferences. Profiles provide NiagaraAX software engineers with the ability to customize both the desktop Workbench and the Web Workbench interface. Using NiagaraAX, the software engineer can create customized Workbench applications that provide different functionality. Refer to NiagaraAX Developer Guide for more information about custom user interface development. Workbench comes with the following two categories of profiles that have specific profile types available: Web Profiles (refer to About Web Profiles) Kiosk Profiles (refer to About Kiosk Profiles)
Major features of the Default Wb Web Profile include: Dropdown menu list This menu includes the following submenus: File, Edit, Search, Tools, SideBars, PxEditor. These menus provide commands that are explained in Types of menu bar items on page A-2. Side Bar You may show or hide this pane. It may include the nav side bar and the palette side bar. The nav side bar displays the navigation hierarchy that is defined by the nav file. Locator Bar This interactive graphic bar appears across the top of the view area and functions as explained in About the locator bar on page 2-13.
826
Real-Time Data Data is displayed in real-time using the Java plugin. View selector Provides the same view selection options that are available in the desktop Workbench views. Refer to About the view selector on page 2-14 for details.
Major features of the Basic Wb Web Profile include: Locator Bar This graphic bar appears across the top of the view area. Real-Time Data Data supplied in real time using the Java plugin.
Default Hx Profile
This profile uses Hx technology (described in About Px target media on page 8-25) and provides a realtime user interface without the Java plugin download. An example of the Default Hx Web Profile is shown in Figure 8-52. Also see NiagaraAX-3.3 Hx profile-related updates on page 8-28. Figure 8-52 Default Hx Profile example
Major features of the Default Hx Profile include: Locator Bar This graphic bar appears across the top of the view area and displays links that are defined by the nav file. Real-Time Data Data is displayed in real time using Hx technology instead of the Java plugin. View Selector This dropdown option list provides a set of alternative views for the active object.
Basic Hx Profile
This profile uses Hx technology (described in About Px target media on page 8-25). It provides a reduced set of features but includes real-time user interface without the Java plugin download. An example of the Basic Hx Profile is shown in Figure 8-53. Also see NiagaraAX-3.3 Hx profile-related updates on page 8-28.
NiagaraAX-3.x User Guide
827
Figure 8-53
Major features of the Basic Hx Profile include: Locator Bar This graphic navigation bar appears across the top of the view area and displays links that are defined by the nav file. Real-Time Data Data supplied in real time without using Hx technology instead of the Java plugin.
NiagaraAX-3.3 Hx Pathbar enhancements In NiagaraAX-3.3 the HxPathBar has been enhanced to provide a default set of links between the three root spaces: Station (Config) , Files , and History . Users can fully navigate a station in Hx without having to manually type in URLs. Figure 8-54 Comparing the HxPathbar and the WbApplet Nav Tree
Note the following about the new HxPathbar: The root file node now displays the same as in WorkbenchAX (uses a drive icon and called 'Files'). The root history node now displays the same as in WorkbenchAX (uses a history database icon ).
NiagaraAX-3.3 "visible" property enhancement The capabilities of Hx technology are often enhanced with successive releases of NiagaraAX-3.x. Starting in NiagaraAX-3.3, the "visible" property displays and behaves the same in Hx profiles and WbWeb profiles (using the WbApplet). An example of this is the "visibile" property that may be bound and controlled in some widgets and the true/false values set to show or hide a widget based on the "visible" property value. An example of binding and using the "visible" property is shown in the following illustration.
828
Figure 8-55
The example above shows the "visible" property animated using a value binding. The value binding is linked to a writable point that passes its "true" or "false" value to the visible property so that it is "visible" (true) or "hidden" (false). The following enhancements to this property are provided in NiagaraAX-3.3. The visibile property functions in Hx exactly as it functions in Px. Previous versions of NiagaraAX did not fully support the "visibile" property in Hx. Direct children of Tabbed panes cannot have a hidden visibility (visible = false). Direct children of Scroll panes cannot have a hidden visibility (visible = false). The visibile property updates every 5 seconds. The following illustration gives a comparison of how a simple use of the "visible" property displays in a browser using the WbApplet and using Hx (no applet). Figure 8-56 Comparing WbApplet and Hx displays using "visible" property in the browser
Note the following about this example: The ARM and SAFE buttons write to a boolean point. The ARMED and SAFE labels have a "visible" property that is bound to and animated by the value of the boolean point. Clicking the ARMED button sets the boolean point value to "true" Clicking the SAFE button sets the boolean point value to "false" The "true" boolean point value sets the ARMED label "visible" property to "true" and the SAFE label "visible" property to "false" as defined by their respective "visible" properties using the visible dialog box. The "false" boolean point value sets the ARMED label "visible" property to "false" and the SAFE label "visible" property to "true" as defined by their respective "visible" properties using the visible dialog box. The behavior of the "visible" property is the same in both Px (WbApplet) and Hx rendered views in the browser. Using the visible dialog box
Figure 8-57
829
Px Editor workflow
There are various ways to work with the Px Editor. Some work sequences may depend on the type of control logic you are working with and some may depend on your Px target media. The following sections describe workflow patterns that may be used in some situations but may not be optimalor even possible with others. The Px Editor tools provide many ways to perform a single task. For example, you can edit widget properties in the Properties side bar, or you may double-click on a widget to display a Properties pane in a separate dialog box. Both means of editing the properties have the same effect.
830
Figure 8-58
The following list describes the primary areas of the Make Widget wizard: Title Bar This area displays a reminder that you are creating a widget that has a value that is bound to the ORD of the object that you just dragged into the Px Editor. Double-click on the ORD area to browse for a different component, if desired. ORD This area displays the ORD of the object that you dragged into the Px Editor. Source This area provides context-sensitive options for choosing the type and source of widget that you want to bind to the ORD. Depending on the type of value that you want to link, the wizard displays a variety of options in this area. For example, the Chart widget option would be available for a History Log object but it would appear dimmed (unavailable) if you dragged a Boolean Point object onto the canvas. The Widget Source option that you choose will change the display in the Property Options area and the Property Sheet area. Secondary view The secondary view area changes depending on what option is chosen in the Source area: Property Options (Bound Label only) This area appears when you select Bound Label in the Widget Source options. It provides a set of convenience options that allow you to set some of the commonly used label properties, by selecting a check box. You may also use the property sheet area of the wizard or later use the property fields in the property sheet dialog box or property sheet side bar to edit these properties. Module browser This area appears when you select the From Palette option in the Source view and allows you to browse for the desired widget. Sheet selector This area appears when you select the Workbench View option in the Source view and allows you to choose the Workbench view that you want to display for the object you just dragged into the Px Editor. Property options This area appears when you select the Properties option in the Source view and allows you to choose options that relate to the properties of the object that you just dragged into the Px Editor. Note: The Secondary view does not appear when the Actions option is selected in the Source area.
831
Property Sheet This area provides context-dependent options for you to select from (depending on the object that you drop onto the Px Editor). Property Sheet The complete property sheet view displays when you use the Bound Label, From Palette, or Workbench View option. Properties List A complete list of component properties (for the component you are dropping on the Px Editor canvas) is listed in this area. Actions A list of available actions is displayed here when you select the Actions option.
The Make Widget wizard displays, as shown in Figure 8-60. Note: The ORD for the selected component displays in the ORD area. Double click the ORD to browse for a different component, if desired. Step 3 Select the Bound Label option in the Source options list as shown in Figure 8-60
832
Figure 8-60
The Secondary view area displays a list of property options that are available. Step 4 In the Secondary view area, select the options that you want and set their properties, as desired, using the adjacent property options lists, as shown in Figure 8-61. Figure 8-61 Selecting Make Widget secondary view properties
Note: The Make Display Label option creates a separate unbound label that appears directly beside the bound label when the widget displays on the canvas. Edit the display label properties using the properties side bar after completing the Make Widget wizard. Step 5 In the Properties sheet area, shown in Figure 8-62, edit the bound label properties.
833
Figure 8-62
Note: Some of the options in the Secondary view area are also editable in the Properties sheet area. It is possible to override an option by changing it in the properties sheet area. Step 6 Click the OK button to complete the wizard. The Make Widget wizard disappears and the new bound label appears on the Px Editor canvas as shown in Figure 8-63. Figure 8-63 Completed bound label on Px Editor canvas
Step 7
Toggle the view using the View/Edit Mode toolbar icon to display the widget in the Px Viewer, as shown in Figure 8-64. Figure 8-64 Completed (commandable) bound label in Px Viewer
834
Figure 8-65
The Make Widget wizard displays, as shown in Figure 8-66. Note: The ORD for the selected component displays in the ORD area. Double-click the ORD to browse for a different component, if desired. Step 3 Select the From Palette option in the Source options list as shown in Figure 8-66 Figure 8-66 Selecting Make Widget wizard options
The Secondary view area displays the palette side bar view. Step 4 All palettes that are currently open in the palette side bar are available under the module option selector arrow. Other palettes may be opened by clicking on the folder icon. In the Secondary view area, expand the module tree to find and select the desired widget template, as shown in Figure 8-67.
835
Figure 8-67
Step 5
In the Properties sheet area, shown in Figure 8-68, edit the widget template properties, as desired. Figure 8-68 Editing widget template properties
Step 6
Click the OK button to complete the wizard. The Make Widget wizard disappears and the new widget appears on the Px Editor canvas as shown in Figure 8-69. Figure 8-69 Completed widget on Px Editor canvas
836
Step 7
Toggle the view using the View/Edit Mode toolbar icon to display the widget in the Px Viewer, as shown in Figure 8-70. Figure 8-70 Completed (commandable) widget in Px Viewer
The Make Widget wizard displays, as shown in Figure 8-72. Note: The ORD for the selected component displays in the ORD area. Double-click the ORD to browse for a different component, if desired. Step 3 Select the Workbench View option in the Source options list as shown in Figure 8-72 Figure 8-72 Selecting Make Widget wizard options
The Secondary view area displays a list of view options that are available for the selected component. Step 4 In the Secondary view area, select the desired component view to add, as shown in Figure 8-73.
837
Figure 8-73
The Properties sheet area displays the component properties. Step 5 In the Properties sheet area, shown in Figure 8-74, edit the widget template properties, as desired. Figure 8-74 Editing widget template properties
Step 6
Click the OK button to complete the wizard. The Make Widget wizard disappears and the new widget view appears on the Px Editor canvas as shown in Figure 8-75. Use the handles on the widget view to expand the view to the desired size or edit the Layout field in the properties side bar. Scroll bars will appear if the widget view is larger that the canvas view area. Figure 8-75 Completed widget on Px Editor canvas
838
Step 7
Toggle the view using the View/Edit Mode toolbar icon to display the widget in the Px Viewer, as shown in Figure 8-76. Figure 8-76 Completed (commandable) widget in Px Viewer
The view is fully functional in the Px viewer, where you can edit properties, invoke commands, or make other edits to a component, just as if you are editing in the Workbench view.
The Make Widget wizard displays, as shown in Figure 8-78. Note: The ORD for the selected component displays in the ORD area. Double-click the ORD to browse for a different component, if desired. Step 3 Select the Properties option in the Source options list as shown in Figure 8-78
839
Figure 8-78
The Secondary view area displays options that are available for creating the new widget. Step 4 In the Secondary view area, select one or more options from the list, as shown in Figure 8-79. Figure 8-79 Selecting Make Widget secondary view properties
Make Display Name Labels Choosing this option displays a separate unbound label that appears directly beside the bound label when the widget displays on the canvas. Edit the display label properties using the properties side bar after completing the Make Widget wizard Make Field Editors Choosing this option displays an area that allows you to edit the property in the Px viewer (or in a browser). Make from palette This option displays the palette side bar view in the wizard and allows you to find and use a suitable widget template from any available palette. Ord and Property Layout options (By Row or By Column) These options affect how the fields will be arranged on the canvas when you complete the wizard. Your choice of layout is optional and you may rearrange the layout after you place the items on the canvas.
Step 5
In the Properties sheet area, select the properties that you want to bind to the widget. Hold down the Ctrl key to select more than one property, as shown in Figure 8-80.
840
Figure 8-80
Step 6
Click the OK button to complete the wizard. The Make Widget wizard disappears and the new property widgets appear on the Px Editor canvas as shown in Figure 8-81. Figure 8-81 Completed bound label and field editor widgets on Px Editor canvas
Step 7
Toggle the view using the View/Edit Mode toolbar icon to display the widgets in the Px Viewer, as shown in Figure 8-82. Figure 8-82 Completed bound label and field editor widgets in Px Viewer
841
Figure 8-83
The Make Widget wizard displays, as shown in Figure 8-84. Note: The ORD for the selected component displays in the ORD area. Double-click the ORD to browse for a different component, if desired. Step 3 Select the Action option in the Source options list as shown in Figure 8-84. Figure 8-84 Selecting Make Widget wizard action option
The Properties view area displays actions that are available for creating the new widget. Step 4 In the Secondary view area, select one or more actions from the list, as shown in Figure 8-85. Figure 8-85 Selecting Make Widget action properties
Step 5
Click the OK button to complete the wizard. The Make Widget wizard disappears and the new property widgets appear on the Px Editor canvas as shown in Figure 8-81. Figure 8-86 Completed action widgets on Px Editor canvas
842
Step 6
Toggle the view using the View/Edit Mode toolbar icon to display the widgets in the Px Viewer, as shown in Figure 8-82. Figure 8-87 Using completed action widgets in Px Viewer
The Make Widget wizard displays, as shown in Figure 8-89. Note: The ORD for the selected component displays in the ORD area. Double-click the ORD to browse for a different component, if desired. Step 3 Select the Time Plot option in the Source options list as shown in Figure 8-89. Figure 8-89 Selecting Make Widget wizard Time Plot option
The Secondary view area displays Minimum Value and Maximum Value fields. Step 4 In the Secondary view area enter the desired minimum and maximum values that you want to display in the Time Plot widget, as shown in Figure 8-90.
843
Figure 8-90
Step 5
Click the OK button to complete the wizard. The Make Widget wizard disappears and the new Time Plot widget appears on the Px Editor canvas as shown in Figure 8-91. Figure 8-91 Completed Time Plot widget on Px Editor canvas
Step 6
Edit the widget, if desired, by doing one or both of the following: Resize the widget, as desired to allow the plot to display completely. Edit the Time Plot widget properties (header, lines, fonts, and so on) using the Widget Tree and Properties palettes, as shown in Figure 8-92. Figure 8-92 Editing Time Plot widget properties in the Px Editor
Step 7
Toggle the view using the View/Edit Mode toolbar icon to display the widgets in the Px Viewer, as shown in Figure 8-93.
844
Figure 8-93
The Make Widget wizard displays, as shown in Figure 8-95. Note: The ORD for the selected component displays in the ORD area. Double-click the ORD to browse for a different component, if desired. Step 3 Select the Chart option in the Source options list as shown in Figure 8-95. Figure 8-95 Selecting the Make Widget wizard chart option
The Secondary view area displays fields that allow you to choose the data for the x and y axes of the chart and the Time Range. Step 4 In the Secondary view area enter the value source for column 0 and for column 1. Also, choose the desired range from the time range option list, as shown in Figure 8-96.
845
Figure 8-96
Step 5
Click the OK button to complete the wizard. The Make Widget wizard disappears and the new Chart widget appears on the Px Editor canvas as shown in Figure 8-97. Figure 8-97 Completed Chart widget on Px Editor canvas
Step 6
Edit the widget, if desired, by doing one or both of the following: Resize the widget, as desired to allow the plot to display completely. Edit the Chart widget properties (header, lines, fonts, and so on) using the Widget Tree and Properties palettes, as shown in Figure 8-98.
846
Figure 8-98
Step 7
Toggle the view using the View/Edit Mode toolbar icon to display the Chart in the Px Viewer, as shown in Figure 8-99. Figure 8-99 Completed Chart widget in Px Viewer
847
Figure 8-101 shows three Nav files in the nav folder. Notice that the Nav side bar displays a tree hierarchy of links directly under the station node. Each node of the tree has a context-appropriate icon to help the user recognize the target link of each node in the tree. You can specify icons for the tree nodes, as described in About the Nav File Editor on page 8-49. Figure 8-101 Creating a new Nav file
You can edit these nodes directly in the Text Editor or you can use the tools provided in the Nav File Editor (refer to Nav File Editor on page 8-49). Figure 8-102 Default nav file with home node only
Figure 8-103 shows what the elements in your nav file look like (when viewed in a text editor) once you add a few nodes to your tree.
848
Figure 8-104 shows what the elements in a nav file look like in the nav tree and in the Nav File Editor once you add a few nodes to your tree. Figure 8-104 Nav file viewed in nav tree and in Nav File Editor (Result Tree)
Source objects pane This resizable pane displays in the top half of the Nav File Editor when you toggle ON the Show Components button or the Show Files button on the control pane. The pane disappears when you toggle the buttons OFF. Refer to Nav File Editor source objects on page 8-50 for details about source objects. Result tree pane This pane displays whenever the Nav File Editor is open. The pane appears in the bottom half of the Nav File Editor when you toggle ON the Show Components button or the Show Files button on the control pane and fills the view (above the control buttons) when the Show Components button or the Show Files are toggled OFF. Refer to Nav File Editor result tree on page 8-50 for details about the result tree.
849
About the Nav File Editor Nav File Editor source objects
Controls These buttons are always displayed horizontally across the bottom of the Nav File Editor. Refer to Nav File Editor buttons on page 8-50 for more information about the functions of each Nav File Editor control button.
To use the source objects pane for creating the nav file structure, you drag components or files from the source objects pane down to desired tree location in the result tree pane. Refer to Nav File Editor result tree on page 8-50 for details about the result tree pane.
Figure 8-108 shows an example of a source object being dragged to a specific location in the nav tree. The result tree shows the exact hierarchy of your nav tree and allows you to set the indent levels by where you drop the component. Figure 8-108 Dragging a source object to the result tree pane
850
Edit This button is available when you select a node in the Result Tree pane. It displays the Edit Node dialog box that allows you to edit the node name, target ORD, and icon. Delete This button deletes a selected node in the Result Tree pane. Move Up This button allows you to move a selected node (or nodes) up in the nav file tree hierarchy. Move Down This button allows you to move a selected node (or nodes) down in the nav file tree hierarchy. Show Components This button toggles on and off. Toggle this button ON to display all eligible components in the Source Objects pane. Show Files This button toggles on and off. Toggle this button ON to display all eligible Px files in the Source Objects pane.
About Reporting
The Reporting function in NiagaraAX helps you design, display, and deliver data to online views and to printed pages. Table layout features and report widgets are used in designing the reports. The report service and the report export feature allow you to schedule and distribute reports by email at any time. NiagaraAX Workbench views and services help you create and route reports. Figure 8-109 shows the primary views that facilitate the reporting process. Figure 8-109 Primary views used in creating and routing reports
The following topics describe the major concepts and views associated with reporting. About the reporting process This section describes the major points in the reporting process. Types of report components This section describes components that are located in the Reports module and available in the Reports palette. About the Grid Table view This section provides a description of the Grid Table view of the ComponentGrid. About the Grid Label Pane view This section provides a description of the Grid Label Pane view of the ComponentGrid. About the Grid Editor view This section provides a description of the Grid Editor view of the ComponentGrid.
851
Configure EmailRecipient component In the EmailRecipient property sheet, identify the desired recipients and email account to use for delivery of the report.
Types of report components include the following: ReportService Refer to About the ReportService component on page 8-52 for details. ExportSource Refer to About the ExportSource component on page 8-53 for details. EmailRecipient Refer to About the EmailRecipient component on page 8-53 for details. ComponentGrid Refer to About the ComponentGrid component on page 8-53 for details. ReportPane Refer to About the ReportPane component on page 8-54 for details. SectionHeader Refer to About the SectionHeader component on page 8-54 for details.
Note: For more information about using BFormat scripting, refer to the Engineering Note document, BFormat (Baja Format) Property Usage.
852
Schedule This property contains standard scheduling options that allow you to choose different options for timing the delivery of your report. It also displays a Last Trigger and Next Scheduled Trigger field. Source This property specifies the report display that you want to email. An arrow button located at the right end of the property display opens the Export Source Wizard diaIog box. This dialog box provides two steps that assist you in assigning source location and selecting a PDF export or an oBix driver export for your report.
EmailRecipient component properties include the following: To This is the email address of the email recipient (person who is to receive the emailed report). Cc This is the email address of anyone that is to receive a copy of the email (and attached report). Bcc This is the email address of anyone that should receive a copy of the email (and attached report) but whose name you do not want to display in the delivered email. Language This is the ISO 639 language code as two lower-case letters. For a list of codes, see the following: http://www.loc.gov/standards/iso639-2/langcodes.html Language This is the email address of the email recipient (person who is to receive the emailed report). Email Account This is an option list that allows you to choose the email account that you want to use for sending the report email.
853
The component grid has most of the standard Workbench views, such as Property Sheet view (shown in Figure 8-114), wire sheet, category sheet, slot sheet, and link sheet. Unique ComponentGrid views include the following: Grid Table This view displays your linked data in a typical Workbench table format. Refer to About the Grid Table view on page 8-55 for details. Grid Label pane This view displays your linked data in an tabular view that uses the GridLabelPane widget for displaying the report data. Refer to About the Grid Label Pane view on page 8-55 for details. Grid Editor This is the view that you use to specify row and column data for your report. Refer to About the Grid Editor view on page 8-57 for details.
Logo This property supports the linking of a graphic to the ReportPane component. When displayed in a Px page, or a Report, the graphic originates at the top left corner of the page. Type or browse to the desired graphic to set the file path in the property field. If no logo is used, the default value of null should be set in the property field. Page# When this property value is set to True, page numbering displays on each Report page. Timestamp When this property value is set to True, a timestamp is displayed in the bottom right corner of the report pages.
854
The table controls and options are similar those that are used in most Workbench table controls (see Table controls and options on page 2-17. When you use a GridTable view in a Px page, the editable table properties are accessed in the Properties dialog box, as shown in Figure 8-118 and listed below: Figure 8-118 Grid Table properties in Px Editor
Enabled When set to true, the table in the Px page interface is commandable using the popup menu. When this property is set to false, the display is still visible but not commandable. Visible When set to true, the table in the Px page interface is visible. When this property is set to false, the display is not visible. Ord This Ord is the link binding the display to the GridComponent that defines the table. Degrade Behavior These options specify how the table behaves when the binding communications are not available.
855
In the Px Editor view, you can use the GridLabelPane widget to layout the table on a Px page and edit the properties of the display properties, as shown in Figure 8-120. These properties allow you to change the font-type and color, as well as set the text alignment of the table cells, table heading, and first column properties. Figure 8-120 Grid Label properties in Px editor
GridLabelPane properties include the following: Cell Align This property provides options for setting the alignment of cell content (left, right, center, fill). Cell Brush This property specifies the color of the content (for example, font color) within the table cells. Enabled When set to true, the table in the Px page interface is commandable using the popup menu. When this property is set to false, the display is still visible but not commandable. First Column Align This property provides options for setting the alignment of cell content (left, right, center, fill) for the first column in the table. First Column Brush This property specifies the color of the content within the first column table cells. Header Align This property provides options for setting the alignment of cell content (left, right, center, fill) for the top row of the table (the table heading). Header Brush This property specifies the color of the content within the table heading cells Header Font This property allows you to set the font-type and font properties for the table heading. Layout This property allows you to specify the size and location of the table in relation to its parent (X, Y, coordinates, height and width). Alternatively, you can select a fill option to have the table expand to the limits of its parent container. Visible When set to true, the table in the Px page interface is visible. When this property is set to false, the display is not visible.
856
In the Grid Editor view, you can assign components to areas using the Add Column and Add Row commands from the popup menu or from the Workbench main menu. You can edit existing rows or columns by double-clicking on them to display the Edit Row or Edit Column dialog box, as shown in Figure 8-122. Columns area This area extends across the top of the Grid Editor view. Columns specify the slot path that identifies the point data that goes in the table cell. Add columns after you have defined a template row in the template area. Template area This area is just below the column area and displays as yellow, with a caution message when it is empty. The template row is used as a reference for picking columns, and therefore, there must be a template row defined before you can add and save a column in the Grid Editor view. Double-click on the template area to add a row using the Edit Template dialog box. If you add a row without first adding a Template Row, then the first row you add becomes the Template Row by default and automatically populates the template area. Row area The row area extends across the lower part of the Grid Editor view. Add rows to define any point data that goes in the table row. Rows work in conjuction with the columns to present data in a table format.
About the Report Edit Row and Edit Column dialog boxes
The Edit Row or Edit Column dialog boxes, shown in Figure 8-122, display when you add a new row or columnor when you choose to edit an existing row or column in the Grid Editor view.
857
The following fields are associated with these edit dialog boxes: Name This field is associated with the Edit Column dialog box. Type in a literal name to assign a display name or title to the column. Format This field is associated with the Edit Column dialog box. You can use literal text and BFormat scripting to assign a value to the column. Ord This field displays in both the Edit Column dialog box and the Edit Row. Designate a point by browsing to or typing the Ord of the component that holds the value that you want to display. Note: For assigning rows, you can drag and drop a point onto the Grid Editor view and the Ord automatically appears in the Ord field.
858
CHAPTER
About Security
This section explains security for any NiagaraAX station. Station security means access by a person using either Workbench or a web browser, or station access by another station. Security determines if a station connection is allowed, what can be accessed, and what operations can be performed. In the case of individual users, it also typically determines navigation options and overall appearance. A stations security is based upon users and object categories, with each users permissions within any category defined with specific permission levels. All configuration is stored in the station database, using services, components, and component views. Note: Niagara platform security is a different topic altogether. For more details, see the sections About a platform connection and Update Authentication in the Platform Guide. The following main sections provide more station security details: Security model overview UserService CategoryService
The following sections explain the various aspects of station security: Categories and security Users and security About User prototypes Permissions and security About permission levels UserService security notes About user audits Multi-station security notes Alarm ack permission notes
91
Each Category is really just an index (Category 1, Category 2, and so on), however, you typically name them to reflect some logical grouping. For example, you could have Lighting and Floor 3 categories, and assign some objects to both, and others to just one category (or neither of these). Note: By default, a new station (created using the New Station wizard) has no existing categories. However, category slots (Category 18) exist, with all objects defaulting to slot 1. As shown in Figure 9-3, you typically use the CategoryBrowser (default view of the CategoryService) to assign objects in the station to different categories. Every object must be assigned to at least one category. Figure 9-3 CategoryBrowser (CategoryService default view)
In the CategoryBrowser, you use an expandable tree to navigate to objects of interest, and click in table cells to add or remove category assignments. As an alternative to explicitly assigning one or more categories to an object, you can have it inherit the assigned categories of its parent. This affects appearance in the CategoryBrowser, where: Yellow rows are objects explicitly assigned into one or more categories. Dimmed rows represent objects inheriting their parents category or categories. Note: You can also review and assign components to categories individually at the component level, using any components CategorySheet view. Included is a convenience link back to the CategoryBrowser (CategoryService). See CategorySheet on page 9-23. By themselves, categories have little security meaning. Only when you set a users permissions do you reference categories. For more details on categories, see CategoryService on page 9-20 and Category caveats on page 9-22.
9-2
Figure 9-4
Typically, each user represents a specific person who uses Workbench or a web browser (or both) to connect to the station. Properties for any user include various settings, including several affecting mostly browser access, including Facets, Nav File, and Web Profile, as shown in Figure 9-5. Figure 9-5 User properties
However, a user can be for one or more remote NiagaraAX stations to use (for client connection), in order to share data and import/export histories and schedules. If a station-type user, in any remote NiagaraAX station, you reference this user when adding that NiagaraStation device (under its Fox Client Connection properties). Two important security aspects are built-in users, and the authentication method used by a station. About built-in users About authentication
For further details on the UserService, including descriptions of service properties and views, as well as properties of child (User) components, see UserService on page 9-12. Note: Starting in AX-3.3, the concept of network users is also important for any multi-station job. For an overview, see Network users on page 9-4.
9-3
User admin User admin is unique from all other users in that you cannot disable it, set it to expire, or assign permissions (it is always super user, meaning all permissions). This ensures every station always has at least one super user. When using the New Station Wizard tool to create a station, the wizard prompts for the password for the admin user. In a typical sandbox environment, you could simply leave the password fields blank (no password). However, never deploy any real station this waythat station would be vulnerable to anyone with only a passing knowledge of NiagaraAX. In general, it may be best to guard the password for the admin user from almost everyone, as well as use it infrequently. If desired, you can duplicate the admin user, then rename, assign password, reassign permissions, and so forth. If each person has their own (unique) user account, this also makes audit information more valuable. See About user audits on page 9-8 for more details. User guest User guest, if enabled, provides station access from a browser with no login required (no authentication). Initially, any browser pointed to the host sees home in the Nav file assigned to guest. The browser operator can then navigate in the normal fashion, providing that guest has read permissions for objects. Access of an object lacking guest permissions produces the login prompt, whereby the operator must login (as a non-guest user) to proceed. Note: Password assigned to guest (if any) is ignored when accessing the station via a browser. However, if opening the station in Workbench as user guest, password for guest is checked. By default, the guest user is disabled. Whenever guest is disabled, all station access requires authentication, meaning a browser user is always prompted for user name and password. In this case, station login as guest is not available (using either browser or Workbench).
About authentication
For a station connection attempt, the users login credentials (user name, password) are checked against those users under the stations UserService. This process is called authentication. The actual process (and authentication mechanism used) can differ, where the three authentication points are: Workbench-to-station (FoxService) Typically, the Workbench user is prompted for user name and password, such as whenever opening a station from the File menu in Workbench. Fox authentication is used, which is configurable via the FoxService (under the NiagaraNetwork) as either basic or digest. Digest (the default) is the preferred mechanism, since the password is never passed in clear text. However, if using LDAP, then basic authentication must be configured. Starting in AX-3.3, it is possible for a Workbench user to open one station from another station without being re-prompted for credentials. Such stations must be configured to use the same realm, and the user must also exist (with the identical credentials) in each station. See Workbench single sign-on (SSO) realm on page 9-11 for further details. HTTP browser-to-station (WebService) Again, the user is prompted for user name and password. The authentication mechanism used is specified under the stations WebService, as either cookie (the default), or basic. Cookie is required if you have users configured for browser-based Workbench (e.g., Basic Wb Web Profile), and/or are using the Domain-wide cookies authentication feature. Note: If the guest user is enabled, browser access can occur without login (authentication). Station-to-station (FoxService) A preconfigured user name and password is used (stored under NiagaraStation.clientConnection), which must correspond to an existing usertypically, with super user permissions. Again, Fox authentication is used, the same as with a Workbench to station connection. In general, it is recommended you leave authentication mechanisms (FoxService and WebService) at default settings, unless the station is configured for LDAP (LdapUserService).
Network users
Starting in AX-3.3, additions were made in the UserService (baja module) and NiagaraNetwork (niagaraDriver module) that permit centralized management of users in a multi-station system. This section provides an overview, summarizing the Challenge, User Service changes, and NiagaraNetwork changes.
Challenge
In any NiagaraAX station database, station users are represented as individual User components, located under the station's UserService. Typically, you use the User Manager view of this service to add, modify, and delete users. Historically you have always been able to manually copy user components from one
9-4
station to other stations. However, this user copy method does not provide change coordination. If an edit is needed for such a user (say, for that user's password), the same change has to be made to that user in each (separate) station. This has proven to be an inefficient process. Solution: AX-3.3 and later stations are now configurable to allow users to be added or modified (or deleted) in one station, and then have that user change automatically replicated (or synchronized) in other stations. The term network user applies to these users. Related are configurable user prototypes. When adding users, prototypes can be used in network user strategies between station. Note that while all these AX-3.3 and later station user changes are standard, they are also optionalaccomplished with additional slots on existing components. Default property values provide the same functionality as existed prior to AX-3.3. To provide this functionality, there are two main areas of change in anAX-3.3 and later station: User Service changes NiagaraNetwork changes
NiagaraNetwork changes
In AX-3.3 and later, each NiagaraStation under the station's NiagaraNetwork now has a Users device extension (in addition to other standard device extensions like Points, Histories, Schedules, and Alarms). The Users extension contains properties that enable/configure network user synchronization in and out of this station, in relation to the station with its NiagaraNetwork. There is no special view (apart from property sheet) on this Users device extension, nor is it a container for other components. Associated with this change is a new view on the parent NiagaraNetwork: the User Sync Manager. This tabular view provides an aggregate look at all Users device extensions (one for each NiagaraStation). Each row represents a station, and columns lets you see every station's Users properties for sync configuration, sync status, sync strategy, and so on. You can select any or all rows for an edit dialog to make configuration changes, or issue manual sync commands. For more details on Niagara Network changes, see: About the Users extension on page 4-57 About the User Sync Manager on page 4-60
9-5
Figure 9-6
The built-in admin account has all possible rights for every category (super user). When logged in as the admin user or another super user (or any user with admin-Write permissions on the UserService), you can assign super user rights to any other user, using the Super User checkbox. Or, you can use the Permissions dialog to include specific rights to only certain categories for that user, such as shown in Figure 9-6. To review and compare permissions among all users, the UserService provides a PermissionsBrowser view, as shown in Figure 9-7. Typically, you use this view to adjust permissions for any user. Figure 9-7 PermissionsBrowser (UserService view)
In the PermissionsBrowser, columns represent individual users defined in the station. An expandable tree lets you navigate to objects of interest to review current permissions, shown in table cells using abbreviations (for read, write, and invoke). Operator level is small case; admin level is UPPER case. Row coloring in the PermissionsBrowser provides the same data as in the CategoryBrowser, where: Yellow rows are objects explicitly assigned into one or more categories. Dimmed rows represent objects inheriting their parents category or categories. You can double-click in any column to access that users permissions map. See PermissionsBrowser on page 9-18 for more details.
9-6
If set (checked), the slot can be accessed by a user with a minimum of operator-read permissions. If cleared (unchecked), a user requires at least admin-Read permissions to access the slot. With admin-Write permissions, you can see and change slot flags from the slot sheet of any component, as shown in Figure 9-8. By default, most slots are admin level (out is typically operator level). Figure 9-8 Slot is admin level unless Operator flag is set
Permissions To control user access from a permission level, six permissions are derived, as follows: Operator-read Allows the user to view operator-level information. Operator-write Allows the user to modify operator-level information (if not read-only). Operator-invoke Allows the user to view and invoke operator-level operations (actions). Admin-Read Allows the user to view admin-level information. Admin-Write Allows the user to modify admin-level information (if not read-only). Admin-Invoke Allows the user to view and invoke admin-level operations (actions). When you assign a users permissions, higher-level permissions automatically include lower-level ones. For example, as shown in Figure 9-9 if you enable admin-level write (W), admin-level read (R) is automatically enabled, as well as operator-level read and write (r and w). Figure 9-9 Lower-level permissions include automatically
Ancestor permissions Often, you may wish to grant a user permissions to components using categories not included in their parent components, such that permissions to a components ancestor tree are not explicitly granted. In this case, the system automatically grants Operator-read access to all ancestor components in the component tree. Otherwise, a user would be unable to navigate to target components in the Nav tree. This automatic ancestor permission assignment is done by the station periodically, but you can force it at any time with a right-click Update action on the CategoryService.
File permissions
Largely, permissions given to categories used by files and folders are operator-keyed, as follows: Files Files require operator-read access to view, and operator-write permissions for editing (if applicable). For instance, a user with operator-write permissions to an .html file can modify it using the Text File Editor in Workbench. Folders Folders (directories) require operator-read access to list and to copy child files, and operator-write access to create new (or delete existing) child files. A few views for files require admin-write permissions to access, such as the Nav File Editor for a nav file. There are also other special case file permissions.
9-7
Special case file permissions These additional rules apply to file system access from station access: Files in any NiagaraAX module are automatically granted operator-read. If a user is not a super user, all access outside of the stations home directory is denied.
History permissions
Currently, histories require only operator-read permission to access all available views (e.g. History Chart, Collection Table, History Table). In addition, the ability to rename a history is included.
AuditHistoryService configuration
AuditHistoryService configuration is simplified by having only the following writable properties: Enabled Either true (default) or false (disabled). Typically, you always leave this enabled. Capacity Either: Record Count nnn records (default is 500) or Unlimited. Typically, unlimited is recommended only for Supervisor stations, while JACE stations are set to some finite count. If a JACE station, the resulting AuditHistory is typically exported to a Supervisor station for archives. Full Policy Either Roll (default) or Stop. In almost all cases, you leave full policy at roll to ensure latest user actions are recorded.
AuditHistory content
The AuditHistory records user-initiated changes to property values, invoked actions, as well as any slots that are added, deleted, reordered, and renamed. Each record appears as a row that includes the timestamp of the change and the operation, plus other details including the responsible station user. Using standard history views, you can review and resort data columns in the AuditHistory as needed to analyze user activity. Figure 9-10 shows an AuditHistory displayed in the HistoryTable view. In this view (as shown), you can double-click any row for a popup dialog displaying record details.
NiagaraAX-3.x User Guide
9-8
Figure 9-10
Standard fields in an AuditHistory record include the following: Timestamp Timestamp of when the operation on the slot became effective. Operation Type of user operation, which may include one of the following: Added Added a slot (typically a point or extension) Changed Changed a property (slot) value Invoked Issued a command to an action slot Removed Removed a slot (typically a point or extension) Reordered Reordered one or more slots Target Path to the container of affected slot, relative to the station root. Slot Name Name of the affected slot. Old Value Value of slot before a change. Value Value of slot after the change. User Name User name that initiated the operation.
9-9
Figure 9-11
Specific to a security (station login-related) event, fields in a record are used as follows: Timestamp Timestamp of when the login/logout action occurred. Operation The security action that occurred, as either Login, Logout, or Login Failure. Target Depending on if a Workbench (fox) or browser (WebService) user connection, the path as either: Workbench - Path to fox session, usually as /Drivers/NiagaraNetwork/FoxService/etc. Browser - Path to the web service were validated, typically as /Services/WebService Slot Name The remote host that attempted login/logout, typically by IP address. Old Value Not used. Value Not used unless the Operation is Login Failure, in which case the value indicates the number of consecutive failed login attempts (15). After 5 consecutive failed login attempts, if lockout is enabled, the user is locked out for some period of time. Subsequent login attempts during that period are not audited. Also see Lockout notes on page 9-14. User Name User name supplied during the attempted login/logout.
9-10
If you copy categories from station to station, the index property in each copied category is reset to 0, and the category has a disabled status (until you reassign the index). Often, a user that has already logged into a station is re-challenged for login (authentication) again. This can happen when navigating from one station to another station. Depending on whether a browser user or a (full) Workbench user, it may be possible to configure stations such that a user needs to be authenticated only once (upon initial station connection). If a browser user (Web Workbench or Hx access), and Niagara hosts are installed on a DNS domain, you can configure stations such that browser users are authenticated only once. See Domain-wide cookies authentication. If a Workbench user, and the Niagara hosts are running AX-3.3 or later, you can configure stations such that the user is authenticated only once. See Workbench single sign-on (SSO) realm.
Now, if a user points his or her browser to this Niagara host using the full DNS name (for example: supervisor.metropolis.net), after station login, they can navigate using links to other stations without need for login. The same credentials used in the initial login are used in other station connections.
9-11
Open the property sheet of the root-level Config component in the station. In the Sys Info property, click the Facets control (>>) for the Config Facets editor. The Config Facets editor appears. Add a key named realms of type String, with the string value (whatever desired) for the realm name. To do this in the Config Facets dialog: 1. 2. 3. 4. Click the Add control. In the row for the added facet, double-click the word key and type (replace) as realms. In that same facet row, ensure that Type is String, and click in the Value field and type the name of the realm. Note this realm value has no literal meaning, but must be the same for all stations. Click OK to add the facet. See Figure 9-13 for an example of the realm shazam being added.
Step 4
Repeat this procedure for every station in the job. Figure 9-13 Add key named realms in Facets for Sys Info property of the root-level Config component
Add facet to root-level Config component
Now, if a user opens a station in Workbench (enters their credentials), they can navigate using links to other stations in this realm without need for login. The same credentials used in the initial login are used in other Workbench station connections.
UserService
The UserService is found under a stations Services container. You use a stations UserService to add, edit, and delete users. If you have already configured categories in the station, you can use it to assign users permissions as well. Note: For an overview of station security and users, see Security model overview on page 9-1 and Users and security on page 9-2.
NiagaraAX-3.x User Guide
9-12
Before working with users, you should review the UserService properties. After setting properties as needed in the service, the following UserService views are your primary access to users: UserManager to add Users PermissionsBrowser Also see UserService security notes on page 9-8.
UserService properties
Right-click the UserService and choose Views > Property Sheet, as shown in Figure 9-14. Figure 9-14 UserManager property sheet access
UserService configuration properties are described as follows: Require Strong Passwords Either false (default) or true. If enabled (true), any future user additions (or edits of a users password) will require entry of a strong password, otherwise an error popup dialog results. A strong password must meet these requirements: Minimum of 8 characters At least 1 character is a numeral (09) or special, such as !, @, #, $, or %. Lock Out Enabled Either false or true (default). If enabled (true), then a number of consecutive authentication failures will temporarily lock out login access to that user account, for the duration of the lock out period (next property). Using lock out makes it difficult to automate guessing of passwords. Note: Each user also has a Clear Lock Out action. See Lockout notes on page 9-14. Lock Out Period Default is 10 seconds, adjustable to any duration in hours, minutes, seconds. If lock out is enabled, then this is the period of time a user account is locked out before being reset. While locked out, any login attempt (even a valid one) will be unsuccessful.
UserManager
Double-click the UserService for the UserManager (default view), as shown in Figure 9-15. Figure 9-15 UserManager is table based view
Rows in the UserManager table represent existing users, where you can edit by either double-clicking a single user, or clicking to select and then clicking the Edit button.
9-13
UserService UserManager
Note: As in other table-based manager views, you can select multiple rows (users) for edit. This can be useful for a mass change to a property like Facets or Web Profile. However, be careful when doing multiple user edits of things like Permissions and Passwords. See subsections Lockout notes on page 9-14 and Network user notes (AX-3.3 and later) on page 9-15 for additional information about working in a stations User Manager. To add a new user, click the New button. This produces the New User dialog, as shown in Figure 9-16. Figure 9-16 New (user) dialog
You can create multiple users by typing in a number in Number to Add. When you click OK, the Add dialog includes that number of user rows in the top table (Figure 9-17). Figure 9-17 Adding multiple users
As needed, click to highlight a single user row before entering unique user properties such as User Name, Full Name, Permissions, and so on. For properties you wish to enter identically for all users (for example, Facets), hold down Shift and click to select all user rows, then enter property value. Note: For a listing of all the User properties, see User on page 9-16. When you click OK, the user(s) are added with the property values you entered. Users appear as rows in the UserManager, and as child components under the UserService container.
Lockout notes
If you have lockout enabled in the UserService, a user will be locked out after several unsuccessful attempts to login (login using their user name, but with incorrect password). A locked-out user is indicated with a red row in the UserManager, as shown in Figure 9-18. Figure 9-18 Locked out user is indicated by red
Note: The User component that represents each user has a boolean Lock Out slot that provides read-only status of whether that user account is currently locked out (true) or not (false). If needed, you can link it to other logic in the station. If locked out, a user will be unable to login into the station until the lockout period expires, as specified in the UserService. Also during a lockout, any attempted login activity for that user will not appear in the stations AuditHistory (a feature added starting in AX-3.3, see AuditHistory station login activities (AX3.3 and later) on page 9-9). After the lockout period expires, the user displays in the UserManager as normal.
9-14
UserService UserManager
As administrator, be aware that each user has an action Clear Lock Out, that you can invoke to clear any lockout in progress. Access this command with a right-click on a user, either selected in the Nav tree or in the UserManager, as shown in Figure 9-19. Figure 9-19 Clear lockout action for any user
In addition, note that the property sheet for a proxied user includes additional properties (near the bottom) useful in determining the original source of the user. See Figure 9-21. Figure 9-21 Special status properties in property sheet for proxied network user
Version -- Source station name: (last sync timestamp in milliseconds). This information is used in
9-15
UserService User
the synchronization process. syncExt (containing Source Station) -- Shows the ord to the NiagaraStation that proxies the station with the source User.
User
All available user properties, as seen in the New or Edit user dialog (Figure 9-5 on page 3), are described as follows: Name Unique name of the user, as known to the station. Used in login credentials (along with Password), also appears in audits of changes made by the user (see About user audits on page 9-8). Full Name Full formal name of the user, or any descriptive name needed. Enabled Either true (default) or false. Determines if the user account is operational. If disabled (false), login attempts are blocked. By default, user guest is disabled. Expiration Either Never Expires (default) or Expires on <date>. After the expiration date, login attempts are blocked. Permissions Either Super User (all permissions) or a specific permissions map (click >> control). Permissions are category-based. For an overview, see Permissions and security on page 9-5 and also About permission levels on page 9-6. Network User (AX-3.3 or later only, see the next section Network user related properties). Prototype Name (AX-3.3 or later only, see the next section Network user related properties). Language To specify a lexicon (typically two character language code, such as fr or de), as needed for language support or other customizing. Password Password entered by user in login credentials (along with user Name). Two entry fields are provided, both entries must match. Can be any combination of alphanumeric characters. Note: If the UserService is configured for strong passwords (property Require Strong Passwords), the password must be a minimum of 8 characters, with at least one character being a numeral (09) or any other special character, such as !, @, #, $, or %. Facets Includes two separate settings, as follows: Time Format How timestamps are formatted in property sheets, and so on. The default time format is sourced from Baja lexicon. Unit Conversion Selectable as either None (default), Metric, or English. Primarily affects value display of out slots on control points. Nav File To specify a Nav file that provides custom navigation for the user, defining locator bar content and home page. Click the folder control for a File Chooser dialog to navigate to the location of the stations .nav files (by convention, a Nav folder under the station directory). For more details, see About the Nav file on page 8-47. Note: If guest is enabled, all browser connections to the host start using this Nav file. Web Profile Includes three separate settings: two for station auto logoff, and one to specify the users expected type and level of HTTP browser access. The web profile settings are as follows: Auto Logoff Enabled Either true (default) or false. If true, a browser-connected user will be automatically disconnected from the station after the auto logoff period expires, providing that no user activity was detected during that time (changing views, expanding/contracting containers, and so on). If disabled (false), this browser-connected user is never automatically disconnected. Auto Logoff Period Any number of hours, minutes, seconds needed (default is 15 minutes). Specifies the time period used by the auto logoff routine (inactive user time), if auto logoff is enabled for the user. Type
NiagaraAX-3.x User Guide
9-16
UserService User
Specifies the users expected type and level of HTTP browser access. For more details on profile types, see About Web Profiles on page 8-26. Web Profile Type is one of the following: Basic Hx Profile Lowest level and simplest browser requirements (browser with Java plug-in not required). Provides locator bar, ability to access properties and graphics (Px views). Default Hx Profile Provides more navigation controls with simple browser requirements (browser with Java plug-in not required). Provides locator bar, access to property sheets and graphics (Px views), plus a view selector. Access to slot sheets is included, as well as PDF creation from property sheets or graphics. Basic Wb Web Profile Requires browser to have Java plug-in. Provides Workbench station access within a browser (Fox connection), but without top menu bar or ability for side bars. View access is limited to property sheets and Px views. Default Wb Web Profile Requires browser to have Java plug-in. Allows nearly full Workbench station access within a browser (Fox connection), including top menu bar and side bars (palettes and Nav tree). View access includes property sheets, wire sheets, category sheets, slot sheets, link sheets and Px views. Note: If the same user might need to access the station differently, that is from a simple browser as well as from Workbench or a browser with Java plug-in support, you should create two user accounts for that person, each with a different Web Profile. For example, create a user with Default Wb Web Profile and another user with Default Hx Profile. The simplest way to do this is to duplicate that user, then change the Web Profile type. That person will need to login differently (unique user name) according to their access method.
These properties are described as follows: Network User A boolean that specifies whether this user can be made available in other stations. When using the UserManager to add new users, this defaults to false. Leave or set to false whenever you wish this user to be local to this particular station only. For an overview of this feature, see Network users on page 9-4. Prototype Name Pick from a selection list showing available local User Prototypes. Blank or no selection is effectively the same as the frozen Default Prototype. Currently, this property setting matters only if the Network User property is true. See About User prototypes on page 9-19 for related information.
9-17
UserService PermissionsBrowser
PermissionsBrowser
From the UserManager, use the view selector to select the PermissionsBrowser, as shown in Figure 9-7 on page 6. By default, the PermissionsBrowser shows the three object types collapsed into just three rows in the tree: station (components), file, and history. As needed, expand and contract the object tree to find objects that have been explicitly assigned into one or more categories, and scroll across to see each users permissions for those objects. Again, displayed row color provides the same data as in the CategoryBrowser, where: Yellow rows are objects explicitly assigned into one or more categories. Dimmed rows represent objects inheriting their parents category or categories. You can also use Show Configured to automatically fully expand the tree.
Show Configured
Select Category Browser > Show Configured from the menu, or click the icon, as shown in Figure 9-23. The PermissionsBrowser tree expands to show all explicitly assigned objects. Figure 9-23 Show Configured in PermissionsBrowser
In each cell intersecting a user (column) and object (row), that users permissions are shown with abbreviationssee Permissions abbreviations. For any user, you can access permissions.
Permissions abbreviations
Permissions for each object are shown in each of the user columns using abbreviations (Figure 9-23). Figure 9-24 Permission abbreviations
Full permissions are rwiRWI, where the capital RWI is for admin-level Read, Write, Invoke. It is possible for a user to have no permissions for some objects (blank cell), if those objects are assigned to a category the user does not even have operator read r permissions for. See About permission levels on page 96 for more details.
Access permissions
Double-click anywhere in a column to access a users permissions. This produces the same Permissions dialog as from the users properties, only user name shows in the window title bar (Figure 9-25).
9-18
Figure 9-25
Note: If you double-click on any user with super user rights, a popup warning reminds you that you cannot modify permissions, as shown in Figure 9-26. Figure 9-26 Super user permissions warning
If you could see the permission map for any super user, it would simply be all possible permissions checked for all possible categories (rows). As shown in Figure 9-27, remember to Save after making any user permissions changes. Figure 9-27 Save user permissions changes
See the following about User Prototypes in AX-3.3 and later station's UserService. Properties of User Prototypes Naming User Prototypes
9-19
Prototypes you add, for example by duplicating and renaming. Currently, non-default user prototypes are only used when synchronizing network users between different stations. In this case, (identically-named) prototypes in both the source station and receiving station can be used in a sync strategy of Prototype Required. Default Prototype Among User Prototypes, the Default Prototype is important in any station, as it is always the default source of User property values whenever you use the User Manager view of a station's UserService to add a New user to the station. In this regard, all of its properties can be considered importantwith one exception: Prototype Name. This property applies only when adding a User (not a user prototype), and may be hidden in user prototypes in some future build. Additionally, in a multi-station job where you are using a user sync strategy of Use Default Prototype, the default prototype (in each station receiving network users) specifies the local properties that override the received properties of any network user. Note that only 3 properties are local override types: Permissions, Nav File, and Web Profile. See the next section for more details. Additional (non-default) User Prototypes The importance of properties in an additional (nondefault) User Prototypes vary among stations that are either sending or receiving network users: In a user-sending station (e.g. AxSupervisor) non-default user prototypes are important only in name, where you can simply duplicate the Default Prototype and rename each duplicate uniquely. Property values in these replicated prototypes are not used in any userswhether a user is local only to the AxSupervisor, or specified as a network user with this Prototype Name. In a user-receiving station (e.g. JACE) non-default user prototypes are important both in name, where matching prototype names in user sending stations provide sync strategy options, and also in three local override properties, described below. Permissions - (either a permissions matrix of local categories and rights, or a Super User) Nav File - (referencing a specific nav file under the local station's file structure) Web Profile - (using the auto-logoff enable/period time and profile type local to the station) When a network user is added or modified in a user sending station, the three properties above are used in the user receiving station, instead of those same properties in the source network user.
CategoryService
The CategoryService is found under a stations Services container. You use a stations CategoryService to add categories and assign objects (components, files, and histories) to those categories. Note: For an overview of station security including categories, see Security model overview on page 9-1, and Categories and security on page 9-2. Apart from being the container for child categories, the CategoryService has only two slots: Update Time A property that sets the interval at which ancestor permissions are automatically assigned. Default value is one (1) minute. If assigned a zero value, this feature is disabled. Update An action to manually force ancestor permissions to be assigned to objects in the station. Note: Typically, you leave the services update time at default, and use the update action only if needed while testing (while actively assigning categories and/or changing permissions). The two views of the CategoryService are: CategoryManager CategoryBrowser The CategoryBrowser is the default view, and typically where you spend more time after initially creating categories.
9-20
CategoryService CategoryManager
Note: In the case of components, you can also make category assignments directly from any components CategorySheet view. See CategorySheet on page 9-23.
CategoryManager
You use the CategoryManager to add, edit, or delete categories. As shown in Figure 9-2 on page 2, you can access the CategoryManager using the view selector from any CategoryService view. Figure 9-29 CategoryManager is table based view
Rows in the CategoryManager table (Figure 9-29) represent existing categories, where you can edit by double-clicking one. Typically, you edit only the category name, to clarify some logical grouping. All categories must have both a unique name and index. To add a new category, click the New button. This produces the New dialog, as shown in Figure 9-30. Figure 9-30 New (category) dialog
You can create multiple categories by typing in a number in Number to Add. When you click OK, the Add dialog includes that number of category rows in the top table (Figure 9-31). Figure 9-31 Adding multiple categories
As needed, click to highlight a single category row before entering a unique Name. For a listing of all the category properties, see Category properties on page 9-21. When you click OK, the categories are added with the names you entered, and appear as rows in the CategoryManager and as child components under the CategoryService container. Note: While in theory unlimited categories could be created, in general it is recommended to limit the number of categories to as few logical divisions as needed. Included are performance reasons, as well as other considerations. See Category caveats on page 9-22.
Category properties
As shown in the New or Edit dialog (Figure 9-31), there are only 2 properties for a category, as follows: Index Unique index number for the category, as it is known to the station. Name Any descriptive name needed, typically to reflect some logical grouping.
9-21
CategoryService CategoryBrowser
Category caveats
Please note the following about using categories: Performance-wise, too many categories can consume excess station memory, as each object must maintain a bitmap for category membership. With the default 8 categories, this is only 1 byte, but increments another byte for each additional 8 categories added (916, then 1724, and so on). Therefore, you should limit categories to the fewest needed, and keep them indexed contiguously. If you delete a category (using the CategoryManager), you may notice it still appears listed in users permission maps, with default Category n name instead of its former user-assigned name. This underscores that categories are simply indices to the station. Each category Name is simply metadata (data about data). Moreover, when you assign an component to one or more categories (e.g. using the CategoryBrowser), that components category bitmap is updatedas part of its configuration. If you copy that component to another station or save it in a bog for reuse, please note that its category bitmap (to category indices) is included.
CategoryBrowser
The CategoryBrowser is the default view of the CategoryService. By default, this view shows the three object types collapsed into just three rows in the tree: station (components), file, and history. In this view, the columns represent categories in the station. Again, displayed row color provides the same data as in the PermissionsBrowser, where: Yellow rows are objects explicitly assigned into one or more categories. Dimmed rows represent objects inheriting their parents category or categories. To automatically fully expand the tree, use Show Configured.
Show Configured
Select Category Browser > Show Configured from the menu, or click the icon, as shown in Figure 9-23. The tree expands to show all objects explicitly assigned into one or more categories. Figure 9-32 Show Configured in CategoryBrowser
Objects in dimmed rows have a check mark in the first column (Inherit), meaning that they inherit the category or categories of their parent container. As needed, in any object row, click either: In any category column to explicitly assign an object to a category, or again (toggle) to remove the object from that category. In the Inherit column to return category assignments to match the objects parent. Note: With the exception of the three root objects (station, files, history), each object must either belong to at least one category or inherit its parents category assignments. The three root objects cannot inheritthey must belong to one or more categories. As shown in Figure 9-33, remember to Save after making any needed category assignment changes.
9-22
CategoryService CategorySheet
Figure 9-33
CategorySheet
Included for every component in the station database is a CategorySheet view, which you can access using the right-click View menu (Figure 9-34) or by using the view selector. Figure 9-34 Accessing CategorySheet view
This view lists all categories in the station, and shows a check mark beside any that are assigned to this component. In addition, the views right side offers various controls, as follows: Inherit (checkbox) Click to toggle. While checked, this component inherits category assignments from its parent component. While cleared, you can make explicit category assignments for this component. Select All Effective if Inherit is cleared. Click to assign component to all categories in the station. Deselect All Effective if Inherit is cleared. Click to remove all category assignments for this component. Note: Either click again to assign the component to at least one category, or else click Inherit. Otherwise, you receive an error when you try to Save (must be assigned to one category). Category Service Click to go to the CategoryBrowser view. See CategoryBrowser on page 9-22. Note: Remember to click Save after making any needed category assignment changes.
9-23
CategoryService CategorySheet
9-24
CHAPTER
About Scheduling
10
Schedules in NiagaraAX are done using schedule components, as found in the schedule palette (Figure 10-1). You place these components in a station, configure, and link as needed to provide scheduling control of other components. Each schedule component has a scheduler view, which you use to define events. Figure 10-1 schedule palette
The following main sections provide more details: About the scheduling model About weekly schedules About calendar schedules (holidays) About trigger schedules About ScheduleSelector components Using schedules (schedule-related tasks)
101
Schedule selectors A TriggerSchedule component is used to schedule the firing of topics. With a set of pre-configured schedules and the ScheduleSelector component, you can simply choose from a list of valid schedules to setup or change the schedule of a device. For more details, see About trigger schedules on page 10-18.
Refresh
The Refresh button is always available. When you click Refresh, one of two things happens: If the Save button is not available (no unsaved changes), clicking it re-synchronizes the view with the components current configuration. If the Save button is available (unsaved changes), clicking it produces a dialog (Figure 10-2). Refresh confirmation if unsaved changes
Figure 10-2
Your refresh confirmation dialog choices are as follows: Yes Save all changes made in the view since last save. Equivalent to clicking Save. No Clear all changes made in the view since last save (effective reset). Cancel Cancels refresh, all unsaved changes remain as unsaved.
Save
The Save button is available only if you have made unsaved changes in the components scheduler. Clicking it downloads your changes to the schedule components configuration. Immediately following, the Save button is unavailable again. Note: For weekly schedules (tabbed Weekly Scheduler view), you typically save while working in each tab, even though any save applies to changes made on all tabs.
10-2
10-3
10-4
Each component has an Out slot and an Out Source slot. In addition, Next Time and Next Value slots are available. By default, all of these slots are pinned on the components shape on the wire sheet, as shown in Figure 10-3. Upon any output change, all of these slots are updated.
Out slot
A schedules output value is determined by the following, in highest-to-lowest priority: To any non-null value at its In slot (if linked) This value is immediately passed to its output. Otherwise (if null), processing continues. 2. If the schedule is not effective, the output goes to the default output value. If the schedule is effective, the output goes to the (highest priority) active special event (if any). 3. To the active weekly schedule event (if any). 4. To the default output value. For more details on effective schedules, see Effective Period on page 10-11. 1.
There are four tabs: Weekly Schedule, Special Events, Properties, and Summary, as described ahead. Note: Buttons Refresh and Save apply to all tabs in the Scheduler view (not just the one displayed).
Weekly Schedule
Use this tab in the Weekly Scheduler view to enter regular schedule events, that is normal schedule events that repeat from week to week, based on the day of the week and the time of day. By default, any existing events appear as greenish blocks, while unscheduled (default output) time appears in white.
NiagaraAX-3.x User Guide
10-5
Use is mostly straightforward, to add a new event simply click in a day at the approximate event start time, and drag down to define the start and finish time (Figure 10-5). The event remains selected (by default, dark blue) when you release the mouse button. Note: If an EnumSchedule, you should define its range facet from the Schedulers Properties tab before adding events. See Facets on page 10-11 for more details. Figure 10-5 Click and drag to enter weekly events
As needed, click again and drag on the events top or bottom to change its start or finish time (in broad increments). Additional details about the Weekly Schedule tab are as follows: Event time tuning Output value Right-click menus
Event time tuning With any event selected, fine tune its start and finish time using the controls, selecting the hours portion or minutes portion (Figure 10-6). Or, click and type values in directly. Figure 10-6 Define start and finish time
Note: For any event, start time is inclusive, and the event extends to (but is exclusive of ) the end time. In other words, there is no output blip between adjacent events, even if across days. For example, if a Monday event ends at midnight, then a Tuesday event starts at midnight, the schedule output is continuous (providing both events have the same Output value). Output value For any event, you can select the null checkbox (the schedules calculated value is null for that event). However, you typically select or type a value instead, as follows: If a Boolean or EnumSchedule select the event value in the output field, see Figure 10-7, left. Note: If an EnumSchedule, first specify its facets (on Properties tab) before entering values. This allows selection of possible values. If a NumericSchedule or StringSchedule, you type the value in the output field, then press Enter to register it in the event block, as shown in Figure 10-7, right.
10-6
Figure 10-7
Right-click menus Right-click in the weekly schedule area for an event menu. If you have any event selected, this menu provides the most commands, as shown in Figure 10-8. Figure 10-8 Right-click menu with event selected
Event menu options are straightforward, and may include the following: Delete Event Deletes the selected event. Paste Day Appears only if copy day option was used first. Copies all events into selected day. All Day Event Makes currently selected (or last entered) event extend to entire day. Apply M-F Copies all events in the selected day to Mon, Tue, Wed, Thu, and Fri (and overwrites any existing events on those days). Copy Day Copies all events in the selected day, to use with paste day option. Clear Day Clears all events in the selected day. Clear Week Clears all events in the entire weekly schedule.
Special Events
Use this Weekly Scheduler view tab to enter all exceptions to the schedules weekly schedule, broadly called special events. For general information, see Schedule special events on page 10-3. As shown in Figure 10-9, existing special events (if any) are listed in the table by name and summary. When you select a special event, its day(s) of occurrence are highlighted in the monthly calendars at the top of the view, and its associated event actions are displayed in the right-side column. Figure 10-9 Special Events tab in weekly Scheduler
10-7
Additional details about the Special Events tab are as follows: Adding special events Event times and output values Special event priorities Right-click menus and other controls
Adding special events Click the Add button to add a new special event. An Add dialog appears, as shown in Figure 10-10. Figure 10-10 Special Events Add dialog
Dialog options are described as follows: Name Your descriptive name for special event, perhaps Christmas_Break or Half_Day. The default value is simply Event. You can change this later, if needed. Type Determines selection criteria for day or days, with the following choices: Date (default) By various combinations of weekday, numerical date, month or month combinations, and year. Date Range By start and end range, using for each a combination of day, month, year. Week and Day By combination of day of week, week in month, month. Custom By various combinations of day, month, weekdays, and year. Reference By reference to a specific CalendarSchedule component in the station. For details on most Type selections, see Calendar day selections on page 10-15. If you select type Reference, a second Add dialog appears, as shown in Figure 10-11. It lists all CalendarSchedules (Calendars) available in the station, by slot path. Select any one for the day(s) portion of this special event. Figure 10-11 Reference special event Add dialog
After you have a name and type selected (and defined as needed), click OK to add it to this schedules special events. It remains selected for further editing, except for type. Event times and output values A newly-created special event has no events defined. With the special event selected, click in the right-side events column and enter events as necessary. Start, finish, and output controls work the same as in the Weekly Schedule tab. See Event time tuning on page 10-6 and Output value on page 10-6 for details. You can also right-click in the column for an event menu, as shown in Figure 10-12. This is useful to add an all-day event or set the entire day to the schedules default value.
10-8
Note: You must specify events for any special event to occur. Where nothing is scheduled, the special event relinquishes control back to any lower-priority schedule events, and finally intermingles with the weekly schedule. To completely override the weekly schedule, configure a special event for the entire day. Special event priorities All special events take priority over regular weekly events. Among special events, you define relative priorities by the order of listing in the Special Events table, as follows: Highest priority is at top of list. Events in this special event, when active, always occur. Lowest priority is at bottom of list. Events occur only if not overlapped by other special events active during the same period. Change a special events priority by selecting it and using the priority arrow buttons (Figure 10-13). Figure 10-13 Change priority by listing order
Right-click menus and other controls Right-click in the special events table for a menu. If you have any special event selected, this menu provides the most commands, as shown in Figure 10-14. Figure 10-14 Right-click menu with event selected
Special event menu options are straightforward, and may include the following: Add Add a new special event (same as using Add button). Edit Edit day(s) selection criteria (but not changing special event type). Same as Edit button. Rename Rename selected special event (same as using Rename button). Priority (up) Move special event up in priority list (same as using Priority button). Priority (down) Move special event down in priority list (same as using Priority button). Delete Removes selected special event from the schedule component. Note: When you delete a special event, a confirmation dialog appears as shown in Figure 10-15.
NiagaraAX-3.x User Guide
10-9
Click Yes to delete the special event, or No to keep it. When you first access the Special Events tab, the current day is highlighted in the left-most calendar month at the top of the view. As needed, click on Next Month and Prev Month, or Next Page and Prev Page to traverse the calendar ahead or back in time. When you select a special event in the table, if it occurs in any currently displayed month, its associated day or days are highlighted as shown in Figure 10-16. Figure 10-16 Special event highlights in calendar block
Note: A special event must have at least one defined event action to be highlighted in a calendar. Return to the current calendar month and day by clicking the Today button.
Properties
As shown in Figure 10-17, this tab in Weekly Scheduler view is where you specify the schedules: Effective Period Default Output Facets Cleanup Special Events action
10-10
Effective Period By default, a weekly schedule added from the schedule palette is always effective. Whenever a schedule component is not effective, its output (Out slot) goes to its default output value, regardless of its weekly schedule or any special events. In most cases, you leave weekly schedules as always effective. However, if you have an application for a schedule effective only at certain times, use the start through end range fields to limit the effective period. When you Save the changes, only effective days in the calendar months are shown highlighted green. Default Output Whenever a schedule event (special or weekly) is not defined, the schedule components output (Out slot) is this value. The white area in listed events indicates where the default value is used and displays the current default value, as shown in Figure 10-18. The default output value is also used whenever the schedule is not effective. Figure 10-18 Default output is white area in schedule events
Note that null is an available choicedepending on control logic, this may be a valid choice. As copied from the schedule palette, the default Default Output varies by schedule type, as follows: BooleanSchedule false EnumSchedule null NumericSchedule null StringSchedule null
Facets The schedule components facets determine how its output value is formatted for display. For example, instead of true and false for a BooleanSchedule, you may need On and Off instead. Assigned facets appear in scheduler views when adding events, displaying summary data, and so on. For complete details, see About point facets on page 3-7. Note: Facets are especially important for EnumSchedules. You need to define range facets before you add weekly schedule events (in order to pick an events enumerated value). Range facets should match those used in any controlled (output-linked) EnumWritables. For related details, see Facets importance for Enum points on page 3-7. In the case of StringSchedules (as for all string-type components) facets have no application. Figure 10-19 shows output selections for an EnumSchedule with its range facet defined as lonworks:LonOccupancyEnum, one of the available frozen facets.
10-11
By default, facets for schedule components as copied from the schedule palette are as follows: BooleanSchedule trueText: true, falseText: false EnumSchedule range: <not defined> NumericSchedule units: (null), precision: 1 StringSchedule (not applicable) If true, one-time special events that have occurred (and will not be effective again) are automatically deleted. When a special event is deleted, a message is sent to the schedule log, and that special event no longer appears in the Special Events tab. If false, one-time special events are retained, even though they will not occur again.
Summary
The summary tab in the Weekly Scheduler view shows a summary listing of all scheduled events for any one selected day in a weekly schedule (Figure 10-20). Events may be from the normal weekly schedule, special events, or a combination of both. Unlike with other tabbed views, this one is read-only. Figure 10-20 Summary tab shows all events for any selected day
In the top calendar month area: Days with schedule events are shown highlighted green.
NiagaraAX-3.x User Guide
10-12
Days without schedule events (only default output) are shown in white. As needed, click on Next Month and Prev Month, or Next Page and Prev Page to traverse the calendar ahead or back in time. Click any day to see its events. Click Today (at top) to see the current days events. The table lists each events start timestamp, the schedules output value, and the event source. See Out Source slot on page 10-5 for how event source information appears.
CalendarSchedule Usage
Instead of linking CalendarSchedules, you typically reference them from the special events configuration of one or more weekly schedules. Each referenced CalendarSchedule defines the day portion of a special event. Then, you configure time-of-day events in each special event, as needed. Figure 10-21 Example referenced CalendarSchedules
For example, Figure 10-21 shows a BooleanSchedule and a portion of its special events tab, listing five special events. Three of these are Reference types, meaning their calendar day(s) are defined remotely in the configuration of the referenced CalendarSchedules. Although all components are shown here in the same container, quite often CalendarSchedules are located elsewhere in the station. CalendarSchedule usage by special event reference allows global changing of day definitions, where multiple weekly schedules can reference one or more CalendarSchedules. Any edit of a CalendarSchedule affects all weekly schedules containing a special event that references it.
10-13
As shown in Figure 10-22, existing calendar events (if any) are listed in the table by name and summary. When you select a calendar event, its day(s) of occurrence are highlighted in green in the monthly calendars at the top of the view. Additional Calendar Scheduler topics include: Adding calendar events Right-click menus and other controls
Dialog options are described as follows: Name Your descriptive name for the calendar days, perhaps Thanksgiving_Break or Cleaning_2. The default value is simply Event. You can change this later, if needed. Type Determines selection criteria for day or days, with the following choices: Date (default) By various combinations of weekday, numerical date, month or month combinations, and year. Date Range By start and end range, using for each a combination of day, month, year. Week and Day By combination of day of week, week in month, month. Custom By various combinations of day, month, weekdays, and year. For details on Type selections, see Calendar day selections on page 10-15. After you have a name and type selected (and defined as needed), click OK to add it to this calendars days. It remains selected for further editing, except for type.
10-14
Note: Priority selections (right-click menu or in bottom buttons) only affect the list order for events in a CalendarScheduletrue priority applies only to special events (in weekly schedules). Calendar event menu options are straightforward, and may include the following: Add Add a new calendar event (same as using Add button). Edit Edit day(s) selection criteria (but not changing calendar type). Same as Edit button. Rename Rename selected calendar event (same as using Rename button). Priority (up) Move calendar event up in display list (same as using Priority button). Priority (down) Move calendar event down in display list (same as using Priority button). Delete Removes selected calendar event from the schedule component. Note: When you delete a calendar event, a confirmation dialog appears as shown in Figure 10-25. Figure 10-25 Delete calendar event confirmation
Click Yes to delete the calendar entry, or No to keep it. When you first access the Calendar Scheduler, the current day is highlighted in the left-most calendar month at the top of the view. As needed, click on Next Month and Prev Month, or Next Page and Prev Page to traverse the calendar ahead or back in time. Return to the current calendar month and day by clicking the Today button.
10-15
Each criteria offers an any selection, in addition to a specific selection (weekday, day-of-month, monthof-year, year). In addition, the month-of-year criteria provides an every other month selection, as one of the following: Jan-Mar-May-Jul-Sep-Nov Feb-Apr-Jun-Aug-Oct-Dec Result of selections is by ANDing all criteria. For example, if you select weekday of Tuesday, day of month as 5, and remaining criteria any, the event is specified only on Tuesday, the fifth of any month in any year. If a month does not have Tuesday the fifth, then there is no event that month.
You can make only one selection in each criteria. Each criteria offers an any selection, in addition to a specific selection (day-of-month, month-of-year, year). In addition, the month-of-year criteria provides an every other month selection, as one of the following: Jan-Mar-May-Jul-Sep-Nov Feb-Apr-Jun-Aug-Oct-Dec In each date range, result is from ANDing the criteria. In addition, the start day can be after the end date. For example, as shown in Figure 10-27, the start day can be in December and the end date in March. This event occurs December, January and February.
You can make only one selection in each criteria. Each criteria offers an any selection, in addition to a specific selection (weekday, week-in-month, month-of-year). In addition, the following criteria offer additional selections, as follows: week-in-month: last 7 days month-of-year: Jan-Mar-May-Jul-Sep-Nov Feb-Apr-Jun-Aug-Oct-Dec The result is from ANDing the criteria. For example, as shown in Figure 10-28, if selections are for weekday as Monday, the month as February, and the week as 3, the event occurs only on the third Monday in February.
10-16
Unlike with other calendar types, you can make multiple selections within each criteria (except if you select any, which allows only that selection). To select multiples, first select something other than Any, then hold down the Ctrl or Shift key while you select more values. Each criteria offers an any selection, in addition to a specific selection. In addition, the following criteria offer additional selections, as follows: day-of-month: Last Day Last 7 Days week-in-month: Last 7 Days Within any criteria, selections are ORed. The overall result is from ANDing all criteria. For example, Figure 10-29 shows a custom selection for U.S. General Election Day, which must be configured as the first Tuesday after the first Monday in November.
10-17
This schedule is configured to simply fire once at midnight on the first day of every month. The trigger at the ResetElapsedActiveTime slot zeroes the runtime accumulated from the previous month. The following sections provide more TriggerSchedule details: Trigger Scheduler view TriggerSchedule slots and other notes
As shown in Figure 10-31, the Trigger Scheduler has two sides: Calendar (left) side where you add events. It operates like the Calendar Scheduler view. Time picker (right) side where you add trigger times for the schedule to fire its trigger output. Included is the ability to add repeating intervals. Note: Trigger times, as set in the time picker, apply to all calendar events (if more than one). Existing trigger events (if any) are listed in the table by name and summary. When you select a trigger event, its day(s) of occurrence are highlighted in green in the monthly calendars at the top of the view. Trigger times are listed in the time picker area. Additional Trigger Scheduler topics include: Adding trigger events Adding trigger event times
10-18
Dialog options are described as follows: Name Your descriptive name for the trigger events, perhaps FirstDOM or Each_WorkHr. The default value is simply Event. You can change this later, if needed. Type Determines selection criteria for day or days, with the following choices: Date (default) By various combinations of weekday, numerical date, month or month combinations, and year. Date Range By start and end range, using for each a combination of day, month, year. Week and Day By combination of day of week, week in month, month. Custom By various combinations of day, month, weekdays, and year. For details on Type selections, see Calendar day selections on page 10-15. After you have a name and type selected (and defined as needed), click OK to add it to this calendars days. It remains selected for further editing, except for type. Typically, you add one or more trigger event times on the time picker side. See Adding trigger event times on page 10-19.
Set the desired time in the hour:minute editor, either by clicking up/down controls or typing in times directly. Click the Add button to add a trigger at that time, which adds it to the list. You can also enter multiple triggers simultaneously, using the Range option. Range option To add multiple triggers that occur at a repeating interval, select the Range checkbox. This enables the Range End and Range Interval fields for entering values, as shown in Figure 10-34.
NiagaraAX-3.x User Guide
10-19
When entering a trigger range, note that the top (hour:minute) editor acts as the first (or Range Begin) trigger time. By default, the Range Interval is set to one hour (+00001h 00m 00.000s). You can set this to whatever interval is needed. To delete a trigger time, click to select, then click the Remove button. To select multiple trigger times, hold down the Ctrl or Shift key while you select.
Note: Priority selections (right-click menu or in bottom buttons) only affect the list order for events in a TriggerScheduletrue priority applies only to special events (in weekly schedules). Event menu options are straightforward, and may include the following: Add Add a new calendar event (same as using Add button). Edit Edit day(s) selection criteria (but not changing calendar type). Same as Edit button. Rename Rename selected calendar event (same as using Rename button). Priority (up) Move calendar event up in display list (same as using Priority button). Priority (down) Move calendar event down in display list (same as using Priority button). Delete Removes selected calendar event from the schedule component. Note: When you delete a calendar event, a confirmation dialog appears as shown in Figure 10-36. Figure 10-36 Delete calendar event confirmation
10-20
When you first access the Trigger Scheduler, the current day is highlighted in the left-most calendar month at the top of the view. As needed, click on Next Month and Prev Month, or Next Page and Prev Page to traverse the calendar ahead or back in time. Return to the current calendar month and day by clicking the Today button.
10-21
If you have schedules of different data types in the same container, the ScheduleSelector only displays the valid schedule components in the "Schedule" property options list.
10-22
Notice the following points about this configuration: The container property is set to the "station:|slot:/Logic/HousingUnit" ORD. This is the container that holds the three numeric schedules. The Shedule property option list has three numeric schedules available for selection. Notice that the schedules are the same ones shown on the wire sheet view of the folder component labeled "HousingUnit". The link (visible in the wiresheet view) is connected from the numeric schedule Out to the schedule selector In. The linked value (67.0 in this example) is passed from the NumericScheduleSelector component Out to the AirHandler device Setpoint input.
Notice the following points about this configuration: The BooleanScheduleSelector Container property is linked to the "Schedules" container (see nav tree). Three BooleanSchedule components are in the container and are available as options in the Schedule property option list. On the wiresheet view, the BooleanScheduleSelector shows a "knob" link from the selected schedule to the schedule selector In. The BooleanScheduleSelector Out is linked to three device inputs.
10-23
Using schedules
The following main sections provide common tasks for working with schedules in NiagaraAX: Adding a schedule or calendar Configuring schedules and calendars Linking schedules Importing schedules
Step 3
Step 4
10-24
Double-click the weekly schedule component. The Weekly Scheduler displays, as shown in Figure 10-4 on page 5. Configure important properties. See To configure a weekly schedules properties on page 10-25. Configure the normal weekly schedule. See To configure the weekly (normal) schedule on page 10-25. Configure special events, if any. See To add and configure special events on page 10-25. Review all configuration. See To review a weekly schedules configuration on page 10-26.
Step 2
Note: If a Boolean or EnumSchedule, select output value from the drop-down control. If a Numeric or StringSchedule, type the output value and press Enter. Step 3 Right-click the event and use whatever menus are needed. For details, see Right-click menus on page 10-7. Step 4 Step 5 Continue to add, delete, or adjust events as needed. When the weekly schedule is what you want, click Save.
Step 6 Step 7
10-25
10-26
Step 6 Step 7
Continue to add, edit, rename, or delete trigger events as needed. See Right-click menus and other controls on page 10-20. When trigger events and triggers are like you want, click Save.
Linking schedules
As needed, you link weekly schedules and (if used) trigger schedules to other components to provide scheduling control. For an overview, see Schedule component links on page 10-2. Linking weekly schedules Linking trigger schedules
Step 3 In the target (right) side of the Link dialog, click on the desired slot of the target component. Note: By convention, if linking to a priority array input of a writable point, In16 is used for schedule level control. However, you can select any available level desired. Step 4 With both source and target sides selected in the Link dialog, click OK. The target point or component is now linked to the weekly schedule.
10-27
Note: Target actions or topics, unlike target property slots, can accept multiple link sources. In some cases, you may wish to link the Trigger Missed slot of the trigger schedule to the same target. For details, see Trigger Missed slot on page 10-21. You can use either of these methods to link trigger schedules: To link a trigger schedule using the wire sheet To link a trigger schedule using the Nav tree
Step 3 Step 4
Importing schedules
If the station is part of a multi-station NiagaraAX network, you can import NiagaraAX schedule components between stations. You do this using the NiagaraAX Driver architecture, specifically, views of the Schedules extension under a NiagaraStation (device-level) component. If the Bacnet driver is used, you can also import BACnet Schedules and Calendars (as NiagaraAX schedule components) from a BACnet device. The same basic architecture and methods are used. Note: Under a BacnetNetwork, you can also export NiagaraAX schedules to a specific BACnet device (to configure existing BACnet Schedules and Calendar objects). For a brief overview, see Schedule exports and imports (master/slave) on page 10-3. For more complete details, see About the Schedules extension on page 4-27, and Station Schedules import/export notes on page 4-66.
10-28
Step 3 Step 4
Expand the device that contains the source schedule (NiagaraStation or BacnetDevice). In the Nav tree, the devices children include: Points, Histories, Alarms, and Schedules. Double-click Schedules. The Niagara or Bacnet Schedule Import Manager displays. Any existing schedules (already imported) from this device are listed. Click Discover. The manager view splits into two panes and a schedule discovery job is started. When complete, schedules available for import appear in the top pane. In the top pane, click to select one or more schedules, then click Add. An Add dialog allows you to edit the name of the schedule (as it appears in this station) and several other properties. See Schedule Import properties on page 4-46 for details. After editing name and properties to suit, click OK. NiagaraAX schedule components are created for the selected items, reside under that devices Schedules extension. You can link into station logic like any other schedules, but cannot configure these imported schedules (add, delete, or change events or other properties).
Step 5
Step 6
Step 7
10-29
10-30
CHAPTER
About Workbench tools
11
This section describes some of the standard tools available in Workbench. These tools provide Workbench interfaces that are designed to facilitate specific tasks from managing credentials to monitoring alarms. All of the tools described in this section are available from the Tools menu. However, as shown in Figure 11-1, navigational links to some of the tools also appear in the nav side bar and in the nav container views. Note: The nav side bar and nav container views do not display the tool icons until you initially open them using the Tools menu. Figure 11-1 Workbench tools
Nav Tree
Tools Menu
Some, but not all of the tools that are available under the Tools menu appear in the nav side bar when you select them. When you first open Workbench, the My Tools node will not be present in the nav tree. Therefore, if you configure a tool, such as the BACnet service tool, all the configuration data will be lost when you close the current session of Workbench. Tools, such as the Alarm Portal, BACnet service, Lonworks service, and the Workbench Job Service are available in Workbench when you do not have a station open. This is provided as a convenience and may only be useful in a limited number of situations. For example, you would probably more typically use the Job Service, BACnet service, and Lonworks Service under the Services node of a specific station. Refer to Types of Workbench Tools for a list of the tools that are available from the Tools menu.
NU
111
Alarm portal
NiagaraAX Platform Guide. Lonworks service Explains the options that appear in the lonworks service manager. Refer to Lonworks service on page 11-6. Manage Credentials Explains the options that appear in the credentials manager. Refer to Credentials manager on page 11-7. New driver wizard Explains the options that appear in the new driver wizard. Refer to New driver wizard on page 118. New module wizard Explains how to modify the attributes of a new module. Refer to New module wizard on page 11-8. New station wizard Explains the options in the new station wizard how to change the default attributes of a new station. Refer to New station wizard on page 11-9. License request dialog box Explains the options that appear in the license request dialog box. Refer to License request dialog box on page 11-9. Resource estimator Explains the options that appear in the resource estimator dialog box. Refer to Resource estimator on page 11-10. Todo list Explains the options that appear in the todo list dialog box. Refer to Todo list on page 11-10. Workbench job service Explains the options that appear in the workbench job service view. Refer to Workbench job service on page 11-11. Workbench service manager Explains the options that appear in the service manager screen. Refer to Workbench service manager on page 11-11.
Alarm portal
The alarm portal tool allows you to view and acknowledge alarms from many different stations using a single viewer (portal). The alarm portal, shown in Figure 11-2, is divided into two resizable panes, and a set of buttons along the bottom of the alarm portal window: From the Alarm Portal, double click on any alarm listed in the alarm sources pane to see the alarm details dialog box and the alarm record dialog box, as described in About the alarm console on page 7-19. Figure 11-2
Alarm Console Monitor
Alarm portal
Alarm Console Monitor This pane displays information about the consoles that are being monitored and contains the following information areas: Title bar
NiagaraAX-3.x User Guide
11-2
Alarm portal
Displays Alarm Console Monitor title on the left and the number of consoles that are connected to the alarm portal on the right side of the title bar. Column headings Displays the title of each of the columns that are displayed in the alarm console monitor. Alarm console list Each row in the alarm console listing contains information about alarm consoles that are currently listed as available to monitor from the alarm console. Station identity information is displayed, as well connection status (connected or disconnected) and connect and disconnect times. Open Alarm Sources This pane displays information about individual alarm sources, as described below. If you double click on a single alarm source, the Open Alarm Sources view opens. This view is described in About the alarm console on page 7-19. Title bar Displays Open Alarm Sources title on the left and the total number of points that are displayed in the list on the right side of the title bar. Column headings (click column heads to sort) Displays the title of each of the columns in the open alarm sources list, as follows: Timestamp displays the latest time that the point generated an alarm. Source State displays the current state of the point (for example, Normal or Offnormal). Ack State displays how many alarms have been generated at the point and how many of those alarms have been acknowledged. Ack Required displays true or false indicating that an acknowledgement is or is not required for that alarm. Source displays the path to the point that is generating the alarm. Alarm portal buttons Acknowledge All Acknowledges all alarms at the selected source when an alarm is selected in the alarm source pane. Hyperlink is active when an alarm extension property (refer to About alarm extension properties on page 7-3) is set to allow hyperlinking. When clicked, displays the alarm source. Notes displays a dialog box that allows you to add notes to an alarm record (see About the console recipient on page 7-19 for more details about alarm record notes). Silence when clicked, this button quiets the alarm sound for the selected point. Filter displays the alarm filter dialog box for limiting the alarms that are displayed. See About the alarm console on page 7-19 for more details about the alarm filter dialog box. Stop/Start/AutoStart provides starting and stopping options for the alarm portal. The alarm portal tool, when enabled, also places the alarm icon in your system tray and an alarm popup window, as shown in Figure 11-3. You can set options for the alarm portal in the Tools Options menu, as described in Alarm portal options on page 2-22 Figure 11-3 Alarm portal popup window
11-3
Bacnet service
Bacnet service
Figure 11-4 shows an example of the Bacnet service property sheet. Select Tools > BACnet Service from the Workbench main menu to add this service to the My Tools node of the nav tree. The default view is the property sheet view. Figure 11-4 Bacnet service property sheet view
Note: You can use this Workbench Tools service to configure a local Bacnet device in the same way as a you would under a station, as described in the Bacnet Guide. However, any configuration that you do using the Workbench Bacnet Service (under the My Tools node) will be lost when you close Workbench. Use Bacnet Service under a station to save your Bacnet Service settings to a database. Refer to the Bacnet Guide for a detailed description of the Bacnet service.
Color chooser
Figure 11-5 shows an example of the color chooser dialog box. This tool allows you define and save custom colors or use the default colors provided. You can add custom colors to your custom color palette located in the lower left area of the color chooser tool. Your custom color settings will then be available in other tools, such as the Px Editor. Figure 11-5 Color chooser tool
Color Chooser Default Palette Add and Manage Palette Buttons Custom Palette Palette Manager Color Range Current
Default Palette This palette contains predefined color swatches to choose from. Color Chooser area This area provides more colors to choose from and is regulated by the Color Range setting. Color Range Use this area to select the range of colors to display in the color chooser area. Current Selected Color This area displays the color that is currently selected. It changes whenever you specify a different color using any of the palettes or definition fields. Color Definition Fields Use these fields to define specific colors, by percentages by hexadecimal, or by name. The alpha field specifies the alpha channel, or transparency level. For example, 50% in this field specifies that the color is 50% transparent. Add Button Click this button to add the selected color to the custom palette.
11-4
Manage Button Click this button to open the Manage Palette. Manage Palette Open this palette by clicking the Manage Palette button. Use this palette to add, delete, or rearrange the colors on the custom palette.
Lexicon editor
For general information on lexicons, see About lexicons on page 1-19. For details on installing (edited) lexicons in remote JACE platforms, see the Platform Guide section Lexicon Installer. For information about using the lexicon editor tool refer to the following sections: Lexicon Report Lexicon Editor Lexicon display options
Lexicon Report
When selecting the lexicon editor from the Tools menu, the default view is the Lexicon Report, as shown in Figure 11-6. The left side of this view lists all lexicons installed on your PC. As needed, you click a lexicon to select it. Figure 11-6 Lexicon report
Selecting a lexicon in report view shows various status parameters about each lexicon file (by module) in columns on the right side. These status parameters include the following: module The Niagara module translated by the lexicon file (moduleName.lexicon) module last modified Timestamp of when the module lexicon was last modified missing Number of keys that are missing values (from the lexicon for that module) lexicon last modified Timestamp of when the lexicon was last modified Note: Checkboxes at the top of report view allow you to hide values that could affect missing status counts, as described in Lexicon display options. From this view you can also add (new) lexicons or delete unwanted lexicons. In addition, you can launch the Lexicon Editor by clicking any module row, which shows that lexicon file.
Lexicon Editor
The lexicon editor lets you view and edit the contents of an individual lexicon file installed on your Workbench PC. Typically, you access the editor from the Lexicon Report view with a lexicon selected, by double-clicking a selected row on the right side.
11-5
Figure 11-7
Lexicon editor
A lexicon in the lexicon editor shows a table listing all defined keys for that module, with columns for mapping to a localized value, as follows: Key Niagara interface entity, constant in that module from lexicon to lexicon Default Default character value, used if no value is defined for that key (English equivalent). Value Localized character value Note: Checkboxes at the top of report view allow you to hide values that could affect missing status counts, as described in Lexicon display options. As needed, you can resort columns to find information needed, and simply click any row to select that key. At the bottom of the editor, a Value edit field allows modifying (or adding) a value to the currently selected key.
Hide Ords If enabled, it filters out and referenced based entries, such as modules://icons/x16/alarm.png Hide Accelerators If enabled, it filters out entries that define keyboard accelerators. Hide Colors If enabled, it filters entries that define colors, such as those defined by hexadecimal code #FFFF0000. Hide Fonts If enabled, it filters entries that define fonts. Note: The default settings for these display options are set in the Options dialog box, as described in Lexicon editor options on page 2-23.
Lonworks service
The Lonworks service is available when you select it from the Tools menu. The default view is the Lon device manager view, as shown in Figure 11-9.
11-6
Figure 11-9
Note: You can use this Workbench Tools service to configure a Lonworks in the same way as a you would under a station, as described in the Lonworks Guide. However, any configuration that you do using the Workbench Lonworks Service (under the My Tools node) will be lost when you close Workbench. Use Lonworks Service under a station to save your Lonworks Service settings to a database. Refer to the Lonworks Guide for more details.
Credentials manager
The Manage Credentials tool, or Credentials Manager provides a dialog to access and open any previously remembered (cached) connection from your Workbench, including both platform and station connections. Figure 11-10 Manage Credentials dialog (credentials manager)
. You can also remove or reset any cached credentials. Note that your credentials cache is populated whenever you have the login (Authentication) dialog option Remember these credentials (checkbox) enabled, as shown in Figure 11-10. For any initial platform or station connection, this option is enabled by default.
11-7
The default caching of credentials is a convenience feature, such that you can simply open the platform or station later by entering only the IP address, or simply clicking on that hosts ghosted platform or station in the Nav tree of Workbench, or going to the credentials manager. Then, the login authentication dialog (Figure 11-11) has the cached credentials already entered, and you simply click OK. If you want tighter security for any platform or station connection from your Workbench PC, you should clear this checkbox whenever opening (logging on) a platform or station. Furthermore, you should remove any related entries using the credentials manager (Figure 11-10). This way, that platform or station connection always requires full entry of both user name and password.
11-8
Figure 11-13 New module wizard creates folders under working directory
This wizard creates a set of folders and files under a station directory that you assign during the wizard process. After creating these files, you need to finish the process, as described in Working with modules on page 12-27. Also see the Developer Guide for more detailed information about building modules.
New Station Wizard fields include the following: Station Name This name is the name that is assigned to your station. The station folder will have this name. Station Directory This read-only field specifies the location where the station folder is created (under the Stations folder). Admin Password This field allows you to assign an administrative level password for the station. You must type in the password again in the Confirm Password field. Fox Port This field allows you to assign a port for Fox communications. The default port is port 1911. HTTP Port This field allows you to assign a port for HTTP communications. The default port is port 80.
11-9
The license request fields include the following: Host ID This is the unique ID of the host platform for your station. Name This is the name of the person responsible or authorized to obtain a license for the station. Admin Password This field allows you to assign an administrative level password for the station. You must type in the password again in the Confirm Password field. Company This is the name of the company that is authorized to license the station. Email This field specifies the email address of the person requesting the license. This is the address that a license is emailed to. PO # (REQUIRED) This field contains the purchase order number that is used to pay for the licensed version of NiagaraAX. When all fields are complete, click the OK button and the license request is submitted.
Resource estimator
The resource estimator tool is available from the Tools menu. Use it as a worksheet to help you estimate the total number of station resources that you will use in a projected station implementation. The resource estimator view is as shown in Figure 11-16. Figure 11-16 Resource estimator view
Todo list
The todo list is available when you select it from the Tools menu. This tool is provided to help you with organizing, prioritizing and tracking tasks in Workbench. The todo list view is shown in Figure 11-17.
11-10
The Todo list is a tabular view with standard table controls and options, as described in Table controls and options on page 2-17. You can use this tabular list to create new lists or edit, group and rearrange existing lists and items in your lists. In addition, you can use the filter fields at the top of the display to filter what you see in the table, based on your summary description or group.
Note: Workbench jobs are jobs that are initiated and run under the Workbench - not under a station. Jobs that are run under a station are monitored and displayed in the Station Job Service (under the station Services node in the nav side bar).
The Workbench service manager is a tabular view with standard table controls and options, as described in Table controls and options on page 2-17. From this view you can enable or stop any of the services that are listed.
11-11
11-12
CHAPTER
Performing Workbench tasks
12
Workbench provides a complete user interface to the Niagara Framework. It can directly access a station and perform any action that the system supports. You can view and control any component using any of the supported views. Common Workbench tasks include the following: Starting and exiting Workbench Getting started with stations Using the side bar pane Using bookmarks Using the help side bar Using the nav side bar (tree) Using the palette side bar Using the view pane Editing components Using alarms Creating a Live History Chart Using the Px Editor Using the Nav File Editor Working with modules
To start Workbench
To start Workbench do one of the following: From the Windows Start menu, choose Programs > Niagara 3.0.xx > Workbench. The Workbench GUI will appear. From a console command line, type wb. Note: If you use a DOS command line, instead of the Niagara command line, you must type the full path to the workbench directory. The Workbench GUI will appear. For more information about the console, see About the console on page 2-11.
121
To exit Workbench
You can exit Workbench by using the Exit command (which will close all Workbench windows) or by closing all Workbench windows. To exit Workbench, do one of the following: From the File menu, select the Exit command. The Workbench GUI will close. Close all Workbench windows. The Workbench GUI will close when the final Workbench window is closed.
Step 3
Step 2
12-2
Note: Be sure to use the correct platform username and password not the credentials information for the station. Username Enter the username for the platform. Password Enter the password for the platform. Remember these credentials option Select the Remember these credentials option if you want to have Workbench remember the platform username and password for this platform. Step 3 Click OK to accept all settings. If the platform credentials were correct, the platform is connected, the platform icon appears in the side bar pane and the default Nav Container View appears in the view pane. If the platform credentials were not correct, you are prompted to enter them again.
Step 2
Step 2
Step 6
12-3
To open a station
To open a station, do the following: Step 1 From the File menu, select Open > Open Station (Fox) The Open Station dialog box appears.
Step 2 Enter the host and credentials information as follows: Note: Be sure to use the correct station username and password not the credentials information for the platform. Host [connection type] Select the IP option if you are using an IP connection to connect to the station. Select the dialup option if you are using a dialup connection to connect to the station. Host [ID] Enter the Host ID (if necessary) or select it from the dropdown menu, if available. Port Enter (or change, if necessary) the Port port number that you will use to connect. Username Enter the username for the station. Password Enter the password for the station. Remember these credentials option. Select the Remember these credentials option if you want to have Workbench remember the station username and password. Step 3 Click OK to accept all settings. If the station credentials were correct, then the station connects, the station icon appears in the side bar pane and the Nav Container View (or Station Summary View) appears in the view pane. If the station credentials were not correct, you are prompted to enter them again.
Step 2
12-4
Step 2 Enter the credentials information as follows: Note: Be sure to use the correct station username and password not the credentials information for the platform. Username Enter the username for the station. Password Enter the password for the station. Remember these credentials option Select the Remember these credentials option if you want to have Workbench remember the station username and password for this station.
Step 2
12-5
Using bookmarks
Using bookmarks
Bookmarks are simply linked shortcuts or favorites to help you quickly find views in just a couple of clicks. The bookmark side bar provides a convenient place in the side bar pane to add, manage, edit, and remove bookmarks. You can also do these bookmarking tasks using the Bookmarks menu on the menu bar. For an overview of the bookmark side bar, see About the bookmark side bar on page 2-4. This section describes the following tasks that are associated with the bookmark feature: To add a bookmark To manage bookmarks To edit a bookmark To remove a bookmark
12-6
To add a bookmark
To add a bookmark, do the following steps: Step 1 Make sure that the view you want to bookmark is showing in the view pane, and then do one of the following: From the menu bar, select Bookmarks: Add to Bookmarks. From the popup menu in the palette side bar, select Add to Bookmarks. In the Add to Bookmarks dialog box, type a name for the bookmark, in the Name field. Optional: In the Add to Bookmarks dialog box, click the New Folder button to add a new folder, if desired. The New Folder dialog box appears. There you can name your new folder and click OK to save it. In the Add to Bookmarks dialog box, select the folder where you want to locate the bookmark and click OK. The bookmark is added.
Step 2 Step 3
Step 4
To manage bookmarks
To manage your bookmarks, do the following steps: Step 1 Do one of the following: From the menu bar, select Bookmarks: Manage Bookmarks. From the popup menu in the palette side bar, select Manage Bookmarks. In the Manage Bookmarks dialog box, click on one of the following buttons: New Folder buttons To create new folders to organize your bookmarks New Bookmark button To create new bookmarks Copy to button To copy bookmarks to another location Move to button To move bookmarks to another location Remove button To delete the selected bookmark Edit button To rename a selected bookmark Move Up or Move Down button To move bookmarks up or down in the bookmark tree view
Step 2
To edit a bookmark
To edit a bookmark, do the following steps: Step 1 In the bookmarks side bar, right-click the bookmark that you want to change and select Edit from the popup menu. The bookmark Edit dialog box will appear. In the Edit dialog box, type the desired name for your bookmark in the Name field. In the Edit dialog box, type the ORD path or scroll Name field.
Step 2 Step 3
To remove a bookmark
To remove a bookmark, do the following: In the bookmarks side bar, right-click the bookmark that you want to change and select Remove from the popup menu. The bookmark is deleted from the bookmark list.
12-7
12-8
To dismiss a job
Once a job has been completed, you are notified via the async notification feature. You may then dismiss the job from the jobs side bar, if desired. To dismiss a job, do the following: From the Jobs side bar click the close button on the job that you want to dismiss. The selected job is closed.
To open a palette
You can open one or more palettes in the palette side bar. Refer to To open the palette side bar on page 12-6 for details on how to open the palette side bar. To open a new palette in the palette side bar, follow these steps: Step 1 On the palette toolbar click the open palette button. The Open Palette dialog box appears.
Step 2 In the Open Palette dialog box, select one or more palettes from the list, as desired. Note: Hold down the Ctrl or Shift key to make multiple selections. Step 3 Click OK. The palette(s) opens in the palette side bar pane.
To close a palette
You can close any of the palettes that are open in the palette side bar. When you close all the palettes, the palette side bar closes. To close a palette, follow these steps:
NiagaraAX-3.x User Guide
12-9
Step 1 Step 2
From the Drop-down palette selector, choose the palette that you want to close. The selected palette displays in the side bar pane. Click the Close palette button. The palette closes.
To create a palette
Palettes allow you to save copies of your work for future use. Palette files may reside under a station file system or as part of a module. This procedure describes how to create a palette that resides in a station file system. Refer to Working with modules on page 12-27 for information about creating a palette file that is part of a module (jar file). Note: For convenience and good organization, it is a good idea to create a palette folder on the file system to hold all your custom palette files. To create a palette, follow these steps: Step 1 In the nav tree, right-click on (or under) the station file system node, in the desired location (see note, above). The popup menu appears. From the popup menu, select New > PaletteFile.palette. The File Name dialog box appears with a default name. In the File Name dialog box, type the desired name for the new Palette file and click OK. The File Name dialog box disappears and the new Palette file appears in the nav tree. For more information about palette files, refer to About the Nav file on page 8-47. For information about using the Nav File Editor, refer to About the Nav File Editor on page 8-49.
Step 2 Step 3
Step 3
Note: If the updated palette is currently being viewed in the palette side bar, you must close and reopen the palette after saving the station (SaveBog).
Step 2
12-10
Step 3 Step 4
Right click on the wire sheet view and select a new component from the New menu. Drag and drop a component or container from the nav side bar directly onto the wire sheet. Select File > SaveBog from the main menu. From the console command line (press F3 to open console window) navigate to the working directory and type the build command followed by a space and then the name of the module folder. For example: C:\Niagara\Niagara-3.0.xx\workingDirectory> build moduleName Press the Return key to initiate the build process. If the build is successful, the updated jar file is built and overwrites the old jar file located in the modules folder. If the build is not successful, no jar file is built and error messages are generated to help you troubleshoot the problem.
Step 5
Refer to To create a new module on page 12-27 for more detailed instructions about creating a module.
Step 3
Note: If the updated palette is currently being viewed in the palette side bar, you must close and reopen the palette in the palette side bar in order to see the new items.
Editing components
Editing components in Workbench typically involves: Selecting a component Viewing a component Working with components Editing component data The following sections describe these tasks.
Selecting a component
By selecting an item, you are defining the scope of your actions. In other words, the only components that are directly affected by your edits are those that are selected during your edits. Of course, other components may be influenced by the change in a component that communicates with it. It is also important to remember the hierarchical nature of the component tree. If you delete or move a component that contains other components, then you are deleting or moving all items that are contained in that container component.
12-11
When items are selected, they appear in one of the following ways: In the nav tree view, the component text is changed to a white on purple highlight. In the wire sheet view, selected components have a red border with red handles. In the wire sheet view, selected links turn red. For more information about views, refer to About views on page 1-19.
To select a component
To select a component, do one of the following: In the nav tree view or the wire sheet view, leftclick the desired component. The component is selected. In the nav tree view or the wire sheet view, right-click the desired component. The component (or link) is selected. In the wire sheet view, drag around the desired component. The component (or link) is selected.
Viewing a component
Each component that you select (in a view or in the nav tree) has a default view that appears in the view pane. You can select a different view of the component using the view selector or the popup (rightclick) menu. The last view of an object becomes its default view during a Workbench session. If Workbench is closed and restarted, default views are reset to the original default views. For details on selecting component views, see To select a component view on page 12-12. In addition to having different views, you can edit the way views display information. For details about customizing a view, refer to the following procedures: To reorder components (in a component container) on page 12-12 To create a composite view on page 12-13
12-12
The Reorder dialog box appears. Step 3 In the Reorder dialog box, use the sort buttons, as follows: Move Up button Select one or more items in the component list (use the Ctrl or Shift key to select multiples) and click this button to move selected item(s) up (one position per click) in the list. Move Down button Select one or more items in the component list (use the Ctrl or Shift key to select multiples) and click this button to move selected item(s) down (one position per click) in the list. Sort by Name button Click this button to sort all items in the list in alphabetical order, by name. Each click toggles the sort order between ascending and descending sort order. Sort by Type button Click this button to sort all items in the list in order by component type. Each click toggles the sort order between ascending and descending sort order. Reset button Click this button to set the components in the list back to the order that they were in when the Reorder dialog box was opened. The components are sorted according to button selected.
Step 6
To add a new component (property sheet, nav side bar, or wire sheet view) To delete a component (property sheet, nav side bar, or wire sheet view) To rename a component (property sheet, nav side bar, or wire sheet view, slot sheet) To duplicate a component (property sheet, nav side bar, or wire sheet view) To paste a component (property sheet, nav side bar, or wire sheet view) To drag a component to the property sheet, nav side bar, or wire sheet (leftclick method)
12-13
To drag a component to the property sheet, nav side bar, or wire sheet (rightclick method)
To add a new component (property sheet, nav side bar, or wire sheet view)
You can add (create) a new component to a container using the property sheet view, the nav tree view or the wire sheet view. To add a slot refer to To add a new slot on page 12-18. To add a new component, do the following: Step 1 Rightclick in the container where you want to place the new component. This can be a component in the nav tree view, the wire sheet view or the property sheet view. A popup menu appears. From the popup menu, choose the New command and select the desired type of component: Folder IconFolder TextBlock BooleanWritable NumericWritable EnumWritable StringWritable The Name dialog box appears. Type the desired name for the new component in the text field and click the OK button. The new component appears in the property sheet.
Step 2
Step 3
To delete a component (property sheet, nav side bar, or wire sheet view)
You can delete a component from a container, using the property sheet view, the nav tree view or the wire sheet view. To delete a component using the slot sheet view, refer to To delete a slot refer to To delete a slot on page 12-18. To delete a component, do the following: Note: If you delete a component that contains other components, all components in that container component are deleted as well. Step 1 Rightclick the desired component. A popup menu appears. Step 2 From the popup menu, select the Delete command. The component is deleted.
To rename a component (property sheet, nav side bar, or wire sheet view, slot sheet)
You can rename a component in the property sheet view, the nav tree view, the wire sheet view, or the slot sheet view. To rename a component, do of the following: Step 1 Step 2 Step 3 In the desired view, rightclick the component to rename. The popup menu appears. From the popup menu, select the Rename command. The Rename dialog box appears. In the Rename dialog box, type the desired name in the text field and click the OK button. The component is renamed.
To duplicate a component (property sheet, nav side bar, or wire sheet view)
You can duplicate a component from the property sheet view, the nav tree view, or the wire sheet view. To duplicate a component, do of the following: Step 1 Step 2 Step 3 In the desired view, rightclick the component to duplicate. The popup menu appears. From the popup menu, select the Duplicate command. The Name dialog box appears. In the Name dialog box, type the desired name in the text field (or use the default name) and click the OK button.
NiagaraAX-3.x User Guide
12-14
To paste a component (property sheet, nav side bar, or wire sheet view)
You can add a component to a container by pasting it to a container displayed the property sheet view, the nav tree view, or the wire sheet view. To add a component by pasting it, do the following: Step 1 In the desired view, select the desired component and use the Copy (to duplicate) or Cut (to remove) command to copy the component to the clipboard. Copy and Cut commands are available on the popup (rightclick) menu, the Edit menu, or from the toolbar. Rightclick in the container where you want to place the new component. This can be a component in the nav tree view, the wire sheet view or the property sheet view. The popup menu appears. From the popup menu, select the paste command. The Name dialog box appears. Type the desired name for the new component in the text field and click the OK button. The new component is added to the targeted container.
Step 2
Step 3 Step 4
To drag a component to the property sheet, nav side bar, or wire sheet (leftclick method)
You can drag a component to the displayed property sheet view, the nav tree view, or the wire sheet view, by using a rightclick drag or by using a normal, leftclick drag. Note: A leftclick drag always creates a copy of the original. To drag a component using the leftclick drag method, do the following: Step 1 Step 2 In the desired view, leftclick the component to copy and drag it to the target container. When you release the mouse button, the Name dialog box appears. Type the desired name for the new component in the text field and click the OK button. The new component is added to the targeted container.
To drag a component to the property sheet, nav side bar, or wire sheet (rightclick method)
You can drag a component to the displayed property sheet by using a rightclick drag or by using a normal, leftclick drag. Note: A rightclick drag always prompts you to choose a copy, move, or cancel command. To drag a component to a property sheet by using the rightclick drag method, do the following: Step 1 In the desired view, rightclick the component that you want to move (or copy) and drag it to the property sheet. When you release the right mouse button, a popup menu appears. From the popup menu, choose one of the following commands: Copy this command makes a duplicate of the component to paste onto the property sheet. The Name dialog box appears. Move this command removes the original component and prepares to paste in onto the property sheet. The Name dialog box appears. Cancel this command will stop the process, and the popup menu will disappear. Type the desired name for the new component in the text field and click the OK button. The new component appears in the property sheet.
Step 2
Step 3
12-15
Using the wire sheet Using the slot sheet Using the link sheet
12-16
To pin a slot
By default, some slots are visible in the wire sheet view of the slot. However, you can have any or all slots visible on the wire sheet by pinning open the slot(s). To pin a slot: Step 1 Step 2 Step 3 Step 4 In the wire sheet view, rightclick on the desired component. The popup menu appears. From the popup menu, select the Pin Slots command. The Pin Slots dialog box appears. In the Pin Slots dialog box, click to the left of all slots that you want to pin open. A pin icon appears next to each icon you click. Click the OK button. The slots are pinned and appear on the wire sheet with a knob next to the slot name.
Rightclick the desired component and drag it to the property sheet. When you release the right mouse button, a popup menu appears. From the popup menu, choose one of the following commands:
12-17
Step 3
Copy this command makes a duplicate of the component to paste onto the property sheet. The Name dialog box appears. Move this command removes the original component and prepares to paste in onto the property sheet. The Name dialog box appears. Cancel this command will stop the process, and the popup menu will disappear. Type the desired name for the new component in the text field and click the OK button. The new component appears in the property sheet.
Step 4
To delete a slot
To delete a slot, perform the following steps: Step 1 Step 2 In the slot sheet view, rightclick on the slot that you want to delete. The popup menu appears. From the popup menu, select the Delete command. The slot is deleted.
12-18
Step 4
Type in (or browse to) the ORD for the desire source of the link. Source Slot Name Type in a name for the Source. Target Slot Name Type in a name for the Target Slot Enabled Choose True of False from the Enable option list. True enables the link and False disables the link. In the edit dialog box, click the OK button. The edit dialog box disappears and the edits are saved.
Using alarms
The following are common tasks associated with setting up and working with alarms in NiagaraAX: Creating alarms Routing alarms Managing alarms
Creating alarms
To create an alarmable control point, you must add an appropriate alarm extension to a control point and configure it to define your alarm condition requirements:
Routing alarms
The alarm service handles the routing of alarms by using alarm classes to coordinate the transfer of messages between alarm sources and alarm recipients. Refer to Types of alarm recipients on page 7-18 for more information about alarm recipients.
12-19
Managing alarms
To acknowledge alarms from the alarm console view
Note: Alarms are not removed from the alarm console until both the following conditions exist: alarm acknowledged alarm source is in a normal (not alarm) state You can acknowledge alarms from the alarm portal as well as from the alarm console. To acknowledge alarms from the alarm portal, refer to To acknowledge alarms from the alarm portal on page 12-21. To acknowledge alarms from the alarm console view, do the following: Step 1 Step 2 Rightclick on the ConsoleRecipient node in nav side bar pane. The popup menu displays. From the popup menu, select Views > Alarm Console.
NiagaraAX-3.x User Guide
12-20
The alarm console view appears with all alarm sources displayed in a tabular view. Step 3 In the alarm console view, select alarm sources that you want to acknowledge. Select multiple alarms, if desired, using the Shift or Ctrl key. Note: Each record that appears in the alarm console table represents one alarm source and one or more alarms from that source. You may acknowledge either the latest (most recent) alarm or acknowledge all alarms that are reported from that source by choosing either the Acknowledge command or the Acknowledge All command, as described in the following step. Step 4 Acknowledge selected alarm(s) by doing one of the following: From the Alarm menu, select Acknowledge (to acknowledge the latest alarm only) The latest alarm from each selected choice is acknowledged. OR From the Alarm menu, select Acknowledge All (to acknowledge all alarms reported from that source). Alternatively, you may click the Acknowledge All button (located at the bottom of the dialog box). All alarms from each selected alarm source are acknowledged.
Step 3 Step 4
Step 5
Step 6
In the Open Alarm Sources table, select alarm sources that you want to acknowledge. Select multiple alarms, if desired, using the Shift or Ctrl key. Note: Each record that appears in the Open Alarm Sources table represents one alarm source and one or more alarms from that source. You may acknowledge either the latest (most recent) alarm or acknowledge all alarms that are reported from that source by choosing either the Acknowledge command or the Acknowledge All command, as described in the following step. Step 7 Acknowledge selected alarm(s) by doing one of the following: From the Alarm menu, select Acknowledge (to acknowledge the latest alarm only) The latest alarm from each selected choice is acknowledged. OR From the Alarm menu, select Acknowledge All (to acknowledge all alarms reported from that source). Alternatively, you may click the Acknowledge All button (located at the bottom of the dialog box) or use the popup menu to acknowledge the alarm(s). All alarms from each selected alarm source are acknowledged.
NiagaraAX-3.x User Guide
12-21
Step 2
Step 3
Step 3
12-22
Making widgets
It is possible to make new widgets in several ways:
Step 2
From the Source options list, select the desired type of binding (choose from: Bound Label, Properties, Actions, and others). Note: Binding options that are dimmed indicate that they are not valid options for the selected component. The Secondary view area displays fields and options that are related to the selected Source option. In the Secondary view area, choose a widget template, formatting options for display labels, or views, as appropriate for your Source option. In the Properties sheet area, edit the properties or actions, as desired. Click the OK button to complete the wizard. The Make Widget wizard disappears and the new widget appears on the Px Editor canvas. Toggle the view using the View/Edit Mode toolbar icon to display the widget in the Px Viewer.
Binding widgets
There are different ways to add a binding to a widget. You can add a binding to a widget using the Make Widget wizard or you can add a binding to a widget that is already on the Px Editor canvas.
Step 2
12-23
Step 3
in the properties side bar. To add a binding, click the Add Binding icon in the properties side bar (see To bind a value to a widget on page 12-23). To animate a widget property, from the palette side bar, right-click in the properties field and select Animate from the popup menu (refer to Animating widget properties for details). To delete a binding, click the Close icon (X) in the top right corner of the properties side bar. If you are working in the properties dialog box, click the OK button. The edits are made and the widget properties are changed.
Step 2
Step 3
From the Binding options list, select the binding that is associated with the component value you want to link to. Step 4 From the Converter Type options list, select the binding that is associated with the component value you want to link to. Note: The converter type that is selected by default is based on the component that you have selected and most of the time will be the converter type that you want to use. For more information about converter types, refer to Types of Converters on page 8-21. The Animate dialog box displays different fields, based on the type of value (and thus, converter) that you animating. Complete the binding to the value using the controls in the Animate dialog box and click the OK button. The Animate dialog box disappears and the binding appears in properties side bar (or dialog box). Click the OK button to close the properties dialog box, if necessary. The property value is animated.
Step 5 Step 6
12-24
Using the Nav File Editor Editing a Nav file in the Nav File Editor
Edit the nav file, as desired. Click the Save icon on the toolbar or select File > Save to save changes to the nav file.
12-25
Using the Nav File Editor Editing a Nav file in the Nav File Editor
Step 3
Step 2
Step 3
Step 2
12-26
Working with modules Editing a Nav file in the Nav File Editor
Step 3
Step 4
Step 4
Step 6 Step 7
The following listing is an example of how your build.xml file might look. <!-- Module Build File --> <module name = "newModuleName" bajaVersion = "0"
NiagaraAX-3.x User Guide
12-27
Working with modules Editing a Nav file in the Nav File Editor
preferredSymbol = "nM" description = "My new graphic files" vendor = "Acme" > <!-- Dependencies --> <dependency name="baja" vendor="Tridium" vendorVersion="3.0" bajaVersion="0" /> <resources name="/images/*.*"/> </module> Step 8 Step 9 Save and close the build.xml file. From the console command line in Workbench (press F3 to open console window) navigate to the working directory and type the build command followed by a space and then the name of the module folder. For example: C:\Niagara\Niagara-3.0.xx\workingDirectory> build moduleName Press the Return key to initiate the build process. If the build is successful, the new jar file is built and located in the modules folder. If the build is not successful, no jar file is built and error messages are generated to help you troubleshoot the problem. Step 10 You must restart workbench to see the new module in the modules directory. Note: If you chose to create a palette during the build process (using the New Module Wizard) an empty palette is available with the new module. Refer to To add a new component to a palette (module.palette) on page 12-10 for instructions about adding components to the palette.
12-28
CHAPTER
Component Guides
13
131
AlarmSourceInfo BooleanChangeOfStateAlarmExt BooleanCommandFailureAlarmExt ConsoleRecipient FaultAlgorithm EnumChangeOfStateAlarmExt EnumCommandFailureAlarmExt LinePrinterRecipient MemoryAlarmService OffnormalAlgorithm OutOfRangeAlarmExt StationRecipient StatusAlarmExt An AlarmClass object is used to group Alarms that have the same routing and handling characteristics. The AlarmClass is available in the Alarm Module.
alarm-AlarmClass
Refer to About alarm class on page 7-15 for more details about alarm class.
alarm-AlarmConsoleOptions
The AlarmConsoleOptions component allows you to configure the parameters of the alarm console. The Options dialog box displays when you select the Workbench Tools > Options menu item. Refer to Alarm console options on page 2-21 for details about the individual alarm console options. Refer to About the alarm console for details about the alarm console. The component is stored under the /users/{user}/options directory.
alarm-AlarmPortalOptions
This component allows you to configure the alarm portal parameters. The Options dialog box displays when you select the Workbench Tools > Options menu item. Refer to Alarm portal options on page 2-22 for details about the individual alarm console options. Refer to About the alarm console for details about the alarm console. The component is stored under the /users/{user}/options directory.
alarm-AlarmService
The AlarmService uses AlarmClasses to route all Alarm messages between AlarmSources and AlarmRecipients. Each Station contains a single AlarmService. The AlarmService is available in the Alarm Module. Refer to About the alarm service on page 7-6 for more details.
alarm-AlarmSourceExt
AlarmSourceExt is the abstract superclass of all Baja control Alarming algorithms. The AlarmSourceExt is available in the alarm Module Extensions Directory. Some common alarm source extensions include OutOfRangeAlarmExt, BooleanChangeOfStateAlarmExt, BooleanCommandFailureAlarmExt, EnumChangeOfStateAlarmExt and EnumCommandFailureAlarmExt. Refer to About alarm extensions and components on page 7-3 for more details. AckAlarm Acknowledge the Alarm matching this ack request. SilenceAlarm Silence the Alarm matching this silence request.
alarm-AlarmSourceInfo
AlarmSourceInfo is a container slot on any network component, and also on each child device component. Properties under this slot are used to populate the alarm record when the network or device does not respond to the networks monitor ping. These properties work in the same fashion as those in an alarm extension for any control point. See the following links for more information: About network Alarm Source Info on page 4-6 About Monitor on page 4-7 for details on the network monitor mechanism About alarm extension properties on page 7-3 for AlarmSourceInfo property descriptions
132
alarm-BooleanChangeOfStateAlarmExt
BooleanChangeOfStateAlarmExt implements a change of state alarm detection algorithm for Boolean objects as described in BACnet Clause 13.3.2. This alarm extension is available in the Extensions folder of the alarm palette. See the following links for more information: Types of alarm extensions on page 3-12 About alarm extensions and components on page 7-3 About alarm extension properties on page 7-3 About alarm extension manager on page 7-9
alarm-BooleanCommandFailureAlarmExt
BooleanCommandFailureAlgorithm implements command failure alarm detection algorithm for Boolean objects as described in BACnet. If feedback and output values of the point are not equal for timeDelay duration, an offnormal alarm is generated. This alarm extension is available in the Extensions folder of the alarm palette. See the following links for more information: Types of alarm extensions on page 3-12 About alarm extensions and components on page 7-3 About alarm extension properties on page 7-3 About alarm extension manager on page 7-9 This component manages the transfer of alarms between the alarm history and the alarm console. The ConsoleRecipient is available in the Alarm Module. See the following links for more information: About the console recipient on page 7-19 Types of alarm recipients on page 7-18 About the alarm service on page 7-6
alarm-ConsoleRecipient
Scan Unacked Alarms Get all unacked Alarms that have been created (and unacked) since "alarmsSince". Actions Actions include .
alarm-FaultAlgorithm
FaultAlgorithm is the super-class of all Fault detection mechanisms defined by Niagara. The default implementation will never generate any toFault Alarms. The FaultAlgorithm is available in the alarm Module Extensions Directory.
alarm-EnumChangeOfStateAlarmExt
EnumChangeOfStateAlarmExt implements a change of state alarm detection algorithm for Enum objects as described in BACnet Clause 13.3.2. Each algorithm instance defines a set of enumerated values that should be considered offnormal conditions and therefore generate an alarm. This alarm extension is available in the Extensions folder of the alarm palette. See the following links for more information: Types of alarm extensions on page 3-12 About alarm extensions and components on page 7-3 About alarm extension properties on page 7-3 About alarm extension manager on page 7-9
alarm-EnumCommandFailureAlarmExt
EnumCommandFailureAlarmExt implements command failure alarm detection algorithm for enum objects as described in BACnet. If feedback and output values of the enum point are not equal for more than timeDelay, an offnormal alarm is generated. This alarm extension is available in the Extensions folder of the alarm palette. See the following links for more information: Types of alarm extensions on page 3-12 About alarm extensions and components on page 7-3 About alarm extension properties on page 7-3 About alarm extension manager on page 7-9
133
alarm-LinePrinterRecipient
The LinePrinterRecipient component provides the capability to print alarms to line printers that are attached to a station that is running on a Win32 platform. This recipient can print to local and remote line printers. Alerts may be generated if the printing of an alarm fails, but the lineprinter recipient does not print alarms that it generates itself. See the following links for more information: About the lineprinter recipient on page 7-23 Types of alarm recipients on page 7-18 About the alarm service on page 7-6
alarm-MemoryAlarmService
MemoryAlarmService provides an alternative to the standard file-based AlarmService. When you use this service, alarms are not stored persistently on the station host as they are with the standard file-based alarm service. The MemoryAlarmService is available in the Alarm Module. Refer to About memory alarm service on page 7-7 for more details. BOffnormalAlgorithm is a super-class for all algorithms that check for off normal (not Fault) conditions. Refer to Types of control extensions on page 3-11 for more information about off normal.
alarm-OffnormalAlgorithm
alarm-OutOfRangeAlarmExt
OutOfRangeAlarmExt implements a standard out-of-range alarming algorithm, and applies to points with status numeric output. This alarm extension is available in the Extensions folder of the alarm palette. Refer to Types of control extensions on page 3-11 for more information about out of range. Recipient for another station. This class receives Alarms and formats them for another station. The StationRecipient is available in the Alarm Module. See the following links for more information: About the station recipient on page 7-22 Types of alarm recipients on page 7-18 About the alarm service on page 7-6
alarm-StationRecipient
alarm-StatusAlarmExt
StatusAlarmExt provides alarming based upon any combination of status flags, and applies to all points/objects that accept extensions. This alarm extension is available in the Extensions folder of the alarm palette. Refer to Types of control extensions on page 3-11 for more information about off normal.
backup-BackupService
The BackupService provides for complete configuration backups to a Workbench PC or a browser PC (user with Wb web profile). By default, the BackupService is included when you create a new station using the New Station wizard. The target Niagara host (JACE, Supervisor) must have the backup module installed. A backup is a dist file (a zipped format) including minimally the stations config.bog, current station console output (.txt file), and backup.log file. If other station file types and subfolders are not excluded (in the BackupService configuration), the backup dist file contains them toofor example, files of type: px, nav, html, jpg, png, and so forth. Also, the backup dist contains the zipped nre-config for that host (including license and certificates files), as well as pointers to the installed nre-core, OS, and JVM, each by version. Essentially, a backup dist provides a configuration snapshot of the entire JACE platform in zipped dist file format. This allows for a complete image restoration. Note: Not included in a backup is runtime data that is actively managed by the station, such as the alarm and history databases. This data should be backed up using standard alarm routing and history archiving to a Supervisor host.
NiagaraAX-3.x User Guide
134
To restore a backup dist from Workbench, you open a platform connection to the JACE, then use the platform Distribution File Installer to install. Restoring from a backup may be necessary if the host hardware was replaced. The default view of a stations BackupService is the BackupManager, which provides a Backup button to manually initiate a backup. A backup automatically performs a local station save first, and is run as a standard station Job. This means each backup provides a progress bar, and upon completion, a popup notification. Under the stations JobService, any backup appears as a Fox Backup. BackupService configuration Configuration lets you define the file types and/or folders not included in a station backup. The services property sheet provides the following properties for configuration: Enabled Either true (default) or false. Currently, this setting makes no difference (manual backup still possible even if service has disabled status). Exclude Files Specifies file types to exclude from the backup dist, either by name or extension (each delimited by ;). By default, the following files are excluded:
*.hdb;*.adb;*.lock;*backup*;console.*;config.bog.b*;config_backup*
Exclude Directories Specifies station subdirectories to exclude from the backup dist, using relative ORD syntax. An ORD chooser control provides a Directory Chooser dialog in which you can select station subfolders. By default, the following subfolders are excluded: file:^history, file:^alarm
baja-Category
Each Category represents a custom logical grouping, and has a unique category index number. You can assign components, files, and histories to one or more categories. All categorizable components have a CategorySheet view, which shows you that components stored category memberships (CategoryMask).
135
Categories reside under the stations CategoryService, which has views CategoryBrowser and CategoryManager. Categories play an integral role in station security, where you can give users permissions for some (or all) categories. For a general review, see Security model overview on page 9-1.
baja-CategoryService
The CategoryService is the station container for all Category(ies), which represent logical groupings to which you can assign components, files, and histories. The default view of this service, the CategoryBrowser, lets you centrally assign different objects to categories, using an expandable tree view of the station. The CategoryService also provides a CategoryManager view, for you to create, edit and delete categories. Categories play an integral role in station security, where you can give users permissions for some (or all) categories. By default, the CategoryService is included when you create a new station using the New Station wizard. For more CategoryService details, see CategoryService on page 9-20.
baja-Component
Component is the required base class for all Baja component classes. The Component is available in the baja Module. Using Containers Containers allow you to logically group Components. The current container is the Component that contains the Components in the display window. A container may be selected as the current container by one of the following methods: Double-click the Component in the tree view. Right-click the Component in the tree view (which brings up the menu) and select a view. Right-clicking the Component in WireSheet (which brings up the menu) and select a view. The Container Components include the following: Component can be used as a general container for Components. It allows you to place Components and links in a container. Page is a special Component used to created a map of name/Ref pairs as dynamic slots. DataFile represents a DataFile in the file system of a session.
baja-DataFile baja-Directory
Directory is used to represent Directories in File space implementations.
baja-FileSystem
FileSystem is a FileSpace for the local machine's File system.
baja-Folder
Folder is a special Container designed to store objects. The Folder is available in the baja Module.
baja-Format
Format is used to format Objects into Strings using a standardized formatting pattern language. The format String is normal text with embedded scripts denoted by the % percent character (use %% to insert a real %). A script is one or more calls chained together using the . dot operator. Calls are mapped to methods using reflections. Given call "foo", the order of reflection mapping is: special call (see below) getFoo(Context) getFoo() foo(Context) foo() get("foo") The following special functions are available to use in a script: time() calls Clock.time() to get current time as an AbsTime lexicon(module:key) gets the specified lexicon text Examples of formats: "hello world" "my name is %displayName%" "my parent's name is %parent.displayName%" "%value% {%status.flagsToString%} @ %status.priority%" "%time().toDateString%" "%lexicon(bajaui:dialog.error)%" Format is available in the baja Module.
136
baja-IpHost
IpHost is used to represent a host machine that is identified with an IP address. The hostname of an IpHost is either a a name resolvable via DNS or is a raw IP address.
baja-Job
A Job is used to manage a task that runs asynchronously in the background, but requires user visibility. Some example jobs include: StationSaveJob From a station save, either initiated manually or from the auto-save function (see PlatformServiceContainer configuration parameters on page 1-68). FoxBackupJob From a station backup (zip) to a remote PC, see BackupService. Many drivers also have various job types too. For example, the NiagaraDriver includes a StationDiscoveryJob and NiagaraScheduleLearnJob. Every job finishes displaying one of the following status descriptors: Success Job completed successfully. Canceled Job canceled by user. Failure Job failed to complete. Completed Job completed. Also, if you have the station open in Workbench, you see a momentary notification popup in the lowerright corner of your display. You can monitor and cancel a job from within the particular view where you initiated it, or centrally from the JobServiceManager view of a stations JobService. You can also open a Jobs side bar to see all jobs in all opened stations (see Using the jobs side bar on page 12-9). Regardless of how you access jobs, note the following: To see details on a job, click the >> button next to its status descriptor. A popup Job Log dialog displays all the interim steps about the job, including timestamps and relevant messages. To dispose of a job, click the close (X) button to remove it from the station. Note: All jobs in a station are cleared upon a station restart.
baja-StationSaveJob
This component appears as a child of the job service and displays the following properties relative to the save job: Job State indicates which of the following states the save job is in currently: unknown, running, canceling, canceled, success, failed. Progress indicates a percentage (0-100) of progress toward completing the job. Start Time displays the time that the job started. Heart Beat Time displays the time of the last indication that the job is alive. End Time displays the time that the job ends baja-Job. baja-JobService Note: All jobs in a station are cleared upon a station restart.
baja-JobService
The JobService contains Jobs that were executed by different processes in the station. Each job appears as a child component. By default, the JobService is included when you create a new station using the New Station wizard. The default view of the JobService is the JobServiceManager. Note: All jobs in a station are cleared upon a station restart.
baja-LocalHost
LocalHost represents the root of the Baja local Host namespace. The LocalHost is available in the baja Module.
137
baja-Module
Module encapsulates a Baja software Module which is packaged and delivered as a JAR file with a "meta-inf/module.xml" description. Modules are the unit of software deployment in the Baja architecture. Module names must be one to 25 ASCII characters in length and globally unique. Modules is available in the ModuleSpace (called Modules under My Computer).
baja-ModuleSpace
ModuleSpace is the Container for Modules which are keyed by their Module name. The ModuleSpace is available as Modules under My Computer.
baja-Permissions
Permissions are a property used to define the permissions given to a users PermissionsMap.
baja-PermissionsMap
Defines the security permissions to grant to a user. Permissions are added as dynamic properties with the name matching a Category and the value an instance of permissions. For more details, see Permissions and security on page 9-5 and About permission levels on page 9-6. If a user has been configured as a super user, then all permissions are automatically granted to all categories.
baja-PxView
PxView a dynamic view which may be added to Components as a property or by overriding getAgents(). PxViews store the view contents in an XML file with a px extension. The view itself is defined as a tree of bajaui:Widgets. The PxView is available in the baja Module.
baja-ServiceContainer
ServiceContainer provides a component to store services. The ServiceManager is its primary view. The ServiceContainer is available in the baja Module.
baja-Spy
Spy is an Object wrapper for an instance of Spy.
baja-Station
Station is the component which represents a Station in the Baja framework. See Station in the Developer Guide for more information. The Station is available in the baja Module. Station Save Save the current state of the system to persistent storage. You should regularly backup your station or stations using the Save Action on the station.
baja-UnrestrictedFolder
UnrestrictedFolder is a special container designed to store objects for use on a palette. Normal isParentLegal() checks are not applied to UnrestrictedFolders. The UnrestrictedFolder is available in the baja Module.
baja-User
User is the component that represents a station connection, typically a specific person who needs to access the system. Users are children of the stations UserService. Starting in AX-3.3, User components are also children of the UserServices UserPrototypes container, to allow centralized user support. For more details, see the following sections: Users and security on page 9-2 User on page 9-16 (all properties) UserService security notes on page 9-8 Also, see Security model overview on page 9-1.
baja-UserPrototypes
UserPrototypes is a frozen container on a stations UserService, visible starting in AX-3.3 and later. It contains a single frozen Default Prototype user, as well as any additional users needed for support of centralized users in the stations NiagaraNetwork. For more details, see Users and security on page 9-2.
baja-UserService
UserService is the service you use to add, edit, delete, and otherwise manage users of the station. The UserManager is its primary view. Also available is a PermissionsBrowser view, in which you can review and change permissions for any users assigned Category(ies). See Users and security on page 92 and UserService on page 9-12 for more details. The UserService is available in the baja module. By default, the UserService is included when you create a new station using the New Station wizard.
NiagaraAX-3.x User Guide
138
Note: To facilitate user management, the UserService component has a unique permissions scheme. See UserService security notes on page 9-8 for details.
baja-Vector
Vector is a dynamic Struct which allows Properties to be added at runtime. Vector is available in the baja Module.
baja-VirtualComponent
A VirtualComponent is the Baja base class for implementations of transient (non-persisted) components that reside in the stations virtual component space, as defined by a VirtualGateway. Initial applications of virtual components are expected in various drivers for NiagaraAX. For a general explanation about Baja virtual components, see the Virtual Gateway component on page 4-21. Note: NiagaraAX 3.2 or higher is required for virtual components.
baja-VirtualGateway
A VirtualGateway is the Baja base class for a component that resides under the stations component space (Config), and acts as a gateway to the stations virtual component space. Note other object spaces are Files and History. Initial applications of virtual gateways are expected in NiagaraAX drivers. For a general explanation, see the Virtual Gateway component on page 4-21. Note: NiagaraAX 3.2 or higher is required for virtual gateways and virtual components.
baja-WsTextBlock
WsTextBlock is a Niagara specific Component used to visualize text blocks on a WireSheet.
baja-ZipFile
ZipFile represents a ZipFile in the File system of a session.
bajaui-BorderPane
BorderPane provides a border content for a widget similar to the CSS Box Model. Margin defines the space between the bounds and the border. Padding defines the space between the border and the child bounds. Border defines the look and width of the border around each of the sides.
139
bajaui-Bookmark
Bookmark provides a bookmark.
bajaui-BoundTable
BoundTable is a Table implementation that is ready to use with TableBindings to populate its model.
bajaui-Button
Button is a control button which fires an action when pushed.
bajaui-CanvasPane
CanvasPane is commonly used to provide absolute layout using Layout for most Widgets and Geom for Shapes. CanvasPane also provides support for scaling and/or aligning its contents.
bajaui-CheckBox
CheckBox is a specialized ToggleButton which displays its label next to a box which can be checked and unchecked.
bajaui-ConstrainedPane
ConstrainedPane is a pane with a constrained size. It allows the pane to be restricted by minimum width, maximum width, minimum height, and maximum height.
bajaui-EdgePane
EdgePane is a container with a layout like the java.awt.BorderLayout. It only supports five potential children in the frozen slots top, bottom, left, right, and center. The top and bottom widgets fill the pane horizontally use their preferred height. The left and right widgets use their preferred width, and occupy the vertical space between the top and bottom. The center widget gets all the remainder space. Any of the widgets may be a NullWidget.
bajaui-Ellipse
Ellipse renders a ellipse geometry.
bajaui-ExpandablePane
ExpandablePane contains two widgets. A summary widget is displayed all the time, with a button to the right used to expand and collapse the pane. When expanded, the expansion widget is displayed under the summary.
bajaui-FlowPane
FlowPane lays out its children from left to right and top to bottom fitting as many children as possible in each row. It is based on the java.awt.FlowLayout.
bajaui-GridPane
GridPane provides flexible layout based on a grid with a predefined number of columns. Cells are laid out left to right, flowing to the next row based on the columnCount property. Row height is determined by the max preferred height of the widgets in the row. If uniformRowHeight is true then all row heights are sized using the max row. Column width is determined by the max preferred width of the widgets in the column. If uniformColumnWidth is true then all column widths are sized using the max column. If rowLayout is set to fill then all widgets in a given row are sized to fill the row height. Otherwise the widgets use their preferred height and are aligned accordingly. If columnLayout is set to fill then all widgets in a given column are sized to fill the column width. Otherwise the widgets use their preferred width and are aligned accordingly. The columnGap field specifies how many pixels to leave between columns. The rowGap field specifies how many pixels to leave been rows. By default if the actual space of the pane is bigger than the preferred size, then the horizontalPaneAlignment and verticalPaneAlignment fields determine where to put the extra space. Or the stretchColumn and stretchRow properties may be used to indicate that a specific column or row should be stretched to fill the additional space. Enabling the stretch feature trumps pane alignment. If the colorRows field is true then alternating rows are shaded to produce a stripped effect.
bajaui-HyperlinkLabel
The HyperlinkLabel has the same properties as the Label (see bajaui-Label), plus an ORD property that allows you to assign an ORD to the label. When an ORD path is supplied for this property, the HyperlinkLabel causes a mouse cursor to change to a standard link cursor and the component performs a hyperlink when clicked.
1310
bajaui-Label
Label is used to display text and/or an icon. Labels are always transparent, so their background is defined by their parent. Their preferred size is always an exact fit to contain the text and/or icon. Labels may be used by themselves to display information which cannot respond to user input, or they may be embedded in widgets such as Buttons.
bajaui-Line
Line renders a line between two points.
bajaui-NullWidget
The NullWidget is a place holder widget to use as a null property value. For example, NullWidgets are used in an EdgePane widget to hold a place for the Top, Left, Center, Right, and Bottom contents, as shown in the following illustration:
bajaui-RadioButton
RadioButton is a specialized ToggleButton which displays its label next to a circle which can be checked and unchecked. It is used with groups of other RadioButton's to provide an choice which is exclusive of other options.
bajaui-Rect
Rect renders a rectangle shape.
bajaui-Path
Defines a general path to draw or fill, using a model and string format based on the SVG path element.
bajaui-Polygon
Models a closed area defined by a series of line segments, using string format x,y,width,height.
bajaui-PxInclude
This widget provides a way for users to embed a single Px file in another Px file. The PxInclude widget is located in the NiagaraAX-3.3 bajaui palette. Refer to About the PxInclude Widget.
bajaui-ScrollPane
ScrollPane layouts one child using a viewport which may be scrolled to view the entire child's actual size.
bajaui-Separator
Separator is used in ToolBars and Menus to provide a visible separator between groups of buttons.
bajaui-Slider
Slider provides a visual slider which is used to select and integer or floating point value between a fixed range.
bajaui-SplitPane
SplitPane is a pane with a divider between two child widgets. The children can be laid out horizontally or vertically.
bajaui-TabbedPane
TabbedPane is a container which displays a set of LabelPane children one at a time using a set of "tabs" to select the currently displayed child. The LabelPane's label is used to label each tab, and the content of the current selection fills the rest of the pane.
bajaui-TextEditorOptions
The TextEditorOptions stores the options used to configure text entry. The Status Colors options allow you to view and change the following (default):
NiagaraAX-3.x User Guide
Show Spaces (false) Show Tabs (false) Show Newlines (false) Tab To Space Conversion (2)
1311
Show Margin (0) Color Coding Foreground (00 00 00 black) Whitespace (c0 c0 c0 gray) Number Literal (80 00 80 purple) String Literal (80 00 80 purple) Identifier (00 00 00 black) Keyword (00 00 ff blue) Preprocessor (80 00 00 maroon) Bracket (ff 00 00 red) Line Comment (00 80 00 green) Multi Line Comment (00 80 00 green) Non Javadoc Comment (80 80 80 dark gray) Key Bindings (with default) Move Up Up Move Down Down Move Left Left Move Right Right Page Up PageUp Page Down PageDown Line Start Home Line End End Document Start Ctrl + Home Document End Ctrl + End Word Left Ctrl + Left Word Right Ctrl + Right Cut Ctrl + X Copy Ctrl + C Paste Ctrl + V Undo Ctrl + Z Redo Ctrl + Alt + Z Delete Delete Backspace Backspace Cut Line Ctrl + Y Delete Word Ctrl + Delete Tab Forward Tab Tab Back Shift + Tab Toggle Slash Slash Esc Word Wrap Ctrl + W Goto Line Ctrl + G Find F5 Find Next Ctrl + F Find Prev Ctrl + Shift + F Replace F6 Reload Macros Ctrl + M Select All Ctrl + A Undo Navigation (true) Match Parens (true) Match Braces (true) Match Brackets (true) These are stored under /user/{user}/textEditor.options.
bajaui-ToggleButton
ToggleButton provides a two-state widget which may be selected and unselected.
bajaui-ValueBinding
ValueBinding is used to bind to Values typically under a Component. Widget properties may be overridden by creating dynamic slots of the same name with a Converter that maps the bound target to the property value.
1312
chart-BarChart chart-ChartCanvas
ChartCanvas is the canvas widget under a ChartPane.
chart-ChartHeader
ChartHeader is the header widget under a ChartPane.
chart-ChartPane
ChartPane is the container widget created when adding a Px chart.
chart-DefaultChartLegend
DefaultChartLegend is the legend widget under a ChartPane.
chart-LineChart
One of two chart types available (the other is BarChart).
control-BooleanPoint
BooleanPoint is a basic read-only control point, with default slots: Facets, Out, and ProxyExt. See About control points on page 3-1 for details. The BooleanPoint is available in the Points folder of the control palette.
control-BooleanWritable
BooleanWritable extends BooleanPoint to include 16 levels of command priority control. The highest priority active command is reflected in the out property. Commands at the emergency and manual levels (1 and 8) are stored persistently. See About control points on page 3-1, and About writable points on page 3-24 for more details. The BooleanWritable is available in the Points folder of the control palette.
control-DiscreteTotalizerExt
DiscreteTotalizerExt is a control point extension for accumulating runtime and change of state counts on binary or enum values. Two actions are available to clear (zero) accumulated totals, ResetChangeOfStateCount and ResetElapsedActiveTime. The DiscreteTotalizerExt is available in the Extensions folder of the control palette.
control-EnumPoint
EnumPoint is a basic read-only control point, with default slots: Facets, Out, and ProxyExt. See About control points on page 3-1 for details. The EnumPoint is available in the Points folder of the control palette.
1313
control-EnumWritable
WritableEnumPoint extends EnumPoint to include 16 levels of command priority control. The highest priority active command is reflected in the out property. Commands at the emergency and manual levels (1 and 8) are stored persistently. See About control points on page 3-1, and About writable points on page 3-24 for more details. The EnumWritable is available in the Points folder of the control palette.
control-NullProxyExt
NullProxyExt is the default implement AbstractProxyExt used to indicate that a point is not a Proxy. The NullProxyExt is available in the control Module Extensions Directory.
control-NumericPoint
NumericPoint is a basic read-only control point, with default slots: Facets, Out, and ProxyExt. See About control points on page 3-1 for details. The NumericPoint is available in the Points folder of the control palette.
control-NumericTotalizerExt
NumericTotalizerExt is a control point extension used for integrating a numeric point value over time. For example, a totalizer with a minutely totalization interval can convert an instantaneous flow reading in cubic feet per minute (cfm) into a value representing total cubic feet consumed. An available resetTotal action clears (zeroes) any accumulated total. The NumericTotalizerExt is available in the Extensions folder of the control palette.
control-NumericWritable
NumericWritable extends NumericPoint to include 16 levels of command priority control. The highest priority active command is reflected in the Out property. Commands at the Manual and manual levels (1 and 8) are stored persistently. See About control points on page 3-1, and About writable points on page 3-24 for more details. The NumericWritable is available in the Points folder of the control palette.
control-StringPoint
StringPoint is a basic read-only control point, with default slots: Facets, Out, and ProxyExt. See About control points on page 3-1 for details. The StringPoint is available in the Points folder of the control palette.
control-StringWritable
StringWritable extends StringPoint to include 16 levels of command priority control. The highest priority active command is reflected in the Out property. Commands at the Manual and manual levels (1 and 8) are stored persistently. See About control points on page 3-1, and About writable points on page 3-24 for more details. The StringWritable is available in the Points folder of the control palette.
control-TimeTrigger
TimeTrigger is a component that fires a topic at configured times. It is available configured as both Interval or Daily in the Trigger folder of the control palette.
converters-EnumToSimpleMap
crypto-CryptoService
1314
crypto-SslProvider
Provides SSL configuration. Modification of the properties here will not modify a keystore. In other words, the properties here must mirror the already existing keystore. For more details, see Bajadoc at BSslProvider.bajadoc.
devkit-LexiconOptions
driver-ConfigRule
ConfigRule is used to determine the configuration overrides for histories when they are exported to the station. By default, the parent container HistoryNetworkExt (History Policies) contains only a single ConfigRule, named Default Rule. Default settings are to configure all histories exported to the station as unlimited capacity. For more details, see Config Rules on page 4-53 and About History Policies on page 4-52.
driver-DelimitedFileImport
DelimitedFileImport is a history file import descriptor used to create a Niagara history based upon data in a (local) delimited text file, such as comma-separated-values (CSV) or tab-delimited values (delimiter to use is configurable). These import descriptors reside under the HistoryNetworkExt (Histories extension) of a FileDevice in a FileNetwork. You use the Delimited File Import Manager view of the Histories extension to add history file import descriptors. Note: This import descriptor is similar to the ExcelCsvFileImport descriptor, but uses a dumb string tokenizer to parse each line of the specified file, and separates table columns based solely on the specified delimiter. Only non-complex CSV files should be imported using it, or any non-CSV delimited file (such as tabdelimited, for example). For any CSV file created by Microsoft Excel, use the ExcelCsvFileImport descriptor instead. This import descriptor has properties common among all history import descriptors, such as Name, History Id, and so on. See History Import properties on page 4-38. For other configuration properties, see Properties of history file import descriptors on page 13-16.
driver-DriverContainer
DriverContainer is used by convention to store all DeviceNetworks in a station database. The DriverManager is its primary view. See About the Driver Manager on page 4-4.
1315
driver-ExcelCsvFileImport
ExcelCsvFileImport is a history file import descriptor used to create a Niagara history based upon data in any (local) comma-separated-values (CSV) text file created by Microsoft Excel. These history file import descriptors reside under the HistoryNetworkExt (Histories extension) of a FileDevice in a FileNetwork. You use the DelimitedFileImportManager view of the Histories extension to add history file import descriptors. Note: This import descriptor is similar to the DelimitedFileImport descriptor, but assumes CSV data specifically created by Microsoft Excel (it lacks the Delimiter property). This allows complex CSV-delimited data to be successfully imported, using the special rules of Excel CSV generated files. For any other type of delimited data (for example, tab-delimited or pipe-delimited), use the DelimitedFileImport descriptor instead. This import descriptor has properties common among all history import descriptors, such as Name, History Id, and so on. See History Import properties on page 4-38. See the next section Properties of history file import descriptors for other configuration properties. Properties of history file import descriptors History file import descriptors (DelimitedFileImport, ExcelCsvFileImport) have the following set of configuration properties, which appear in the New and Edit dialogs for the descriptors: Value Facets Lets you specify the units with which to display values imported from the delimited file. On the import descriptors property sheet, this is property is found under Config Overrides. Time Zone Lets you specify the timezone for the imported history. On the import descriptors property sheet, this is property is found under Config Overrides. File (Important) Identifies the local delimited file to import, using standard ord file syntax. Typically, you simply click the folder icon to open the File Chooser, and navigate as needed to click-select an absolute file ord path to the file. Of, if the parent FileDevice has a non-null Base Ord property (specifying a directory), you can type in a file name or file path relative to that directory, using the following ord syntax:
file:fileName or filePath/toFileName
Full Import On Execute Default is disabled. If set to enabled, the entire history is re-filled afresh upon each import. If left at default, only new data is appended to the history upon every import. Row Start Along with Row End, lets you specify the start and end rows (lines) in the file to use for importing. Note that both properties are zero-based, meaning that a Row Start of 1 means that it skips the first line (usually column headers), and begins importing on the second line. Row End See Row Start, above. Row End is optional, and defaults to go to the end of the file (none). Delimiter (appears only if a DelimitedFileImport descriptor) Specifies the text character used in the file to separate columns. For any ExcelCsvFileImport descriptor, a comma (,) is used by default. Timestamp Column Index (Required, zero-based) Left-to-right index of the column in the file used to import the timestamp. For example: if first column, this value is 0; if second column, this value is 1; and so on. Timestamp Format (Required) String that specifies how timestamps are formatted in the file. A drop-down control lets you select among several common formatsafter selection, you can further edit if necessary (may be necessary if you execute, and the descriptor is in fault). For timestamp format details and examples, see http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html Value Column Index (Required, zero-based) Left-to-right index of the column in the file used to import the value. For example: if the second column, this value is 1; if the fifth column, this value is 4; and so on. Value Format Specifies the value type, meaning the type of history record to create, as one of the following: Numeric Type (default) for a numeric type history. String Type for a string type history. Boolean Type for a boolean (two-state) type history. Status Column Index (Usage optional). The left-to-right index (zero-based) of the column in the file used to import the status, if available. Note that the imported status value must match the Niagara status bits impleNiagaraAX-3.x User Guide
1316
mentaton in encoded-integer format, using the following decimal equivalent values (either singly, or in the case of non-zero values in combinations): 0 - ok 1 - disabled 2 - fault 4 - down 8 - alarm 16 - stale 32 - overridden 64 - null 128 - unackedAlarm Identifier Column Index (Usage optional). The left-to-right index (zero-based) of the column in the file used to filter rows for inclusion, in combination with the Identifier Pattern property value (below). Default value is None (no row filtering). Identifier Pattern (Usage optional). Specifies the text string in the Indentifier Column (above) that is searched for in all rows, where any row with the matching text string is imported. Note that wildcard (*) characters are supported. Default if value is * (everything matched).
driver-FileDevice
FileDevice is the AX-3.1 device level container to import local delimited-type files (such as CSV) as Niagara histories. It resides under the FileNetwork. It has common device properties (see Device status properties on page 4-20) and Health and Alarm Source Info slots. The FileDevices only device extension, and most important child slot, is the FileHistoryDeviceExt (Histories), under which you add file import descriptors. The sole configuration property of importance is Base Ord, where you can select a specific local directory (use drop-down control beside folder icon, choose Directory Chooser). This allows you to enter relative file ord values in the File property of history file import descriptors (under its child Histories extension). Otherwise (using the default null Base Ord), you specify absolute File ord values in child descriptors. For related details, see Properties of history file import descriptors. Note: Typically, a FileNetwork is configured with only a single FileDevice, with a default null value Base Ord property. However, if you wish to impose some logical grouping, you can create multiple FileDevices, and use the Base Ord scheme (with different directory ords) to separate import descriptors by source. Note: Unlike many fieldbus drivers, there is no frozen LocalFileDevice in a FileNetworkany FileDevice named LocalFileDevice is simply a standard FileDevice component.
driver-FileHistoryDeviceExt
FileHistoryDeviceExt is the driver module implementation of HistoryDeviceExt, and is the only device extension under a FileDevice. The default view is the DelimitedFileImportManager view, which you use to add new (or edit existing) file import descriptors. Each descriptor adds a Niagara history in the local history space.
driver-FileHistoryWorker
FileHistoryWorker manages the queue and and thread processing for history file import descriptors. It is a frozen slot of the FileDevice, and requires no configuration.
driver-FileNetwork
FileNetwork is available in the AX-3.1 driver module, and acts as the network level container for one or more FileDevice components. The FileDeviceManager is its primary view. The purpose of a FileNetwork is to import data from local delimited-type files (such as CSV), as Niagara histories. Often, a FileNetwork contains only a single FileDevice. Unlike in true field bus networks, the standard NiagaraAX driver architecture (network: device: device extensions) provides no real hardware equivalency, this is simply a modeling convention. Figure 13-1 shows the architecture of a FileNetwork in the Nav tree, where the active (and most used) view is the DelimitedFileImportManager view of the Histories extension (FileHistoryDeviceExt) of the FileDevice.
1317
Figure 13-1
Note that a FileDevice has none of the other standard device extensions (Points, Schedules, or Alarms). See Usage notes for more details on a File Network. Usage notes The following notes apply to using a FileNetwork. The FileNetwork requires special licensing in the hosts Tridium (Vykon) licenserequiring the feature fileDriver. This feature may also contain a history.limit=n attribute, which defines the number of files that can be imported as histories (number of history file import descriptors). Without proper licensing, the FileNetwork and child components will have a fault status, and files will not import as Niagara histories. Specific requirements must be met by each delimited text file for successful import, namely: It must have a single timestamp column that contains both date and time. Note this means if a delimited file has two columns: one for date and another for time, you must perform external upstream processing (outside of Niagara) to combine into a single column, before importing. It must have a single column that contains the value required in the imported history. Note that when configuring the history file import descriptor, you specify the Value Format as one of several types (Numeric, String, Boolean). Value Facets are also available in the descriptor. Optionally, it may also have a single column to use as Status in the historyhowever, this column must contain integer data (only) with values enumerated based upon Niagara status bits values. See Properties of history file import descriptors on page 13-16 for related details. Note the status import feature may be used mainly with data that first originated from a Niagara history (that was exported to CSV), then subsequently manipulated outside of Niagara. Typically, FileNetwork usage applies more to an AxSupervisor (PC) host versus a JACE host, as it is more likely to contain text-delimited files needed for import as Niagara histories. In particular, it may be used with an AxSupervisor serving Energy Services reports to remote clients.
driver-HistoryNetworkExt
HistoryNetworkExt (History Policies) manages network-level functions for histories that are exported to the station. Its is the container of the rules (ConfigRules) that specify how the configuration of the local history (archive) should be set when the history is pushed (exported) into the station. Configuration rules are applied only when the history is created, that is, when first archived to the station. Changing a rule has no effect on existing histories. For more details, see About History Policies on page 4-52.
1318
driver-PingMonitor
The PingMonitor periodically calls ping on all the pingables to monitor network and device health. PingMonitor provides built-in support to generate alarms when pingables are down. The PingMonitor is available in the property sheet of most networks as Monitor. See About Monitor on page 4-7 for more details.
driver-SendTimer
This class file provides support for max and min send time on components implementing the TimedWrites interface. The sendTimer will identify a SendTimes object in the parent path. The first SendTimes encounter walking up from the immediate parent will be used. If no SendTimes object is found then calls to newChange() will result in an single immediate call to sendWrite() on the parent. The SendTimer is available in the driver Module.
driver-SendTimes
This class file provides the means to configure max and min send times for components implementing the TimedWrites interface and containing SendTimer object. The SendTimes is available in the driver Module.
driver-TuningPolicy
Contains a collection of properties typically used in the driver networks evaluation of both write requests (e.g. to writable proxy points) as well as the acceptable freshness of read requests. Also, can associate with one of 3 Poll Rates in the networks Poll Service. You can create multiple TuningPolicies under a drivers TuningPolicyMap. You can then assign one or more proxy points to a specific TuningPolicy. SeeAbout Tuning Policies on page 4-8 for more details.
driver-TuningPolicyMap
Container for one or more TuningPolicy(ies), found in the property sheet of most network components. You can create multiple TuningPolicies under a networks TuningPolicyMap. You can then assign one or more proxy points to a specific TuningPolicy. SeeAbout Tuning Policies on page 4-8 for more details.
email-Email email-EmailRecipient
The top-level email Messaging service. This service manages the routing of all email messages from message sources to message recipients. The EmailRecipient is available in the email palette. Actions Actions include RouteAlarm. RouteAlarm RouteAlarm routes the alarm.
email-EmailService
EmailService manages the life-cycle of Email. The EmailAccountManager is its primary view. The EmailService is available in the email palette.
email-IncomingAccount
IncomingAccount is a Email that receives mail. A number of properties specify the SMTP host, port, and user credentials to use, as well as other parameters. The IncomingAccount is available in the email palette.
email-OutgoingAccount
OutgoingAccount is a Email that sends mail. A number of properties specify the SMTP host, port, and user credentials to use, as well as other parameters. A Max Sendable Per Day property can limit the number of station-generated emails, where the default value is 100. The OutgoingAccount is available in the email palette.
1319
file-ApplicationFile file-AudioFile
AudioFile stores an audio file.
file-BajadocFile
BajadocFile represents Bajadoc documentation. Bajadoc is a special file that can describe components in a database.
file-BogFile
BogFile represents a BogFile in the file system of a session. A Bog File is a special file that can describe Components in a Database.
file-BogScheme
BogScheme represents a BogScheme in the file system of a session. A Bog File is a special file that can describe Components in a Database.
file-BogSpace
BogSpace represents a BogSpace in the file system of a session. A Bog File is a special file that can describe Components in a Database.
file-CFile
CFile stores a c source file.
file-CssFile
CssFile stores a CSS cascading style sheet.
file-ExcelFile
ExcelFile stores a Microsoft Excel file.
file-GifFile
GifFile stores a GIF image.
file-HtmlFile
HtmlFile stores HTML markup.
1320
file-ImageFile
ImageFile stores an image.
file-JavaFile
JavaFile stores a java source file.
file-JpegFile
JpegFile stores a JPEG image.
file-NavFile
NavFile stores XML nav markup.
file-PaletteFile
Palette file is just a Bog File file with a different extension and icon.
file-PdfFile
PdfFile stores a Adobe PDF file.
file-PngFile
PngFile stores a PNG image.
file-PowerPointFile
PowerPointFile stores a Microsoft PowerPoint file.
file-PrintFile
PrintFile stores XML Print markup.
file-PxFile
PxFile is just a Bog File file with a different extension and icon.
file-TextFile
TextFile stores plain text.
file-VideoFile
VideoFile stores an video file.
file-VisioFile
VisioFile stores a Microsoft Visio file.
file-WordFile
WordFile stores a Microsoft Word file.
file-XmlFile
XmlFile stores an xml file.
fox-FoxClientConnection
FoxClientConnection encapsulates a FoxSession connection. You must setup the Address, Username and Password in order to access a remote station. The FoxClientConnection is available in the fox Module. Actions You can manually force/test a connection using Manual Connect and Manual Disconnect actions.
fox-FoxFileSpace
FoxFileSpace maps "File:" remotely.
fox-FoxServerConnection
FoxServerConnection encapsulates a Fox (client) session connection to the stations Fox server. It represents user access (vs. access from another station). Child slots provide the connection state as well as various historical data about last connect and disconnect activity. The FoxServerConnection is available in the fox module.
NiagaraAX-3.x User Guide
1321
Components in gx module
fox-FoxService
FoxService is the Baja Component wrapper for the FoxServer daemon. It is commonly used within a NiagaraNetwork, but can be used stand alone to provide basic Fox accessibility.
fox-FoxSession
FoxSession is a host's session using a fox connection to a specific port.
fox-ServerConnections
ServerConnections is the container slot to store the current server-side FoxServerConnections from non-station clients. The primary view is the ServerConnectionsSummary. The ServerConnections is available in the fox module.
Components in gx module
Brush Brush is used to change presentation. The Brush is available in the gx Module.
gx-Brush
help-BajadocOptions
1322
history-AuditRecord
The AuditRecord keeps a History of changes made by users. If enabled, it registers itself as the Auditor for the system when the service is started. The AuditRecord is available in the History Module under the HistoryService.
history-AuditHistoryService
The AuditHistoryService keeps a history of changes made by users. If enabled, it registers itself as the auditor for the station when the service is started. The AuditHistoryService is available in the history palette. One of the important aspects of security is the ability to analyze what has happened after the fact. The Niagara Component model is designed to audit all property modifications and all Action invocations. Auditable actions include: Property changed Property added Property removed Property renamed Properties reordered Action invoked Component modifications are only audited when the modification method is passed a non-null Context with a non-null User. The History Module includes a standard implementation of an audit trail stored to a History Database File.
history-HistoryPointList
This component is available in the history module. It is a container that holds the history-HistoryPointListItem components that you add to it. The default view of this component is the Live History Chart view. The property sheet view is where you configure the HistoryPointList properties. The HistoryPointList component properties include the following; Max Samples Defines the maximum number of samples to store for each history extension displayed. Time Window Defines the time range to display on the Time Axis while viewing the live chart. If the chart is "zoomed" you will be able to pan and view all the collected data defined by Max Samples. Background Specifies the background color of the chart. The default setting is "null". Show Horizontal Grid Lines Shows (true) or hides (false) horizontal grid lines on the chart. Show Vertical Grid Lines Shows (true) or hides (false) vertical grid lines on the chart.
Note: If the Live History Chart view is invoked from a history extension, the following default property values are used to display the view: Max Samples value = 5000 Time Window value = 10 minutes Start Time = 0 hours 0 minutes Sample Rate = Auto In addition to the HistoryPointList properties, the property sheet view displays all associated HistoryPointListItem components below the properties. If the view is invoked from the History Point List component the items in the list can be selected/unselected and the view will update as needed. Refer to history-HistoryPointListItem and About the Live History Chart View for more information.
history-HistoryPointListItem
This component is available in the history module. Each HistoryPointListItem is linked to a single history extension and is configured in the Add Item dialog box or in the HistoryPointListItem property sheet. HistoryPointListItem configurable properties include the following. History Extension The Ord to the History Extension of the Control Point you wish to view. This MUST be the History Extension and NOT the Control Point or its corresponding History Component. Display On Startup Indicates whether or not to automatically display the chart for this item when the view first comes up.
1323
Start Time Indicates how much of the collected history data you wish to view. The time that is entered in this property will be subtracted from the current time to get the initial history data. Note: The following conditions apply: If no data is found within the given Start Time the LAST collected value is retrieved for the item. If the Start Time is 0 hours 0 minutes ALL collected history values is retrieved for the item. Sample Rate The rate at which to sample the "live" data. Auto This value follows the interval defined in the history extension configuration Fixed This value follows a defined interval that is specified by the user in terms of hours, minutes, and seconds. Cov: This value specifies that updates are plotted whenever there is a change of value. Min Value Range The minimum value to display on the value axis. Auto This value uses the minimum value from the data collected. Fixed This value uses the value specified by the user. This only applies to numeric points (Booleans and Enums do not use this property). Max Value Range This value is the maximum value to display on the value axis. Auto This value uses the maximum value from the data collected. Fixed This value uses the value specified by the user. This only applies to numeric points (Booleans and Enums do not use this property). Note: If Min Value Range and Max Value Range are Fixed AND have the same values charts may share the value axis. If these two conditions do not exist, additional value axes may be added to the chart, as needed. Line Color This value specifies the desired color for the plot line. Pen This value specifies the line-weight and type to use for the plot line. Item Name This value specifies the name that is displayed on the view. This name must be unique within the list of items.
Refer to history-HistoryPointList and About the Live History Chart View for more information.
history-BooleanCovHistoryExt
BooleanCovHistoryExt is a history extension that is used for recording on change of value for boolean point data. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
history-BooleanIntervalHistoryExt
BooleanIntervalHistoryExt is a history extension that is used for recording on intervals for boolean point data. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
history-ConfigRule
ConfigRule is used to determine the overrides for an existing history configuration. The ConfigRule is available in the history Module.
history-ConfigRules
ConfigRules is the container for rules that determine the configuration of histories that are pushed to the local device. Configuration rules are applied when a history is created. Changing a rule has no effect on existing histories. The ConfigRules is available in the history Module.
1324
history-CovAlgorithm
CovAlgorithm determines when to log a point's value according to change of value. The CovAlgorithm is available in the history Module Extensions Directory under some Change Of Value extensions as Collector.
history-EnumCovHistoryExt
EnumCovHistoryExt is a history extension used to record on a change of value for Enum point data. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
history-EnumIntervalHistoryExt
EnumIntervalHistoryExt is a history extension used to record on intervals for Enum point data. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
history-FoxHistory
FoxHistory is the implementation of BIHistory that works with the FoxHistorySpace.
history-FoxHistorySpace
FoxHistorySpace provides access to a History Database using the fox protocol.
history-HistoryConfig
HistoryConfig is the configuration for a History in the History Database.
history-HistoryDevice
HistoryDevice represents a source device for histories.
history-HistoryEditorOptions
The HistoryEditorOptions stores the options used to configure history options. These are stored under /user/{user}/textEditor.options.
history-HistoryId
HistoryId is a container for History id.
history-HistoryService
The History service provides http access to all histories in the Station. This service manages the History lifecycle, including creation and deletion. Additionally, HistoryService maintains the namespace for all Histories. As histories are created, they are added as slots to this service, and removed upon deletion. When the service is started, all existing histories are added to the service. Additionally, this service maintains global configuration for the histories. Each Station contains a single HistoryService. See the HistoryExtManager for more information on using histories. The HistoryService is available in the History Module. CloseUnusedHistories Close all Unused Histories in this service. FlushHistories Flush all histories managed by this service.
history-IntervalAlgorithm
IntervalAlgorithm logs a value periodically at a fixed interval. The IntervalAlgorithm is available in the history Module Extensions Directory under some Interval extensions as Collector.
history-LocalDatabaseConfig
LocalDatabaseConfig is the configuration for a LocalHistoryDatabase.
history-LogHistoryService
The LogHistoryService keeps a History of Niagara log records. If enabled, it registers itself as the LogHandler for the system when the service is started. The LogHistoryService is available in the History Module.
history-NumericCovAlgorithm
NumericCovAlgorithm determines when to log a numeric point's value according to change of value. The NumericCovAlgorithm is available in the history Module Extensions Directory under NumericChangeOfValue as Collector.
history-NumericCovHistoryExt
NumericCovHistoryExt is a history extension used to record on change of value for numeric point data. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
NiagaraAX-3.x User Guide
1325
history-NumericIntervalAlgorithm
NumericIntervalAlgorithm logs a numeric point's value according to a schedule. The NumericIntervalAlgorithm is available in the history Module Extensions Directory under NumericInterval as Collector. Actions Actions include and . Collect Collect a data point. CommenceCollection Start Collection in the algorithm.
history-NumericIntervalHistoryExt
NumericIntervalHistoryExt is a history extension used to record on interval for numeric point data. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension. Actions Actions include and . Collect Collect a data point. CommenceCollection Start Collection in the algorithm.
history-StringCovHistoryExt
StringCovHistoryExt is a history extension used for collecting a string control value on change of value. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
history-StringIntervalHistoryExt
StringIntervalHistoryExt is a history extension for collecting a string control value at intervals. This extension is available in the history Module Extensions Directory. Refer to Types of history extensions on page 3-14 for more information about this extension.
kitPx-ActionBinding
kitPx-ActionBinding invokes an action on the binding target component when an event is fired by the parent widget. The ORD of an action binding must resolve down to a specific action within a component. Additional information and related topics include: About action bindings on page 8-23 Types of bindings on page 8-18 Types of binding properties on page 8-19 kitPx-AnalogMeter is a widget that is designed to look and act like a analog meter. This component comes with a value binding that should be bound to a value by an ORD. Additional information and related topics include:
NiagaraAX-3.x User Guide
kitPx-AnalogMeter
1326
About Widgets on page 8-9 Types of bindings on page 8-18 Types of binding properties on page 8-19 kitPx-Bargraph is a widget that is designed to display a single value in a bar graph. In addition to action bindings, value and setpoint bindings are available.
kitPx-Bargraph
Additional information and related topics include: About value bindings on page 8-20 Types of bindings on page 8-18 Types of binding properties on page 8-19 To plot more than one value using a single widget (using a line chart), you can use a chart widget, as described in Create a Chart widget on page 8-45, or for history tables, About the history chart view on page 6-10.
kitPx-BackButton
kitPx-BackButton is designed for Touchscreen displays that require a larger button. This widget works like the standard workbench "Back" button that is located in the top left corner of the workbench user interface. The button is dimmed when no previous page has been visited and is enabled when a previous page is available to go back to when you click it. It is located in the kitPx palette and is pre-configured so that all you have to do is drag it onto a Px page and save the page for it for it to take effect. Additional information and related topics include: kitPx-ButtonGroup on page 13-27 kitPx-ExportButton on page 13-28 kitPx-ForwardButton on page 13-28 kitPx-LogoffButton on page 13-29 kitPx-BoundLabel is a widget that simply provides a label widget (see bajaui-Label on page 13-11) with a binding already available. Additional information and related topics include: About bound label bindings on page 8-20 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-BoundLabel
kitPx-BoundLabelBinding
kitPx-BoundLabelBinding is used exclusively for connecting a value to a bound label widget. Bound labels, which are located in the kitPx module, have properties that you can edit and access from the Px Editor properties side bar. Additional information and related topics include: About bound label bindings on page 8-20 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-ButtonGroup
kitPx-ButtonGroup is a widget that provides a convenient way to bind a group of buttons to a common boolean or enum point. This widget is comprised of a standard GridPane with a ButtonGroupBinding already available. The ButtonGroup properties are editable in the Px Editor properties side bar. Additional information and related topics include: kitPx-ButtonGroupBinding kitPx-ExportButton on page 13-28 kitPx-ForwardButton on page 13-28 kitPx-LogoffButton on page 13-29 Types of bindings on page 8-18 Types of binding properties on page 8-19
1327
kitPx-ButtonGroupBinding
kitPx-ButtonGroupBinding is used exclusively for connecting a value to a ButtonGroup widget. ButtonGroups, which are located in the kitPx module, have properties that you can edit and access from the Px Editor properties side bar. Additional information and related topics include: kitPx-ButtonGroup on page 13-27 kitPx-ExportButton on page 13-28 kitPx-ForwardButton on page 13-28 kitPx-LogoffButton on page 13-29 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-ExportButton
kitPx-ExportButton can be usede in Touchscreen displays that require a larger button. It works the same way as the Export button that is located on the workbench toolbar menu (opens the Export dialog box when clicked). The ExportButton widget is located in the kitPx palette and is preconfigured so that all you have to do is drag it onto a Px page and save the page for it for it to take effect. Additional information and related topics include: kitPx-BackButton on page 13-27 kitPx-ButtonGroup on page 13-27 kitPx-ForwardButton on page 13-28 kitPx-LogoffButton on page 13-29
kitPx-ForwardButton
kitPx-BackButton is designed for Touchscreen displays that require a larger button. This widget works like the standard workbench "Forward" button that is located in the top left corner of the workbench user interface. The button is dimmed when no forward page is available and is enabled when a page is available to go forward to when you click it. It is located in the kitPx palette and is pre-configured so that all you have to do is drag it onto a Px page and save the page for it for it to take effect. Additional information and related topics include: kitPx-BackButton on page 13-27 kitPx-ButtonGroup on page 13-27 kitPx-ExportButton on page 13-28 kitPx-LogoffButton on page 13-29 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-GenericFieldEditor
kitPx-GenericFieldEditor is a field editor that allows you to edit properties from a graphic view on non-specific fields. It is designed for layout on panes and is comprised of standard widgets like buttons, text fields, and check boxes. Specialized field editor widgets include: SetPointFieldEditor (see kitPx-SetPointFieldEditor on page 13-30). Additional information and related topics include: About field editor bindings on page 8-23 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-ActionButton (ImageButton)
kitPx-ActionButton is a button that uses images to display the state of the button. For example, the action button may have three separate images to indicate the normal, mouseOver, and pressed states. In addition to other properties, the image button includes the following distinctive properties: Mouse Over this property allows you to assign an image that appears when the mouse hovers over the button. Normal this property allows you to assign an image that appears when the button is not in a pressed or mouseOver state. Pressed this property allows you to assign an image that appears when the button is pressed.
1328
kitPx-RefreshButton on page 13-29 kitPx-SaveButton on page 13-29 bajaui-Button on page 13-10 bajaui-ToggleButton on page 13-12 kitPx-IncrementSetPointBinding is used to increment (increase) or decrement (decrease) a setpoint value.
kitPx-IncrementSetPointBinding
Additional information and related topics include: About increment setpoint bindings on page 8-22 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-LogoffButton
kitPx-LogoffButton is designed for Touchscreen displays that require a larger button. When clicked, this widget automatically initiates a logoff command and disconnects the current user from any active session. The Logoff button is located in the kitPx palette and is pre-configured so that all you have to do is drag it onto a Px page and save the page for it for it to take effect. Additional information and related topics include: kitPx-BackButton on page 13-27 kitPx-ButtonGroup on page 13-27 kitPx-ExportButton on page 13-28 kitPx-ForwardButton on page 13-28 Types of bindings on page 8-18 Types of binding properties on page 8-19
kitPx-RefreshButton
kitPx-RefreshButton is used to issue a refresh command when it is clicked. The Refresh text that appears on the button is included by default in the Text property. This button is designed to work well with Touchscreen displays that require a larger button. The Refresh button is located in the kitPx palette and is pre-configured so that all you have to do is drag it onto a Px page and save the page for it for it to take effect. See the following topics for related information about similar types of buttons: kitPx-BackButton on page 13-27 kitPx-ButtonGroup on page 13-27 kitPx-ExportButton on page 13-28 kitPx-ForwardButton on page 13-28
kitPx-SaveButton
kitPx is used to issue a save command when it is clicked. The Save text that appears on the button is included by default in the Save propertybut, like the other properties, it may be edited, as desired. See the following topics for related information about buttons: kitPx-ActionButton (ImageButton) on page 13-28 kitPx-RefreshButton on page 13-29 bajaui-Button on page 13-10 bajaui-ToggleButton on page 13-12
kitPx-SetPointBinding
kitPx-SetPointBinding is used to display the current value of a setpoint and also to provide the ability to modify it. The setpoint binding ORD must resolve down to the specific property that is being manipulated. Additional information and related topics include: About setpoint bindings on page 8-22 Types of bindings on page 8-18 Types of binding properties on page 8-19
1329
kitPx-SetPointFieldEditor
kitPx-SetPoinFieldEditor is a special field editor that is designed to allow you to edit setpoint values from a graphic view. It is designed for layout on panes and is comprised of standard widgets like buttons, text fields, and check boxes. For editing non-specific properties, use the kitPx GenericFieldEditor (see kitPx-GenericFieldEditor on page 13-28). Additional information and related topics include: About field editor bindings on page 8-23 Types of bindings on page 8-18 Types of binding properties on page 8-19
ldap-LdapClient ldap-LdapConfiguration
LdapConfiguration is a child of the LdapUserService that contains various properties that define the LDAP attribute and connection methods. LdapConfiguration is available in the ldap palette.
ldap-LdapUserService
LdapUserService allows users to be downloaded from an LDAP server. LDAP users are stored transiently and are hidden. If a non-transient user is found in the service at login, the LDAP server will not be queried. The primary view is the UserManager. The LdapUserService is available in the ldap Module.
net-InternetAddress
InternetAddress models an Internet address which is a composite of a hostname (or raw IP address) and a port number.
niagaraDriver-CyclicThreadPoolWorker
Available starting in AX-3.3, the CyclicThreadPoolWorker (Workers) slot of a NiagaraNetwork allows shared thread pool size tuning for large networks via a Max Threads property. By default, the value of this property is 50. If necessary, this can be adjusted. See NiagaraNetwork component notes on page 4-50 for further details.
1330
niagaraDriver-NiagaraAlarmDeviceExt
A NiagaraStations NiagaraAlarmDeviceExt (Alarms extension) specifies how alarms from that station are mapped into the current stations own alarm subsystem, plus provide status properties related to alarm sharing. For more details, see About the Alarms extension on page 4-26.
niagaraDriver-NiagaraFoxService
NiagaraFoxService is a specialization of FoxService that knows how to map server connections to the NiagaraStation serverConnection slot. NiagaraFoxService typically includes ServerConnections. For more details, see About the Fox Service on page 4-51.
niagaraDriver-NiagaraHistoryDeviceExt
NiagaraHistoryDeviceExt is the Niagara implementation of HistoryDeviceExt. For more details, see About the Histories extension on page 4-25 and About Histories extension views on page 4-37.
niagaraDriver-NiagaraHistoryImport
NiagaraHistoryImport defines the local import parameters for a remote Niagara history, including collection (pull) times, current status, local history Id, and config overrides. NiagaraHistoryImports reside under the History extension of a NiagaraStation in the NiagaraNetwork. For more details, see History Import properties on page 4-38.
niagaraDriver-NiagaraNetwork
NiagaraNetwork models NiagaraAX devices (NiagaraStations) that the current station can communicate with. The primary view is the StationManager. The NiagaraNetwork includes the NiagaraFoxService. For more details, see About the Niagara Network on page 4-50.
niagaraDriver-NiagaraPointDeviceExt
NiagaraPointDeviceExt is the Niagara implementation of PointDeviceExt. The primary view is the PointManager. For general information, see About the Points extension on page 4-25, and for specific details see About the Bql Query Builder on page 4-61 and Niagara proxy point notes on page 4-64.
niagaraDriver-NiagaraPointFolder
NiagaraPointFolder is the Niagara implementation of a folder under a NiagaraStations Points extension. You add such folders using the New Folder button in the PointManager view of the Points extension. Each NiagaraPointFolder has its own PointManager view.
niagaraDriver-NiagaraProxyExt
NiagaraProxyExt is the Niagara implementation of BProxyExt. For more details see About proxy points on page 3-18 and Niagara proxy point notes on page 4-64.
niagaraDriver-NiagaraScheduleDeviceExt
NiagaraScheduleDeviceExt is the Niagara implementation of a Schedules device extension. For general information, see About the Schedules extension on page 4-27, and for more specific details see Station Schedules import/export notes on page 4-66.
niagaraDriver-NiagaraScheduleImportExt
NiagaraScheduleImport defines the local import parameters for a remote Niagara schedule. For more details, see Station Schedules import/export notes on page 4-66.
niagaraDriver-NiagaraStation
NiagaraStation models a platform running a Niagara station including a JACE, SoftJACE, or AxSupervisor. The NiagaraStation name must map to Station.stationName. For more details, see NiagaraStation component notes on page 4-56. Ping Perform a ping test of the device.
niagaraDriver-NiagaraStationFolder
NiagaraStationFolder is the Niagara implementation of a folder under a NiagaraNetwork. You add such folders using the New Folder button in the StationManager view of the Niagara network. Each NiagaraStationFolder has its own StationManager view.
niagaraDriver-NiagaraTuningPolicy
Contains properties used in the NiagaraNetworks handling of both write requests (e.g. to writable proxy points) as well as the acceptable freshness of read requests of Niagara proxy points. You can create multiple tuning policies under the NiagaraNetworks NiagaraTuningPolicyMap. You can then assign one or more proxy points to a specific policy. SeeAbout Tuning Policies on page 4-8 for general information, and Niagara Tuning Policy notes on page 4-51 for specific details.
NiagaraAX-3.x User Guide
1331
niagaraDriver-NiagaraTuningPolicyMap
Container for one or more NiagaraTuningPolicy(ies), found in the NiagaraNetworks property sheet. If needed, you can create multiple tuning policies. You can then assign one or more Niagara proxy points to a specific policy.
niagaraDriver-NiagaraUserDeviceExt
(AX-3.3 or later only) The NiagaraUserDeviceExt (Users) container of a NiagaraStation holds properties that enable/configure network user synchronization in and out of this station, in relation to the station with its NiagaraNetwork. There is no special view (apart from property sheet) on this Users device extension, nor is it a container for other components. For more details, see About the Users extension on page 4-57.
program-Program
program-ProgramService
ProgramService is used to launch batch programs. The ProgramService is available in the program Module. Actions Actions include Run Robot.
pxeditor-NewPxViewDialog
rdb-RdbmsFolder
rdb-RdbmsNetwork
RdbmsNetwork models a network of BRdbms objects. It is available in the any of the rdb (relational database) palettes, such as rdbDb2, rdbOracle, and rdbSqlServer.
rdb-RdbmsWorker
RdbmsWorker manages the queue and worker for asynchronous operations on a single database. It is available under any of the rdb (relational database) types, such as Db2Database, OracleDatabase, and SqlServerDatabase.
rdbDb2-Db2Database rdbDb2-Db2HistoryDeviceExt
Db2HistoryDeviceExt is the Db2 implementation of HistoryDeviceExt. It is a child of a Db2Database.
1332
rdbOracle-OracleDatabase rdbOracle-OracleHistoryDeviceExt
OracleHistoryDeviceExt is the Oracle implementation of HistoryDeviceExt. It is a child of a OracleDatabase.
rdbSqlServer-SqlServerDatabase rdbSqlServer-SqlServerHistoryDeviceExt
SqlServerHistoryDeviceExt is the SqlServer implementation of HistoryDeviceExt. It is a child of an SqlServerDatabase.
report-ComponentGrid
The ComponentGrid allows you to define and design your report content (typically in the Grid Editor view). Use the component grid to link and layout the data that you want to put into your report. The ComponentGrid component is available in the Reporting folder of the report palette. Refer to About the ComponentGrid component on page 8-53 for more details.
report-EmailRecipient
The EmailRecipient component contains properties that allow you to specify where the report is to be emailed. The property sheet view displays the properties that you configure for this function. The EmailRecipient component is available in the Reports folder in the report palette. Refer to About the EmailRecipient component on page 8-53 for more details.
report-ExportSource
The ExportSource component allows you to define a report display source (typically a Px file) for exporting and it allows you to schedule a time that you want to export it. The property sheet view contains the properties that you configure for these functions. This component is available in the report palette. Refer to About the ExportSource component on page 8-53 for more details.
report-ReportPane
The ReportPane widget is available in the ReportWidgets folder of the Report palette. It provides a container for layout of Px page report views. The ReportPane has the standard Visible, Enabled, and Layout properties, but also has unique properties. Refer to About the ReportPane component on page 8-54 for more details.
report-ReportService
The report service is the parent, or container, for the ExportSource, EmailRecipient, and ComponentGrid components. In order to use the report service, copy the ReportService component from the Report module to the Services folder in the Workbench nav tree. It is available in the Reporting folder of the Report palette. Refer to About the ReportService component on page 8-52 for more information about the ReportService component.
1333
report-SectionHeader
The SectionHeader component is used to put a title or heading at the top of a report. It is located in the ReportWidgets folder in the Report palette. More information about the SectionHeader component is available in About the SectionHeader component on page 8-54.
schedule-BooleanSchedule
A deployable weekly schedule that provides a continuous StatusBoolean output. Other weekly schedule types include EnumSchedule, NumericSchedule, and StringSchedule. See About weekly schedules on page 10-4 for more details. Input - If the in property is linked and its value is non-null, then this value overrides the scheduled output. The BooleanSchedule is available in the schedule palette.
schedule-CalendarSchedule
The CalendarSchedule provides a calendar for scheduling holidays or other schedule overrides. The CalendarSchedule is available in the schedule palette.
schedule-EnumSchedule
A deployable weekly schedule that provides a continuous StatusEnum output. Other weekly schedule types include BooleanSchedule, NumericSchedule, and StringSchedule. See About weekly schedules on page 10-4 for more details. Input - If the in property is linked and its value is non-null, then this value overrides the scheduled output. The EnumSchedule is available in the schedule palette.
schedule-NumericSchedule
A deployable weekly schedule that provides a continuous StatusNumeric output. Other weekly schedule types include BooleanSchedule, EnumSchedule, and StringSchedule. See About weekly schedules on page 10-4 for more details. Input - If the in property is linked and its value is non-null, then this value overrides the scheduled output. The NumericSchedule is available in the schedule palette.
schedule-StringSchedule
A deployable weekly schedule that provides a continuous StatusString output. Other weekly schedule types include BooleanSchedule, EnumSchedule, and NumericSchedule. See About weekly schedules on page 10-4 for more details. Input - If the in property is linked and its value is non-null, then this value overrides the scheduled output. The StringSchedule is available in the schedule palette.
schedule-TriggerSchedule
A schedule that fires topics - there is no continuous output. The TriggerSchedule is available in the schedule palette.
schedule-BooleanScheduleSelector
ScheduleSelector components provide an easy way to select a preconfigured schedule of the proper data type for controlling a particular component. BooleanScheduleSelector components only link BooleanSchedule components to a control component of the Boolean data type.
NiagaraAX-3.x User Guide
1334
See also, About ScheduleSelector components Types of ScheduleSelector components Types of ScheduleSelector component properties Example ScheduleSelector configurations
schedule-NumericScheduleSelector
ScheduleSelector components provide an easy way to select a preconfigured schedule of the proper data type for controlling a particular component. NumericScheduleSelector components only link NumericSchedule components to a control component of the Numeric data type. See also, About ScheduleSelector components Types of ScheduleSelector components Types of ScheduleSelector component properties Example ScheduleSelector configurations
schedule-StringScheduleSelector
ScheduleSelector components provide an easy way to select a preconfigured schedule of the proper data type for controlling a particular component. StringScheduleSelector components only link StringSchedule components to a control component of the String data type. See also, About ScheduleSelector components Types of ScheduleSelector components Types of ScheduleSelector component properties Example ScheduleSelector configurations
schedule-EnumScheduleSelector
ScheduleSelector components provide an easy way for to select a preconfigured schedule of the proper data type for controlling a particular component. EnumScheduleSelector components only link EnumSchedule components to a control component of the Enum data type. See also, About ScheduleSelector components Types of ScheduleSelector components Types of ScheduleSelector component properties Example ScheduleSelector configurations
serial-SerialHelper
1335
Parity Parity to use, as either None, Odd, Even, Mark, or Space. Default value is None. Flow Control Mode Parity to use, as either RtsCtsOnInput, RtsCtsOnOutput, XonXoffOnInput, XonXoffOnOutput, or none (all checkboxes cleared). Default value is none.
timesync-TimeSyncClient
timesync-TimeSyncService
A time protocol (RFC 868) client and server. To synchronize with other servers, TimeSynClients must be added to the service. As a convenience, a disabled default client has already been added (it will need configuring). The service uses the clients to poll their configured servers, and if the service detects a drift greater than the tolerance property, the service will reset the system time. The module palette contains clients preconfigured for well known time protocol servers. The primary view of this Component is TimeSyncManager. From the PropertySheet, you can set Enabled and Server Enabled.Enabled (to false) to disable the time sync client. Server Enabled enables the time sync server. In order to sync between stations, enable master TimeSync service to be a server, then add a TimeSyncClient in the station, configured for the server Station. The TimeSyncService is available in the timesync palette. ForceSync Force Time Synchronization. Sync Time Synchronization.
tunnel-TunnelService
Station server for application tunneling, where remote PCs with a NiagaraAX Tunnel Client installed can use a legacy or vendor-specific PC application to access devices connected to one or more driver networks. A tunnel connection allows the remote client application to operate as it were directly attached to the driver network (via a virtual PC port). A client PC tunnels using an IP (LAN/WAN) connection, which is granted only after authentication as a station user (with admin write permissions for the particular child tunnel component accessed). Currently, the following types of child tunnels are supported: SerialTunnel LonTunnel In any station, only one TunnelService is recommended. It can hold the required number of child tunnels, as needed. The TunnelService contains the following properties: Enabled Boolean that must be true to support any tunnel server operations. Server Port Software port monitored for incoming client tunnel connections. Default port is 9973. Status TunnelService status, which should be ok (no special licensing required). Connections Number of active tunnel connections, which ranges from 0 (no active) to the number of child tunnel components.
1336
tunnel-SerialTunnel
. SerialTunnel is the server side component used to support tunneling of Windows serialconnected PC applications to devices reachable in a stations driver network. Typically, serial tunneling is used with a legacy vendor-specific PC program to access RS-232 connected devices attached to a JACE controller. You can add one or more SerialTunnels under a stations TunnelService. Each SerialTunnel associates with one specific driver network (and corresponding JACE serial port). See Serial tunneling on page 52 for more details. Properties of the SerialTunnel are described as follows: Enabled Boolean slot that must be enabled (true) to permit tunneling. Connections Read-only slot to indicate the number of tunnel connections, as either 0 (none) or 1 (maximum). Status Read-only status of the serial tunnel, typically ok (unless fault for no supporting COM port). Identifier Read-only reflection of the entered Port Name slot in the Serial Port Config container (below), used as the Tunnel Name when configuring the client-side Serial Tunneling dialog. Serial Port Config (container) Holds configuration of the JACE serial port as used by the specific driver network. See SerialHelper on page 35 for slot descriptions. Disconnect All Disconnects any active connection through this SerialTunnel (maximum of 1), causing removal of the TunnelConnection below it. On the remote (serial tunnel client) side, a popup message Connection closed by remote host is seen. Note: Any TunnelConnection component also has its own Disconnect action, which effectively performs the same function. . TunnelConnection is a dynamically-added component under a tunnel component (such as a SerialTunnel) that reflects read-only information about this current tunnel connection. Properties of a TunnelConnection (any tunnel type) are as follows: Established Date-timestamp of when this tunnel connection was first established. User Name User in the station that is currently tunneling. Remote Host Windows hostname or IP address of the remote tunneling client. Protocol Version Version of the (remote) NiagaraAX tunneling client application being used. Last Read Date-timestamp of when the last read of a station item occurred over the tunnel connection. Last Write Date-timestamp of when the last write to a station item occurred over the tunnel connection. Disconnect Disconnects the active tunnel connection, removing the parent TunnelConnection component. This causes a popup Connection closed by remote host to be seen on the client tunnel side. Note: A SerialTunnel component also has its own Disconnect All action, which effectively performs the same function.
tunnel-TunnelConnection
1337
web-WebService
WebService encapsulates access to the HTTP server as well as the servlet infrastructure used to expose custom applications over HTTP. The WebService is available in the web palette. It is also one of the default services in a station created by using the New Station tool. Only one WebService is supported in a station.
workbench-ComponentFinder
The ComponentFinder dialog provides a means of finding Components. Figure 13-2 Sample Window
workbench-KioskService
workbench-KioskService is used to enable the Kiosk mode. Kiosk mode provides a way to run a NiagaraAX application so that it fulfills many of the needs of a stand-alone operator workstation as well as many needs of a touchscreen interface. This component is located in the workbench palette. To set a station to Kiosk mode, add the service to the station's "Services" folder (Config > Services) and set the enabled property to "true". While Kiosk mode is not limited to touchscreen applications, it does provide advantages that make it well suited for use in a touchscreen application.
workbench-WbFieldEditorBinding
WbFieldEditorBinding is used to bind WbFieldEditors to an object. It allows any existing WbFieldEditor (BooleanFE, EnumFE, AbsTimeFE,etc) to be used in a PX presentation.
workbench-WbViewBinding
WbViewBinding is used to bind WbViews to an object. It allows any existing WbView (PropertySheet, WireSheet, PointManager, etc.) to be used in a PX presentation.
workbench-WsOptions
The WireSheet options allow you to view and change the following: Show Thumbnail Show Grid Show Status Colors These are stored under /user/{user}/wiresheet.options.
NiagaraAX-3.x User Guide
1338
CHAPTER
Plugin Guides
14
There are many ways to view plugins (views). One way is directly in the tree. In addition, you can rightclick on an item and select one of its views. Plugins provide views of components. In Workbench, access the following summary descriptions on any plugin by selecting Help > On View (F1) from the menu, or pressing F1 while the view is open.
alarm-AlarmConsole
The Alarm Console allows you to view and acknowledge Alarms. It can be started by Right-clicking the alarmRecipient in the AlarmService and selecting Views > Alarm Console. Viewing Alarms Multiple Alarms from a single source are visualized as a single row in the alarm console. Color coded icons provide a visual indication for unacknowledged/inAlarm, acknowledged/ inAlarm, and unacknowledged/not inAlarm.
1439
alarm redAlarm greenAlarm orangeAlarm Double-clicking a row in the Table shows the history of the alarms associated with that point. You can sort the Alarms in order of any column by pressing the column bar (once for ascending, twice for descending). Available commands include: Acknowledge Hyperlink Notes Silence Filter
Acknowledging Alarms Select an Alarm by Left-clicking it. In order to acknowledge an Alarm, press the Alarm Acknowledge toolbar button or select Alarm > Acknowledge from the Menu. You can select multiple Alarms and acknowledge them simultaneously. In order to silence Alarms, press the Alarm Silence toolbar button or select Alarm > Silence from the Menu. Acknowledge Hyperlink Silence Filter Acknowledge allows you to acknowledge the currently selected Alarm(s). Hyperlink allows you to hyperlink to Alarm URL. Silence allows you to silence the currently selected Alarm(s). Filter allows you to filter alarms.
Alarm Report Dialog From the Alarm console, you can view the Alarm Report to see all alarms on the point. Select an Alarm and Double-click it to see the Alarm Report. You can sort the Alarms in order of any column by pressing the column bar (once for ascending, twice for descending). Available commands include: Acknowledge Hyperlink Notes Filter
Viewing Alarm Record From the Alarm Report Dialog, you can view the Alarm record to see all information on the Alarm. Select an Alarm and Double-click it to see the Alarm record. Available commands include: Acknowledge Hyperlink Notes Filter Notes Notes allows you to add user notes to Alarm records.
alarm-AlarmDbMaintenance
AlarmDbMaintenance is a view of the alarm service. It allows you view and manage alarm records. For more information refer to: About the alarm database maintenance view About the alarm service AlarmDb is a view of the alarm service. It allows you view and sort alarm records. For more information refer to: About the alarm service AlarmClassSummary is a view of the alarm service. It presents a table of information about all alarm classes that are assigned to the alarm service. For more information refer to: About the alarm class summary view About the alarm service
alarm-AlarmDbView
alarm-AlarmClassSummary
14-40
alarm-AlarmExtManager
AlarmExtManager allows you to manage Alarm extensions.
alarm-AlarmInstructionsManager
AlarmInstructionsManager view displays a standard table-type report that provides a way to view, assign, and edit alarm instructions.. For details, refer to About the Instructions Manager view.
alarm-AlarmPortal
The Alarm Portal allows you to view and acknowledge Alarms from multiple Stations. It can be started from the main Menu by selecting Tools > AlarmPortal. From the Alarm Portal, you can view the Alarm record to see all information on the Alarm. Select an Alarm and Double-click it to see the Viewing Alarm Record. Available commands include: Acknowledge Silence Hyperlink Notes Filter
backup-BackupManager
The BackupManager is the default view for a stations BackupService. From this view you can issue a backup command, to back up the stations configuration to your local PC, in dist file format. When you issue a Backup command, a File Chooser dialog appears to select the destination directory on your PC (see File Ord Chooser) and the file name for the backup dist file. The default backup destination depends on your station connection, as either: Workbench (Fox) !backups A subdirectory backups under your Niagara release directory. If you have not previously made station backups, this directory is automatically created. Browser access (Wb Web Profile) !backups A subdirectory backups under the Niagara subfolder of your installed Java 2 runtime environment (Java plugin). For example: C:\Program Files\Java\j2rel1.4.2_05\niagara\backups. If you have not previously made station backups, this directory is automatically created. The default name for a backup file uses a format of: backup_stationName_YYMMDD_HHMM.dist For example, backup_J403IP98c_050618_1429.dist for a backup made of station J403IP98c on June 18, 2005 at 2:29 pm. In the BackupManager, a progress bar and Job Log (>> control) is provided for an initiated backup. The BackupManager displays a table of the 10 most recent backups, with the following data columns: Timestamp Station date and time when the backup was initiated. Host IP address of the requesting (remote) PC for the backup. Path File path used on the requesting (remote) PC for saving the backup. Typically, this is relative to the default Niagara directory (!), however, it may be an absolute file path. User The station user that initiated the backup.
chart-ResourceManager
The Resource Manager is an available view on any running station. It provides a line chart of both CPU and memory usage of the host platform, and updates in real time. In addition, individual resource statistics are provided in a table, which you can refresh by clicking the Update button.
14-41
devkit-LexiconEditor
The LexiconEditor Plugin allows you to view and modify the localization of lexicon files. The lexiconEditor is invoked by selecting Lexicon Tool from the main Tools Menu. From there you can select a lexicon by clicking on one. The LexiconEditor is invoked if you Double-click on a Module. It will present the list of keys with default and lexicon value. If you select a key, you can change the lexicon value by entering it at the bottom and pressing Change. You can select a different lexicon or Module using the selection list at the top. You can also check Hide Icons, Hide Accelerators and/or Show Missing Only to select the keys that will be displayed. LexiconEditor Menus The Workbench main menu functions are available. When the LexiconEditor is visible, the following LexiconEditor menu functions are also available: Hide Ref Values Hide Accelerators Show Missing Only Lexicon Module Hide Ref Values Hide Accelerators Show Missing Only Value Change Add New Key
LexiconEditor Pulldowns and Buttons The lexiconEditor has pulldowns and buttons that include:
LexiconEditor Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar. Lexicon Lexicon pulldown allows you to select another lexicon directly from the LexiconEditor. Module Module pulldown allows you to select another Module directly from the LexiconEditor. Hide Ref Values Filter values starting with / from lexicon view. This is available if you do not want to localize references (like icons). Hide Accelerators Hide entries that define keyboard accelerators. This is available if you do not want to localize the accelerators. Show Missing Only Hide entries that are localized. This is available if you do not want to see localized keys. Value Value allows you to enter a new value for a lexicon entry. You must press Change for the value to be entered. Change Change places the new value into the list of keys. You must press Save to write values to the lexicon file. Add New Key Add New Key allows you to add an additional key to the lexicon. You must press Save to write values to the lexicon file.
devkit-LexiconReport
The LexiconReport Plugin provides a report on localization of lexicon files. The LexiconReport in invoked by selecting Lexicon Tool from the main Tools menu. From there you can select a lexicon by Clicking on one. It will present the list of Modules with lexicons and the last time that the Module lexicon was modified and the last time the lexicon was modified. It also shows the number of keys missing from the lexicon for each Module. You can check Hide Icons and/or Hide Accelerators to ignore these keys which are not usually localized. If you Double-click a Module, you will go to the LexiconEditor. You can create new lexicons and delete lexicons. LexiconReport Menus The Workbench main menu functions are available. When the LexiconReport is visible, the following LexiconReport menu functions are also available: Hide Ref Values Hide Accelerators
LexiconReport Pulldowns and Buttons The LexiconReport has pulldowns and buttons that include:
14-42
LexiconReport Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. New Lexicon This allows you to define a new lexicon. It should follow the Java localization model. Delete Lexicon This allows you to delete a lexicon.
driver-DelimitedFileImportManager
driver-DeviceManager
driver-DriverManager
The DriverManager plugin allows you to add and view drivers. It is available on the DriverContainer. For more details, see About the Driver Manager on page 4-4.
driver-FileDeviceManager
The File Device Manager is the default view on a FileNetwork. For general information, see About the Device Manager on page 4-12. See the section driver-FileNetwork on page 13-17 for more details about a File Network. Also, note that the view used most often under a File Network is the DelimitedFileImportManager view of the Histories extension of a FileDevice.
14-43
driver-HistoryExportManager
HistoryExportManager provides a view of NiagaraHistoryDeviceExt. To see the view, right-click on a NiagaraHistoryDeviceExt in a Station and select Views > History Export Manager. For details, see History Export Manager on page 4-41.
driver-HistoryImportManager
HistoryImportManager provides a view of NiagaraHistoryDeviceExt. To see the view, right-click on a NiagaraHistoryDeviceExt in a Station and select Views > HistoryImportManager. For details, see History Import Manager on page 4-37.
driver-PointManager
PointManager provides an overview of the proxy points mapped into the PointDeviceExt. In a NiagaraNetwork, PointManager is a view on the NiagaraPointDeviceExt of a NiagaraStation. To see the PointManager, right-click on a Points device extension and select Views > Point Manager. For details, see About the Point Manager on page 4-28.
email-EmailAccountManager
help-BajadocViewer
The BajadocViewer Plugin provides the ability to navigate and browse Baja reference documentation. Baja reference documentation includes both Java API details as well as Baja slot documentation. It shows documentation for the following: Subclasses Properties Actions Topics Constructors Methods Fields In order to view Bajadoc, either right-click on a Bajadoc file and select Views > Bajadoc Viewer or select Bajadoc On Target from the main Help Menu or popup Menu. See Object Model in the Developer Guide for more information. BajadocViewer Menus The BajadocViewer menu functions include: Show Baja Only Flatten Inheritance
Show Baja Only This option allows you to view only the documentation for slots (Properties, Actions, and Topics). When it is set to false, documentation on the Java constructors, methods and fields is also displayed. Flatten Inheritance This option allows you to flatten the inheritance hierarchy into a single set of documentation. When it is false only the Java members and Baja slots declared in the specified class are displayed. When it is set to true all the Java members and Baja slots inherited from super classes are also shown. Subclasses Subclasses provides a subclass tree of all that are subclassed from this item. Properties Properties represent a storage location of another Niagara object. Flags are boolean values which are stored as a bitmask on each slot in a Baja Object. Some flags apply to all slot types, while some only have meaning for certain slot types. Table 14-1 Flags
Flag
readonly
Char
r
Applies
P
Description
The readonly flag is used to indicate slots which are not accessible to users.
NiagaraAX-3.x User Guide
14-44
Flag
transient hidden summary
Char
t h s
Applies
P P,A,T P
Description
Transient properties do not get persisted when saving a object graph to the file system. Transient properties are usually also readonly, unless they are designed to be a linkable input slot. Hidden slots are designed to be invisible to the user, and exist only for Java developers. User interfaces should rarely display hidden slots. Summary properties are the focal points of any given BComponent. This flag is used by user interface tools to indicate primary properties for display. This might be as a columns in a Table, or as a glyph in a graphical programming tool. By default Action are invoked synchronously on the callers thread. By using the async flag on an Action, invocations are coalesced and executed asynchronously at some point in the near future on the engine's thread. No execute properties prevents start/stop from recursing on properties with this flag set. Specifies that when an object is cloned via the newCopy() method these properties retain their default value, not the clone source's value. When the Action is invoked by a user, a confirmation dialog must be acknowledged before proceeding. This makes a slot as operator security level. By default when this flag is clear, the slot is an admin security level. User defined. User defined. User defined. User defined.
async
noExecute
See Config Flags for information on configuring flags on properties. Actions An Action is a slot that specifies behavior which may be invoked either through a user command or by an event. Actions provide the capability to provide direction to Components. They may be issued manually by the operator or automatically through links. Actions can be issued by Right-clicking on the Component. The Component bajadoc provides a complete list of Actions available for each Component. Typical Actions include: Manual actions are available based on Component type. The following are commonly available: Auto (BooleanWritable, NumericWritable and EnumWritable) Active (BooleanWritable) Inactive (BooleanWritable) Override (NumericWritable and EnumWritable) Each of the above actions is issued to the priorityArray of the Component at level 8 (Manual Operator). Many other Actions are available on other Components. Each Action available for a Component is listed in the Actions sect2 of the Component bajadoc.
Topics Topics represent the subject of an event. Topics contain neither a storage location, nor a behavior. Rather a topic serves as a place holder for a event source.
history-DatabaseMaintenance
14-45
history-HistoryChart
The HistoryChart is a view that allows you to view and configure charts of histories. Any point History can be charted by double-clicking it in the History Service.
history-HistoryChartBuilder
The HistoryChartBuilder is a view that allows you to view and configure charts of one or more histories. Add a history by double-clicking or dragging into the configuration area. For any chart, you can specify a Time Range, Title, and whether to show grid lines. Each history has a selectable Chart Type of either Line or Discrete Line. After you Build a chart, you can Save it.
history-HistoryEditor
The HistoryEditor allows you to view and query a History in a Station. The HistoryEditor allows you to Hide or Unhide selected records.
history-HistoryExtManager
The HistoryExtManager provides a tabular view of all history extensions. It is the default view of the HistoryService and provides information about the control point, extension type, name and status of each entry. Refer to the following references for information about the history extension manager, its associated menus, toolbar icons, and other details. Refer to the following sections for related information: About the History Ext Manager menu on page A-8 About the history extension manager on page 6-3 About the history extension manager popup menu items on page A-11 The HistorySummaryView allows you to view the summary information about a History from the Workbench.
history-HistorySummaryView
history-HistoryTable
The HistoryTable is a view that allows you to view tables of histories. The selected entries are shown as timestamp, trendFlags, status and value in each row of the Table. You can resize columns in the HistoryTable. If you move the cursor over the line between columns, it will change to a resize cursor. You can then drag the line to the desired size. If want to reorder the columns in the HistoryTable, drag the column header to a new location. Query Query lets you select the period for the query. Selections include: Time Range Today Yesterday Last Week Last 7 Days Last Month Last Year Month-to-date Year-to-date Filter Filter lets you use the filter you have configured for the data in the Table. Filter Config Filter lets you configure the filter for the data in the Table.
html-WbHtmlView
14-46
WbHtmlView Toolbar In the WbHtmlView, the toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. In addition, Find, FindNext and FindPrev toolbar buttons are available. HTML Support HTML Tags The WbHtmlView attempts to ignore mismatched or missing Tags. It can parse any HTML, no matter how badly messed up the Tags are, although it might do a pretty bad job of rendering the results. It does simplistically attempt to repair missing <p>, but other problems are solved by ignoring Tags. Warnings will appear on the command line showing its best guess as to what the problem was. Valid tags include: a - anchor Ex:<a href="#fragment">Title<a> and <a name="fragment">Title<a> (Attributes href and name) applet - not supported b - bold text style Ex: <b>bold text<b> body - document body br - forced line break code - computer code fragment col - not supported colgroup - not supported dd - definition description div - not supported dl - definition list dt - definition term em - emphasis Ex: <em>emphasis text<em> font - local change to font (Attributes Color, name and size) h1 - heading Ex:<h1 class='title'>Title<h1> h2 - heading h3 - heading h4 - heading h5 - heading h6 - not supported head - document head hr - horizontal rule html - document root element i - italic text style img - embedded image Ex: <img src="../doc/icons/x16/home.png"> An <img> without an align attribute is treated as an 'inline' image. An align of left or right causes text to flow around the image. li - list item link - a media-independent link Ex:<link rel='StyleSheet' href='module://bajaui/ doc/style.css' type='text/css'/> meta - not supported object - not supported ol - ordered list p - paragraph Ex:<p class='note'>Note<p> pre - preformatted text span - not supported style - not supported table - table (Attributes align, border, bordercolor, cellpadding, cellspacing and width) tbody - not supported td - table data cell supports ALIGN (left, right, and center), BGCOLOR, COLSPAN, ROWSPAN and WIDTH tfoot - not supported th - table header cell supports ALIGN (left, right, and center), BGCOLOR, COLSPAN, ROWSPAN and WIDTH thead - not supported title - document title tr - table row supports ALIGN (left, right, and center) and BGCOLOR tt - teletype or monospaced text style ul - unordered list
HTML Attributes HTML Elements have associated properties, called attributes, which may have values. Attribute/value pairs appear before the final ">" of an element's start tag. Valid attributes include:
NiagaraAX-3.x User Guide
14-47
align - vertical or horizontal alignment Deprecated; elements: img, object? values: bottom, left, middle, right or top. align - table position relative to window Deprecated; elements: table; values: center, left or right align - align, text alignment Deprecated; elements: div?, h1?, h2?, h3?, h4?, h5?, h6?, p; values: center, justify, left or right align - alignment; elements: col?, colgroup?, tbody?, td, tfoot?, th, thead?, tr; values: center, char, justify, left or right bgcolor - background Color Deprecated; elements: h1, h2, h3, h4, h5, h6?, p, td, th, tr border - controls frame width around table; elements: table cellpadding - spacing within cells; elements: table cellspacing - spacing between cells; elements: table class - class name or set of class names for stylesheets; elements: most elements color - text Color Deprecated; elements: font, h1, h2, h3, h4, h5, h6?, p, pre, td?, th?, tr? colspan - number of cols spanned by cell; elements: td, th content - associated information; elements: meta? href - URI for linked resource; elements: a, link id - name to an element; elements: most elements lang - Language Code; elements: most elements not supported name - named link end; elements: a name - meta information name; elements: meta? rel - forward link types; elements: link; values: stylesheet rowspan - number of rows spanned by cell; elements: td, th size - size of font; elements: font; value: fixed 1-7 or relative -7 to +7 summary - purpose/structure for speech output; elements: table type - advisory content type; elements: link; values: text/css width - table width; elements: table & - ampersand & ' - apostrophe ' © - copyright > - greater than > “ - double quotation, left ‘ - single quotation, left < - less than < — - em dash - non breaking space " " – - en dash ” - double quotation, right ’ - single quotation, right " - quotation mark " ® - registered trademark ™ - trademark
<head> <title>Sample<title> <link rel='StyleSheet' href='module://bajaui/doc/style.css' type='text/css'/> <head>
Character Entity References Character Entity References are supported including the following:
Stylesheet Support Introduction Stylesheets are supported using a link in the header as follows:
See the default stylesheet used for Niagara developer documentation: module://bajaui/doc/style.css or the CSS stylesheet used for this document at docbook.css. Pseudo-classes and Pseudo-elements Anchor pseudo-classes include: A:link unvisited links unsupported A:visited visited links unsupported A:active active links unsupported background - The 'background' property is a shorthand property for setting the individual background properties (i.e., 'background-color', 'background-image', 'background-repeat', 'backgroundattachment' and 'background-position') at the same place in the style sheet. background-attachment unsupported background-color - This property sets the background Color of an element.
NiagaraAX-3.x User Guide
14-48
background-image unsupported background-position unsupported background-repeat unsupported border unsupported border-bottom unsupported border-bottom-width unsupported border-color unsupported border-left unsupported border-left-width unsupported border-right unsupported border-right-width unsupported border-style unsupported border-top unsupported border-top-width unsupported border-width unsupported clear unsupported color - This property describes the text Color of an element (often referred to as the foreground Color). display unsupported float unsupported font unsupported font-family unsupported font-size unsupported font-style unsupported font-variant unsupported font-weight unsupported height unsupported letter-spacing unsupported line-height unsupported list-style-image unsupported list-style-position unsupported list-style-type unsupported margin unsupported margin-bottom unsupported margin-left unsupported margin-right unsupported margin-top unsupported padding unsupported padding-bottom unsupported padding-left unsupported padding-right unsupported padding-top unsupported text-align text-decoration unsupported text-indent unsupported text-transform unsupported white-space unsupported width unsupported word-spacing unsupported SpyViewer allows you to view diagnostic information about the system. It contains the following:
html-SpyViewer
sysinfo - sysinfo provides system information. stdout - stdout provides access to standard output. systemProperties - systemProperties provides access to system properties. logSetup - logSetup allows you to config your log severities dynamically. There is also an option to flush the current settings to log.properties. sysManagers - sysManagers provides information on managers. These include: registryManager schemaManager componentNavEventManager moduleManager
14-49
engineManager leaseManager serviceManager licenseManager stationManager navSpace - provides information on the navSpace. userinterface - if System - userInterface provides information on the user interface framework. fox - fox provides information on fox client and server sessions.
ldap-LdapUserManager
niagaraDriver-NiagaraHistoryExportManager
NiagaraHistoryExportManager provides a view of NiagaraHistoryDeviceExt. To see the view, rightclick on a NiagaraHistoryDeviceExt in a Station and select Views > Niagara History Export Manager. For more details, see History Export Manager on page 4-41.
niagaraDriver-NiagaraHistoryImportManager
NiagaraHistoryImportManager provides a view of NiagaraHistoryDeviceExt. To see the view, Right-click on a NiagaraHistoryDeviceExt in a Station and select Views > Niagara History Import Manager. For more details, see History Import Manager on page 4-37.
niagaraDriver-Niagara PointManager
Niagara PointManager provides access to the proxy points mapped into the PointDeviceExt. The Niagara PointManager is a view on the NiagaraPointDeviceExt in a Station in a NiagaraNetwork. For general information, see About the Point Manager on page 4-28. For details on a learning Niagara proxy points, see About the Bql Query Builder on page 4-61.
niagaraDriver-NiagaraScheduleExportManager
The NiagaraScheduleExportManager is used to manage schedules exported from a NiagaraStation. For more details, see Schedule Export Manager on page 4-49, and also Station Schedules import/ export notes on page 4-66.
niagaraDriver-NiagaraScheduleImportManager
The NiagaraScheduleImportManager is used to manage schedules imported from a NiagaraStation. For more details, see Schedule Import Manager on page 4-45, and also Station Schedules import/ export notes on page 4-66.
niagaraDriver-ServerConnectionsSummary
The Server Connections Summary is the default view of the ServerConnections slot in the Niagara Fox Service, under the NiagaraNetwork. It provides a table listing current client connections to the stations Fox server (station-to-station connections are not included). Note: The main usage of this view is to perform a Force Disconnect action (right-click access) on any Fox server session shown. In some station maintenance scenarios, this may be helpful. Included in connections summary table are the following columns: Address IP address of the Fox client connected to the station, along with its remote TCP port. User Station user account used for authentication.
NiagaraAX-3.x User Guide
14-50
Connection Time Timestamp of when the Fox connection occurred. Application Client software used to access the station (for example, Niagara Workbench 3.0.76). From the table, to see more details on any Fox server session, double-click an entry. The view changes to show the property sheet of that SessionN, with status slots of historical information, including connect and disconnect entries. Access the Server Connections Summary from the property sheet of the NiagaraNetwork. Expand the Fox Service, then click the Server Connections slot.
niagaraDriver-StationManager
The Station Manager view on the NiagaraNetwork allows you to manage and access NiagaraStations. For more details, see Niagara Station Manager notes on page 4-55.
niagaraDriver-UserSyncManager
The User Sync Manager view on the NiagaraNetwork allows you to manage the Users device extension properties for all NiagaraStations in the network. For more details, see About the User Sync Manager on page 4-60.
program-BatchEditor
program-ProgramEditor
Introduction The ProgramEditor Plugin provides the ability to view and edit Program Components. To view, Right-click a Program and select ProgramEditor. It shows ProgramEditor Edit, ProgramEditor Slots, ProgramEditor Imports and ProgramEditor Source tabs. ProgramEditor Edit Edit allows you to edit the onExecute, onStart, onStop and freeForm methods. An example from the demo Database follows:
BStatusNumeric inA = getInA(); BStatusNumeric inB = getInB(); BStatusNumeric out = getOut(); out.setValue( inA.getValue() + inB.getValue() );
ProgramEditor Slots Slots allows you to view and change the slots of the program component. It includes Slot, #, Name, Display Name, Definition, Flags and Type for each slot. See SlotSheet for more information on slots. ProgramEditor Imports Imports allows you to view the Modules that have been imported. It also allows the following: ProgramEditor ImportType ProgramEditor ImportPackage ProgramEditor Remove ProgramEditor ImportType ImportType allows you to import a new type. ProgramEditor ImportPackage ImportPackage allows you to import a new type. ProgramEditor Remove Remove allows you to import a new type. ProgramEditor Source Source allows you to view and edit the source of the program component. The editor supports special Color coding for Java Files. An example from the demo Database follows:
14-51
Chapter 14 Plugin Guides December 10, 2007 /* Auto-generated ProgramImpl Code */ import import import import import java.util.*; javax.baja.sys.*; javax.baja.status.*; javax.baja.util.*; com.tridium.program.*; /* /* /* /* /* java Predefined*/ baja Predefined*/ baja Predefined*/ baja Predefined*/ program Predefined*/
public class ProgramImpl extends com.tridium.program.ProgramBase { //////////////////////////////////////////////////////////////// // Getters //////////////////////////////////////////////////////////////// public BStatusNumeric getOut() { return (BStatusNumeric)get("out"); } public BStatusNumeric getInA() { return (BStatusNumeric)get("inA"); } public BStatusNumeric getInB() { return (BStatusNumeric)get("inB"); } //////////////////////////////////////////////////////////////// // Setters //////////////////////////////////////////////////////////////// public void setOut(javax.baja.status.BStatusNumeric v) { set("out", v); } public void setInA(javax.baja.status.BStatusNumeric v) { set("inA", v); } public void setInB(javax.baja.status.BStatusNumeric v) { set("inB", v); } //////////////////////////////////////////////////////////////// // onExecute //////////////////////////////////////////////////////////////// public void onExecute() throws Throwable { BStatusNumeric inA = getInA(); BStatusNumeric inB = getInB(); BStatusNumeric out = getOut(); out.setValue( inA.getValue() + inB.getValue() ); } }
ProgramEditor Menus The Workbench main menu functions are available. When the ProgramEditor is visible, the following ProgramEditor menu function is also available: ProgramEditor ImportType ProgramEditor ImportPackage ProgramEditor Remove Add Slot Ctrl + A Delete Rename Slot Ctrl + R Reorder ProgramEditor Compile & Save F9 ProgramEditor Compile Ctrl + F9
ProgramEditor Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. When the ProgramEditor is visible, additional toolbar buttons include: Find F5 Replace F6 ProgramEditor Compile & Save F9 ProgramEditor Compile Ctrl + F9 Console Prev Console Next ProgramEditor Compile & Save CompileSave allows you to compile and save the source of the program component. The shortcut is F9. ProgramEditor Compile Compile allows you to compile the source of the program component. The shortcut is Ctrl + F9.
14-52
program-RobotEditor
The RobotEditor is used to write Robots that can be run via the ProgramService. RobotEditor Menus The Workbench main menu functions are available. When the RobotEditor is visible, the following RobotEditor menu function is also available: RobotEditor Compile Ctrl + F9 RobotEditor Compile & Run F9
RobotEditor Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. When the RobotEditor is visible, additional toolbar buttons include: Find F5 Replace F6 RobotEditor Compile Ctrl + F9 RobotEditor Compile & Run F9 Console Prev (?need to find SearchConsolePrev.html source?) Console Next (?need to find SearchConsoleNext.html source?) RobotEditor Compile Compile allows you to compile the source of the Robot component. The shortcut is Ctrl + F9. RobotEditor Compile & Run Compile& Run allows you to compile and run the source of the Robot component. The shortcut is F9.
pxEditor-PxEditor
The PxEditor provides tools for creating and editing Px files. The Px editor is the view that is used to create graphic presentations in Niagara AX. For more details about the Px editor, refer to the following: About Px Editor About presentation xml (Px) About the Px Editor menu
raster-RasterViewer
rdb-RdbmsHistoryExportManager
The RdbmsHistoryExportManager allows you to export records in an Rdbms database as Niagara histories. It is a view on the Histories extension of an Rdbms database, for example Db2HistoryDeviceExt, OracleHistoryDeviceExt, and SqlServerHistoryDeviceExt.
rdb-RdbmsSessionView
The RdbmsSessionView provides a view for a session to a relational database.
report-GridTable
14-53
For more details, see About the Grid Table view on page 8-55.
report-GridLabelPane
The Grid Label Pane view is a view of the ComponentGrid component. This view provides a tabular display of all the points that are assigned to the ComponentGrid. In the Grid Table Pane view, you can write to points (issue commands) using the popup menu, if you have write permissions. For more details, see About the Grid Label Pane view on page 8-55.
report-ComponentGridEditor
The Grid Editor view is a view of the ComponentGrid component. This view provides a layout display that you use to assign points that you are going to use in a report. For more details, see About the Grid Editor view on page 8-57.
schedule-CalendarScheduler
schedule-CurrentDaySummary
The CurrentDaySummary view is available on BooleanSchedule, EnumSchedule, NumericSchedule, and StringSchedule components. It provides a simple linear listing of all schedule events for the current day, moving left-to-right from 0-to-24 hours. For more details, see Summary on page 10-12.
schedule-Scheduler
The Scheduler allows you to view and edit schedule components, namely BooleanSchedule, EnumSchedule, NumericSchedule, and StringSchedule. Each of these components has a Scheduler view. The only difference between these different schedules is the output type. Note: For more details, see Weekly Scheduler view on page 10-5. There are four major elements in the Scheduler interface, separated by tabs in the view: Weekly Schedule Special Events Properties Summary
Weekly Schedule Defines the regular (repeating) day-of-week schedule events for each day of the week. Creating A Time Range Right-click and drag down in the slider column for desired the day. Deleting A Time Range Click on a time range and press the delete or backspace key. Editing A Time Range Time can be adjusted four ways: Dragging the top, bottom or center of a time range, or using the fine grained start and finish editors. To fine-tune a time range click on a time range then adjust the times in the editors to the left. Note: IMPORTANT: The finish time is exclusive; it is the first non-effective time after the effective period. The start time is inclusive. Output is assigned to each time range and can be edited just below the time editors on the left. Special Events Special events override (yet intermingle with) events in the normal weekly schedule. Adding, Prioritizing, Renaming, and Deleting. Use the controls at the bottom for this purpose. Editing At least one time range must be present for an exceptional to work. Output is assigned to the time ranges. The slider operates exactly like the normal weekly sliders.
NiagaraAX-3.x User Guide
14-54
Properties Define the schedules effective period, default output, facets, and whether automatic specialevent cleanup occurs. Default Output This is the value of the schedule's output when no normal or exceptional schedule is effective. Cleanup Special Events If set to true (default), special events that have expired are automatically removed from the view. This occurs on the day following the scheduled special event. Summary Shows months with selectable days, including all schedule event activity for any day selected.
schedule-TriggerScheduler
The TriggerSchedule view is used to define schedule events in a TriggerSchedule. Trigger schedules are defined by combination of calendar day (or days) and trigger event time(s), including time ranges, each with a repeating interval. Use the bottom-left Add button to add a scheduled day (or range of days). Each entry requires a unique name, a date type, and other specific calendar data criteria. Other controls in the TriggerSchedule allow you to edit priority, rename, or delete calendar day entries. Use the bottom-right Add button to add trigger events to any selected scheduled day(s). Use the time selector to specify the individual trigger event. Use the Range controls to define a time range with repeating interval for trigger events to occur. For more details, see About trigger schedules on page 10-18.
timesync-TimeSyncManager
The TimeSyncManager is used to display the status of TimeSyncClients, as well as add new or edit existing TimeSyncClients. By default, it displays Server Name, Status, Poll Delta, Poll Local Time, and Poll Server Time for each TimeSyncClient.
wiresheet-WireSheet
The WireSheet view shows the contents of this Component. It can be used on a Component of a running Station or a Component in a Bog File. If in a running station, it is active and real-time updates are provided. In order to command or select a different view of the item, you may Right-click to get the popup menu. WireSheet Menus The WireSheet includes the following menus: WireSheet Main Menu WireSheet Component Menu WireSheet Background Menu WireSheet Link Menu
WireSheet Main Menu The WireSheet main menu functions are available. When the *wiresheet; is visible, the following WireSheet menu functions are also available: Delete Links Arrange Select All Show Thumbnail Show Grid Show Status Colors
WireSheet Component Menu If you Right-click any Component in the WireSheet, you can choose from the following:
NiagaraAX-3.x User Guide
views - Go to any of the views of the Component. Actions - Perform any of the Actions on the Component. Cut Ctrl + X Copy Ctrl + C Paste Ctrl + V
14-55
WireSheet Background Menu If you Right-click the Background of the WireSheet, you can choose from the following: Cut Ctrl + X Copy Ctrl + C Paste Ctrl + V Duplicate Ctrl + D Delete Delete Delete Links Arrange Select All workbench-CompositeEditor Cut Ctrl + X Copy Ctrl + C Paste Ctrl + V Duplicate Ctrl + D Delete Delete Delete Links Arrange Select All CompositeEditor
WireSheet Link Menu If you Right-click any link in the WireSheet, you can choose from the following:
WireSheet Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. When the WireSheet is visible, additional toolbar buttons include: Delete Links Delete Links Delete Links may be accessed from the Menu under Edit or from the toolbar. It allows you to eliminate the selected link(s). You can Delete Links only in the WireSheet. Pin Slots Pin Slots provides the capability to make Properties of a Component visible in the WireSheet view of the Component. Right-click on the Component and select Pin Slots. This will bring up the Pin Slots Dialog. The selected Properties are now visible in the WireSheet. Arrange Arrange allows you to arrange the items in the WireSheet. You can Arrange All or Arrange Selection. Select All Select All allows you to select all items in the WireSheet. Show Thumbnail Show the thumbnail view in the upper right corner of the WireSheet. This allows you to toggle whether this function is enabled. This function may be accessed from the Menu under WireSheet. It allows you to display a thumbnail of the WireSheet view in the corner of the WireSheet. You can use the thumbnail to move around the WireSheet by Dragging the shaded area in the thumbnail. You can also hold down the Ctrl key and move the thumbnail around the WireSheet to keep it out of your way. Show Grid When enabled, the Grid is displayed in the background of the WireSheet. This helps you to align Components when you move them. You may control whether the Grid layer is enabled or visible from the WireSheet Menu or the Tools > Options Menu. This allows you to toggle whether this function is enabled. Show Status Colors Show the Status Colors. This allows you to toggle whether this function is enabled. This function may be accessed from the Menu under WireSheet. It allows you to display StatusColors in the WireSheet. workbench-PrintDialog Print provides the capability to print the WireSheet. The WireSheet will remain fixed at logical size of 100 x 100 "blocks". Printing will scale the WireSheet drawing to fit the page size (minus header and footer). Thus if you build your WireSheet logic in the top left corner, you will get a large scale for your print out. If you use the entire WireSheet down to the bottom right corner, you
14-56
will get a much smaller scale for your print out. Margins are 1" for left and 1/2" for top, bottom, and right. A standard header is included which displays container's reference and current date. A future version will create a footer listing external links and knobs. workbench-CompositeEditor Composite Editor provides the capability to expose child slots of a Component as slots on the parent. Right-click on the Component and select Composite Editor. This will bring up the Composite Editor Dialog. The selected Properties are now visible in the WireSheet. workbench-ExportDialog Export provides the capability to Export views. You can Export any Table found in the workbench (anything built with bajaui:Table). The Table options menu (that little button to the right of the header), includes a Print and Export command. These commands allow you to Export the Table to PDF, HTML, or CSV (ExcelFile). The Export uses the current sort order and visible columns you have displayed.
wbutil-CategoryBrowser
CategoryBrowser is the default view of a stations CategoryService. Use it to assign objects in the station into categories. This view presents an expandable tree table where the table columns are the available categories, and rows are the categorizable objects. Yellow rows are objects explicitly assigned into a category. Dimmed rows represent objects inheriting their parents categories. Note: For any object except the three root objects: station (components), file, and history, you can check to inherit its parents categories. For root objects, you must select at least one category. For any component, you can alternately use its CategorySheet view to assign it categories. See Categories and security on page 9-2 for details on how categories affect security, and CategoryBrowser on page 9-22 for more details on this CategoryService view.
wbutil-CategoryManager
CategoryManager is a view on the CategoryService that allows you to create, enable and delete categories. Categories are used by the security model, as well as for future features. You can then use the CategoryBrowser view to centrally assign objects to categories. Or, at the individual component level, use a components CategorySheet view to assign it to categories. You can assign an object to many categories at the same time. Each object stores its own categories. See Categories and security on page 9-2 for details on how categories affect security, and CategoryManager on page 9-21 for more details on this CategoryService view.
wbutil-CategorySheet
CatgegorySheet is used to assign a component into one or more categories (or configure it to inherit categories). Every component has a CategorySheet view. See Categories and security on page 9-2 for details on how categories affect security, and CategorySheet on page 9-23 for more details on this component view.
wbutil-PermissionsBrowser
PermissionsBrowser is an available view on the UserService, for reviewing the permissions any user has on each object. It provides an expandable tree table (similar to the CategoryBrowser view of the CategoryService). In the PermissionsBrowser, columns represent station user accounts, and rows are the objects in the station, with each table cell showing user permissions. Yellow rows are objects explicitly assigned with permissions. Dimmed rows represent objects inheriting their permissions. Double-click a cell to bring up the permissions dialog for that user (unless user has super user rights). This allows you to globally change that users permission levels for any category in the station. See Permissions and security on page 9-5 for details on how permissions affect security, and PermissionsBrowser on page 9-18 for more details on this UserService view.
NiagaraAX-3.x User Guide
14-57
wbutil-ResourceEstimator
The Resource Estimator tool allows you to estimate station resources based a number of variables, which you enter in various fields. It is one of several tools in Workbenchs Tools menu. For more information, refer to Resource estimator on page 11-10.
wbutil-TodoList
The Todo List tool allows you to enter, summarize, group, and prioritize pending Workbench tasks. It is one of several tools in Workbenchs Tools menu. For more information, refer to Todo list on page 11-10.
wbutil-UserManager
The UserManager is the primary view of the UserService. You use it to add, edit, and delete users for accessing the station. See Users and security on page 9-2 for details on how users affect security, and UserManager on page 9-13 for more details on this UserService view. For an overview on the station security model, see Security model overview on page 9-1.
workbench-CollectionTable
The Table options menu (see Table controls and options on page 2-17, for more details about the table options), allows you to Reset Column Widths, Print and Export.
workbench-DirectoryList
The DirectoryList Plugin provides a listing of the subdirectories and files found in a given Directory. If you Double-click an item, you will go to its default view. Files will be displayed with an icon based on file type. DirectoryList Menus The Workbench main menu functions are available. When the DirectoryList is visible, the following popup menu functions are also available: Views - show the view menus for the Component. Actions - Perform any of the Actions on the Component. New - Create a new file of standard types (if a Directory). Cut Ctrl + X Copy Ctrl + C Paste Ctrl + V Duplicate Ctrl + D Delete Delete Rename Reorder
DirectoryList Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12.
NiagaraAX-3.x User Guide
14-58
Refresh Refresh allows you to synchronize the cached components with the actual file system. New New allows you to make a new Folder or File in the selected Folder of these types: New Folder allows you to make a new Folder in the selected Folder. BogFile.bog HtmlFile.html JavaFile.java NavFile.nav PrintFile.print TextFile.txt The HexFileEditor allows you to view hexadecimal files. It provides a binary view of a file's contents.
workbench-HexFileEditor
workbench-JobServiceManager
The JobServiceManager is the default view on a stations JobService. It provides a table listing of up to the last 10 Jobs executed by the station since the last station start. Order is oldest job at top, most recent job at bottom. To see details on any job, click the >> button next to its status descriptor. A popup Job Log dialog displays all the interim steps about the job, including timestamps and relevant messages. To dispose of any job, click the close (X) button to remove it from the station. Note: Only the last ten jobs are saved. All jobs in a station are cleared upon a station restart.
workbench-LinkSheet
The LinkSheet allows you to view and delete links. It provides a view of the links on a Component. LinkSheet Main Menu The Workbench main menu functions are available. When the LinkSheet is visible, the following LinkSheet menu functions are also available: Delete Links GoTo
LinkSheet Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. When the LinkSheet is visible, additional toolbar buttons include: Delete Links GoTo Go To goes to the selected item.
workbench-ModuleSpaceView
The ModuleSpaceView allows you to view Modules. OptionsButton The Options Button provides the ability to toggle columns on and off like Mozilla does.
workbench-NavContainerView
NavContainerView is a default listing of nav children.
workbench-NavFileEditor
The NavFileEditor allows you to view and edit Nav Files. It provides a view of the Pages in the station and a view of the Nav Tree. You can drag Pages to the Nav Tree to add them to the Nav File. The name and Ord are shown at the bottom of the window. In order to use the Nav File, you must place the filename in the Default Nav File property of the WebService.
workbench-PropertySheet
The Property Sheet shows all the user visible Properties of the Component. This view also lets you change any Properties that you have authority to change. It can be used on a Component of a running Station or a Component in a Bog File. In order to see Properties of Components in the PropertySheet, press the + sign to expand the Component. When you want to enter a URL, you can Copy the Component or URL and Paste it into the PropertySheet using the Paste shortcut Ctrl + V. When a Property has been changed, its symbol will become red until you press Save.
14-59
PropertySheet Menus The Workbench main menu functions are available. If you Right-click any Component in the PropertySheet, you can choose from the following: Views - show the view menu for the Component. Actions - Perform any of the Actions on the Component. Cut Ctrl + X Copy Ctrl + C Paste Ctrl + V Duplicate Ctrl + D Delete Delete Rename Reorder Config Flags
PropertySheet Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. Config Flags Configure Flags on a component. This is available on Properties. Right-click a Property to view the Config Flags Dialog. Links Links provide the mechanism to dynamically attach Components. They allow you to attach an output Property of one Component to an input Property of another Component. The links are visible in the Property Sheet of the Component. Links show whether they are direct or indirect and their source Property. In order to view the Properties of the link, Left-click the + plus sign on the Component to expand it. Each link shows the following: Link Type and source Source Ref - This is the linked Component. Source Slot Name - This is the linked Component's property. Target Slot Name - This is the current Component's property. Enabled - This shows whether the link is currently enabled. See for more information on creating links. OrdChooser In order to select an Ord instead of typing it, you can use one of the Ord editors. They include: Bql Builder Directory Ord Chooser File Ord Chooser History Ord Chooser Ref Chooser Once you have selected an editor, you can use the present the selected editor.
workbench:FileOrdChooser In order to select a file Ord instead of typing it, you can use the FileOrdChooser. You can select FileSpaces, Bookmarks and directories and files. In addition toolbar functions are provided including: Back Back moves back to the previous view. Uplevel Uplevel moves up one level in tree. Home Home moves up one level in tree. New Folder New Folder creates a new Directory. ListView ListView allows you to use the list view. DetailsView DetailsView allows you to use the details view. Bookmarks You can press the Bookmarks button to add the selection to Bookmarks. Show/Hide Preview Show/Hide Preview toggles whether the preview pane is visible. workbench:DirectoryOrdChooser In order to select a Directory Ord instead of typing it, you can use the DirectoryOrdChooser. You can select FileSpaces, Bookmarks and directories. In addition toolbar functions are provided including:
14-60
New Folder New Folder creates a new Directory. Bookmarks You can press the Bookmarks button to add the selection to Bookmarks. workbench:HistoryOrdChooser In order to select a reference Ord instead of typing it, you can use the HistoryOrdChooser. You can select items from the tree by type slot or Handle. workbench:RefChooser In order to select a reference Ord instead of typing it, you can use the RefChooser. You can select items from the tree by type slot or Handle. workbench:BqlQueryBuilder In order to select a BQL query instead of typing it, you can use the BqlQueryBuilder. BQL is one Scheme used to Query in the Niagara Framework. An Ord is made up of one or more Queries. A Query includes a Scheme and a body. The bql Scheme has a body with one of the following formats: BQL expression Select projection FROM extent Where predicate You can create the Ord Qualifier, Select, FROM and Where portions of a Query. Ord Qualifier In the left window, you can select an Ord to use as the qualifier. It will immediately be placed in the BQL statement at the top when you select it. If you select the history Scheme, your options will vary from those shown here. workbench:ProjectionBuilder In order to build the projection for a BQL request instead of typing it, you can use the ProjectionBuilder in Bql Builder. You can select an item from the center window to use with the select statement. Press the right arrow to add each one to the projection. Bql Expressions" An expression can be one of the following: field like displayName x.y.z any method that returns non-void and takes zero parameters After you build the BQL statement, you can remove the "Select" to provide a BQL expression instead of a Select statement. workbench:ExtentBuilder An extent can be one or more of the following: "*" all available from the target all property slots all methods that return non-void and take zero parameters In order to build the Extent for a BQL request instead of typing it, you can use the ExtentBuilder in Bql Builder. You can select the Restrict Type and choose the module and item to use with the FROM clause. It will immediately appear in the BQL statement at the top. This also changes the items that are available in the projection. If you choose a history Scheme, the ExtendBuilder will provide different selections. The extent for a History typically can be one of the following: "from /demo/Float" where demo is the station name "from !Float" where "!" signifies the current station
workbench:QualifierBuilder In order to build the Qualifier for a BQL request, you can type it in the QualifierBuilder in Bql Builder. As you type, it will immediately appear in the BQL statement at the top. Edit Facets Edit Facets allows viewing and editing of facets. In order to change facets, you use the button to the right of the facets. It will present the Edit Facets dialog box. From here you can Add, Remove or select the Enum Range Dialog. Add Add allows you to add a Key and Type. Remove Remove allows you to remove facets. Enum Range Dialog In order to view or set the range of values for a Enum, you can use the present the Enum Range Dialog: . It will
You can enter one of the standard Enumerations in the field under the Use Enum Type in Range (module:name).
14-61
Press Use Enum Type in Range (module:name) to use the Enumeration that you entered. In order to enter or change an Enumeration, enter the Ordinal in the field above the Add button. Next enter the new value for the Tag and press Modify. Press OK to complete the dialog.
workbench-SlotSheet
The Slot Sheet shows all the user visible slots of the Component. This includes Actions, and Topics. The SlotSheet is a Table that shows the following for each slot: Slot # Name Display Name Definition flags Type The SlotSheet also optionally shows any Name Maps. The SlotSheet includes the following menus: SlotSheet Main Menu SlotSheet Component Menu Properties,
SlotSheet Main Menu The Workbench main menu functions are available. When the SlotSheet is visible, the following SlotSheet menu functions are also available: Add Slot Ctrl + A Rename Slot Ctrl + R Config Flags Config Facets Reorder Add Name Map
SlotSheet Component Menu If you Right-click any Component in the SlotSheet or the background, you can choose from the following: Add Slot Ctrl + A Copy Ctrl + C Delete Delete Rename Slot Ctrl + R Config Flags Config Facets Add Name Map
SlotSheet Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. When the SlotSheet is visible, additional toolbar buttons include: Add Slot Rename Slot Config Flags Reorder Add Slot Add Slot allows you to add a slot to the Component. Rename Slot Rename Slot allows you to rename a slot in the Component. Add Name Map Add Name Map allows you to add a Name Map to the Component. You Rightclick on the Property displayNames to delete or rename Name Map and displayNames_xx to delete or rename Name Map (xx) where xx is the Language Code. Config Facets Configure Facets on the Component. This is available on Properties. Rightclick a Property to view the Config Facets Dialog.
workbench-StationSummary
StationSummary is the default view on a Station. It holds primary components (e.g. Config, Files, History) and shows specific configuration information about the stations host platform, including: Station Name Host Host Model Host Id Niagara Version
NiagaraAX-3.x User Guide
14-62
Java Version OS Version Locale Current Time The TextFileEditor Plugin provides a powerful Color coded text editor. It supports Color coding of
C, java and xml file types. See File Types for more information on Color coding of specific file types.
workbench-TextFileEditor
See TextEditorOptions to change editor options including Color coding. TextFileEditor Menus The Workbench main menu functions are available. TextFileEditor Toolbar The Workbench toolbar contains navigation and editing buttons as described in About the toolbar on page 2-12. File Types The TextFileEditor Plugin provides a powerful Color coded text editor. It supports Color coding of C, java, properties, Python and xml file types. See TextEditorOptions to change editor options including Color coding. C Files The TextFileEditor supports special Color coding for C files including:
NiagaraAX-3.x User Guide
Preprocessor - #include Line Comment - / comment / Multiline Comment - /* comment */ String literal - "string" and 'string' Number literal - '0' and 'F' Keyword - blue - if Identifier - HTML element or CSS identifier Line Comment - / comment / Multiline Comment - /* comment */ String literal - "string" and 'string' Number literal - '0' and 'F' Keyword - blue - if Identifier - HTML element Multiline Comment - <!-- Comments here --> String literal - "string" and 'string' Number literal - '0' and 'F' Keyword - blue - if Bracket - ( { [ Keyword - if Line Comment - / comment / Multiline Comment - /* comment */ String literal - "string" and 'string' Number literal - '0' and 'F' Bracket - ( { [ Keyword - if Line Comment - / comment / Multiline Comment - /* comment */ String literal - "string" and 'string' Number literal - '0' and 'F' Line Comment - # Bracket - = Bracket - {}()[] Keyword - if Line Comment - #
CSS Files The TextFileEditor supports special Color coding for CSS files including:
HTML Files The TextFileEditor supports special Color coding for HTML files including:
Java Files The TextFileEditor supports special Color coding for Java files including:
JavaScript Files The TextFileEditor supports special Color coding for JavaScript files including:
Properties Files The TextFileEditor supports special Color coding for properties files including:
Python Files The TextFileEditor supports special Color coding for Python files including:
14-63
String literal - "string" and 'string' Number literal - '0' and 'F' Multiline Comment - <!-- comment -->> Bracket - < > < > String literal - "string" and 'string' Service Manager allows you to view services. It is available on the ServiceContainer.
Xml Files The TextFileEditor supports special Color coding for Xml files including:
workbench-ServiceManager workbench-WbPxView
PxView is a dynamic view which may be added to Components as a property. PxViews store the view contents in a PxFile which is an XML file with a PX extension. The view itself is defined as a tree of bajaui:Widgets. For more information about Px views, refer to About Px views on page 8-2. For more information about Px view menus, refer to About the Px Editor menu on page A-7. Related Px information is available as listed below:. About Px files on page 8-3 About Px viewer on page 8-4 About Px Editor on page 8-5
WbPxView Menus The Workbench main menu functions are available. When the Px Viewer is visible, the following menu functions are also available: PxViewer View Source Xml PxViewer View Source Xml You can view the source XML of a PX Page by selecting View Source Xml from the main menu.
workbench-WbServiceManagerView
Workbench Service Manager allows you to view services. It is available from the Tools menu.
14-64
CHAPTER
References
In this appendix (introduction)
This appendix contains the following reference information:
About keyboard shortcuts Explains how to use the keyboard to enter menu bar and popup menu commands without using the mouse. Types of menu bar items Describes the different menu items available from the menu bar. Refer to About the menu bar on page 2-12 for an overview of the menu bar. Types of popup menu items Describes the popup menus that appear in different views and contexts. Types of toolbar icons Describes the types of icons that are in the toolbar. For an overview of the toolbar, refer to About the toolbar on page 2-12.
A1
Ctrl + X - cut; Ctrl + Z - undo; Ctrl + F1 - Find Bajadoc Ctrl + F4 - Active Plugin Ctrl + F5 - searchFindFiles; Ctrl + F6 - searchReplaceFiles; Ctrl + F9 - Compile Ctrl + PageUp - Next Tab Ctrl + PageDown - Previous Tab Shift + F8 - searchConsolePrev; Ctrl + Shift + F - searchFindPrev; Ctrl + Alt + Z - redo;
A-2
Open Platform You may open a Platform by selecting File > Open > Open Platform... from the main menu. This will cause the following popup window to be presented so that you can complete each field. Host - This is the address of the computer running the Platform that you wish to access. Port - This is the port used. Password - This is the password given to you by your system administrator. Remember these credentials - This will save this connection in your connection list. Once you successfully connect to the Platform, it will appear in the tree and the available tools will be displayed. Find Stations You may find Stations by selecting File > Open > Find Stations... from the main menu. This command finds all the stations running on the network. It will search for 5 seconds, then display a Table of all the stations found. You may display additional columns about each station using the options button (on the right of the header). Double-click a Station to open a Fox connection to it. Back Back allows you to go to the previous view. The shortcut is Alt + Left. Forward Forward allows you to go to the next view. You must have used the Back command previously. The shortcut is Alt + Right. Up Level Up Level allows you to go to the next level up. The shortcut is Alt + Up. Save Saves the value of the Component. Save Bog Save the Component changes to the Bog File file. Save All Save all open views. This saves all Tabs when browsing with multiple Tabs. Recent Ords Recent Ords allows you to see recent Ords. The shortcut is Alt + Space. Refresh Refresh allows you to refresh the current view. Home Home allows you to go to the home view. The shortcut is Alt + Home. Printing Printing provides the capability to print the current view. When it appears dimmed, printing is not available. Export Export provides the capability to Export the current view. When it appears dimmed, Export is not available. Logging off the System You may exit the system by a number of means. You may Close the session, Close All sessions, Exit, or Close the current window. Each of these causes different actions and should be understood. Close Session You may logoff the Station at any time by selecting File > Close from the main menu. Once you successfully close a session, it will be removed from the tree. This could leave a user interface running without an open session. Disconnect You may logoff the system at any time by Right-clicking the connected system in the tree and select Disconnect. This allows you to close a session with a Station without removing it from the tree. Dismiss You may logoff a connected system at any time by Right-clicking the connected system in the tree and select Dismiss. This allows you to close a session with a Station and remove it from the tree. Exiting the System You may exit the system at any time by selecting File > Exit from the main menu. This differs from logoff in that it also causes the user interface to stop. Close the Current Window You may close the current window at any time, if it is not the primary window, by any of the following methods: selecting File > Close from the main menu pressing the box in the top left corner and selecting Close from the menu
A-3
pressing the close icon in the top right corner of the window New Window New Window requests that a new window be created identical to the current one. This allows you to view multiple views concurrently. New Tab New Tab requests that a new tab be created identical to the current one. This allows you to view multiple views in the same Window. You can hold down the Ctrl key during a Double-click to hyperlink into a new tab. You can also Right-click to get a popup menu on tabs to close the tab, or close all other tabs. Close Tab Close Tab requests that a tab be closed. Close Other Tabs Close Other Tabs requests that all other tabs be closed. Next Tab Next Tab selects the next tab. The shortcut is Ctrl + PageUp. Previous Tab Previous Tab selects the previous tab. The shortcut is Ctrl + PageDown.
A-4
the main browser window. You can use Drag to Cut and Paste in one operation. You can add a Component to a running Station or an offline Bog File file. You can do this using any of the following: In the Wire Sheet, Right-click on the background and select Paste to add the new Component. The new Component is created and is selected. In the tree, Right-click on a Container and select Paste to add the new Component inside the Container. See the Bajadoc Index for reference information. If you select Help > Guide On Target with a Component selected, you will get the Guide for that Component. If you select Help > Bajadoc On Target with a Component selected, you will get the bajadoc for that Component. The BooleanWritable bajadoc is at module://control/doc/javax/baja/control/BBooleanWritable.bajadoc. Paste Special Paste Special copies the contents of the clipboard to the destination Component when it is a Special Transferable. Duplicate Duplicate copies the current Selection and places a duplicate in the same Container. This function may be access from the menu under Edit (shortcut Ctrl + D) or from the toolbar. Delete Delete removes the current Selection from its parent Container. It may be accessed by selecting an item and: Right-clicking the item(s) and choosing Delete Right-click in the tree and choosing Delete In the Wire Sheet press the Delete toolbar button. In the Wire Sheet select Edit > Delete from the main menu Undo This reverses the last Action as if it had not been performed. It is only available for certain actions such as: Paste Component Cut Component link Delete Links Redo This restores an Action after Undo has removed it. It is only available after a successful Undo.
A-5
Console Prev Console Prev allows you to go to the previous console error. The shortcut is F7. Console Next Console Next allows you to go to the next console error. The shortcut is F8.
You can choose whether to have Side Bars by selecting Window > Side Bars > Show Side Bar from the main menu. For more information about the side bar refer to About the side bar panes on page 2-2.
Bookmarks
You can choose to show the Bookmarks Side Bar by selecting Window > Side Bars > Bookmarks from the main menu. For more information about the Bookmarks side bar refer to About the bookmark
A-6
NiagaraAX-3.x User Guide
The typical configuration provides a Help Sidebar frame in the left side of the main window. If it is not open, you can choose to display the Help Side Bar by selecting Window > Side Bars > Help from the main menu. Initially, the Help Sidebar is empty until you press Load Help. Load Help will reappear any time any Module's timestamp is changed or a new Module is added or removed. Load Help searches through all the available Modules to create the help Directory. The Help Sidebar provides a view of the available Help. For more information about the Help Sidebar refer to About the help side bar on page 2-4.
Jobs Sidebar
The Jobs SideBar shows all the current jobs in all the stations with which you have a connection. Controls are provided to allow you to view a job log or dismiss a completed job. For more information about the Jobs side bar refer to About the jobs side bar on page 2-8.
Nav
You can choose to show the Nav side bar by selecting Window > Side Bars > Nav from the main menu. For more information about the Nav side bar refer to About the nav side bar on page 2-5.
Palette
You can choose to show the Palette Side Bar by selecting Window > Side Bars > Palette from the main menu. For more information about the Palette side bar refer to About the palette side bar on page 2-7.
PathBar Uses NavFile You can toggle this option ON or OFF by selecting Window > Side Bars > PathBar Uses NavFile. When ON, the PathBar (located at the top of the Workbench main window) displays your current path, as defined by the NavFile (logical path). When OFF (not selected) the PathBar displays your absolute path regardless of whether it is mapped to the NavFile or not. You must refresh the view after changing this setting in order to see the PathBar change. Active Plugin The Active Plugin function gives focus to the current view. From the main menu you can select Window > Active Plugin or use the shortcut Ctrl + F4. It is very useful to use F3/Ctrl + F4 to toggle between the Console and the Text File Editor. Hide Console You can hide the console by selecting Window > Hide Console from the main menu or using the shortcut Ctrl + F2. Console The Console provides the capability to issue console commands directly. From the main menu you can select Window and Console (F3) or Hide Console (F4) to determine if the console is visible. Refer to Types of console commands on page A-16 for information about console commands.
A-7
Types of popup menu items About the History Ext Manager menu
Go to Source Xml Selecting this opens the Px source (xml) file directly in the text file editor. Files can be edited and saved using the editor. Grid This command toggles the grid display on and off. Snap This command toggles the snaptogrid feature on and off. Show Hatch This command toggles the hatching pattern visibility on and off. When hatching is on, dim angular lines (hatching pattern) displays on objects to make them more visibly distinct. Set Target Media This command is available when you are editing a Px file directly in the Px Editornot when you are editing the Px file as a view of a component. When selected, this command displays the Set Target Media dialog box to allow you to choose your expected media viewer (HTML Px Media or Workbench Px Media). See About presentation media on page 1-14 for more details about media types.
A-8
Types of popup menu items About the nav side bar popup menu items
Wire sheet For descriptions of the wire sheet popup menu items, refer to About the wire sheet popup menu items on page A-10 Property sheet For descriptions of the property sheet popup menu items, refer to About the property sheet popup menu items on page A-10. Px Editor For descriptions of the About the Px Editor popup menu items on page A-10. History extension manager For descriptions of the About the history extension manager popup menu items on page A-11. Todo list For descriptions of the About the Todo list popup menu items on page A-11. Point Manager For descriptions of the About the point manager popup menu items on page A-12.
A-9
Types of popup menu items About the wire sheet popup menu items
Refresh This menu item updates the display of the currently active view. Go Into Go Into allows you to re-root the nav tree at any arbitrary node. Right-click the node and select the "Go Into" command. This will make that node the new root of the tree. All the nodes you have "gone into" are persistently saved as a special type of Bookmark. Use the pulldown to switch between them. This feature is quite handy when working with multiple Stations or deep File systems and Databases.
A-10
Types of popup menu items About the history extension manager popup menu items
in the view pane. This command will not move the object out of its parent object. Reorder > To Bottom This command is available when you select one or more objects in the Px Editor. Choose the To Bottom command to move the selected object to the bottom position (inside its parent object) in the Widget Tree. This command will place the object behind (with respect to the view pane, or zaxis) all other objects in the parent object, but will not move the object out of its parent object. Border > Add Border This command is available when you select one or more objects in the Px Editor. Choose the Add Border command to wrap selected object(s) with a border pane. Each selection is wrapped in a separate border pane. Border > Remove Border This command is available when you select one or more border panes in the Px Editor. Choose the Remove Border command to delete selected border pane(s).
A-11
Types of popup menu items About the point manager popup menu items
Remove Displays a Remove selected items? prompt, when clicked; deletes selected items when the prompt is affirmed. Refer to Todo list on page 11-10 for general information about the Todo list view.
A-12
Back. See Back on page A-3 for details about the Back function. Forward. See Forward on page A-3 for details about the Forward function.
A-13
Up Level. See Up Level on page A-3 for details about the Up Level function. Recent Ords. See Recent Ords on page A-3 for details about the Recent Ords function. Home. See Home on page A-3 for details about the Home function. Refresh. See Refresh on page A-3 for details about the Refresh function. Left Side Bar. See Side Bars on page A-6 for details about the Side Bars function. Open. See About the File menu on page A-2 for details about all the Open functions. Save Ctrl + S. See Save on page A-3 for details on the Save function. Save Bog. See Save Bog on page A-3 for details on the Save Bog function. Printing Ctrl + P. See Printing on page A-3 for details on the Printing function. Cut Ctrl + X. See Cut on page A-13 for details on the Cut function. Copy Ctrl + C. See Copy on page A-13 for details on the Copy function. Paste Ctrl + V. See Paste on page A-13 for details on the Paste function. Duplicate Ctrl + D. See Duplicate on page A-13 for details on the Duplicate function. Delete Delete. See Delete on page A-13 for details on the Delete function. Undo Ctrl + Z. See Undo on page A-13 for details on the Undo function. Redo Ctrl + Alt + Z. See Redo on page A-13 for details on the Printing function.
A-14
Types of toolbar icons About the history extension manager toolbar icons
Activates the polygon tool for drawing polygons. Add Path Activates the path tool that allows you to draw bezier curves in the Px Editor view. Add Point Activates the Add Point tool that allows you to add a point to a path or a polygon in the Px Editor view. Delete Point Activates the Delete Point tool that allows you to remove a point from a path or a polygon in the Px Editor view.
A-15
Remove Displays a Remove selected items? prompt, when clicked; deletes selected items when the prompt is affirmed.
A-16
-hosted This option displays the id for the system host. -licenses This option displays a summary of the license information. -props This option displays a list of the system properties. -locale:<x> This option allows you to set the default locale. For example, to set the default locale to US English, type: -locale:en_US -@option This option allows you to pass the specified option to the Java VM. -testheap This option tests and displays the max heap size. -buildreg This option causes a rebuild of the registry.
wb (Workbench) commands
The wb command starts up an instance of Workbench. Use the following syntax with the wb command: wb [options] <ord> The following parameter may be used with the wb command. ORD This option specifies the ORD of the initial view that you want display when Workbench starts up. The following options may be used with the wb command. -profile This option specifies the workbench profile to assign when Workbench starts up. -file:ord This option specifies the initial file to display when Workbench starts up. -locale<x> This option sets the locale on startup. -@<option> This options allows you to pass the specified option to the Java VM.
A-17
tellstation This command sends text to the console of a running Niagara station. watchstation This command monitors the output of a niagara station. installdaemon This command installs the Niagara platform service (Win32 only). uninstalldaemon This command removes the Niagara platform service (Win32 only). installdialup This command installs the Niagara dialup service (Win32 only). unistalldialup This command removes the Niagara dialup service (Win32 only). The following options may be used with the plat command. -usage plat -usage prints the help listing in the console plat <command> -usage prints the command specific usage in the console -? plat -? prints the help listing in the console plat <command> -? prints the command specific usage in the console -help plat -help prints the help listing in the console plat <command> -help prints the command specific usage in the console -locale:<x> This option sets the default locale (en_US). -@<option> This option passes the option to the Java VM. -buildreg This option forces a rebuild of the registry.
SVG Colors
The following list provides information about X11 colors that are supported by popular browsers with the addition of gray/grey variants from SVG 1.0. The list is the same as the SVG 1.0 color keyword names. The two color swatches on the left illustrate setting the background color of a table cell in two ways: The first column uses the named color value, and the second column uses the respective numeric color value.
Caution The appearance of colors varies in different media (print, screen, and so on). Colors presentation also vary between browsers. The most reliable way to preview colors is in the browser type and version that it is are targeted for. Table A-1 SVG color table
Named
Numeric
Color name
aliceblue antiquewhite aqua aquamarine azure beige bisque black
Hex rgb
#f0f8ff #faebd7 #00ffff #7fffd4 #f0ffff #f5f5dc #ffe4c4 #000000
Decimal
240,248,255 250,235,215 0,255,255 127,255,212 240,255,255 245,245,220 255,228,196 0,0,0
A-18
Named
Numeric
Color name
blanchedalmond blue blueviolet brown burlywood cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan darkblue darkcyan darkgoldenrod darkgray darkgreen darkgrey darkkhaki darkmagenta darkolivegreen darkorange darkorchid darkred darksalmon darkseagreen darkslateblue darkslategray darkslategrey darkturquoise darkviolet deeppink deepskyblue
Hex rgb
#ffebcd #0000ff #8a2be2 #a52a2a #deb887 #5f9ea0 #7fff00 #d2691e #ff7f50 #6495ed #fff8dc #dc143c #00ffff #00008b #008b8b #b8860b #a9a9a9 #006400 #a9a9a9 #bdb76b #8b008b #556b2f #ff8c00 #9932cc #8b0000 #e9967a #8fbc8f #483d8b #2f4f4f #2f4f4f #00ced1 #9400d3 #ff1493 #00bfff
Decimal
255,235,205 0,0,255 138,43,226 165,42,42 222,184,135 95,158,160 127,255,0 210,105,30 255,127,80 100,149,237 255,248,220 220,20,60 0,255,255 0,0,139 0,139,139 184,134,11 169,169,169 0,100,0 169,169,169 189,183,107 139,0,139 85,107,47 255,140,0 153,50,204 139,0,0 233,150,122 143,188,143 72,61,139 47,79,79 47,79,79 0,206,209 148,0,211 255,20,147 0,191,255
A-19
Named
Numeric
Color name
dimgray dimgrey dodgerblue firebrick floralwhite forestgreen fuchsia gainsboro ghostwhite gold goldenrod gray green greenyellow grey honeydew hotpink indianred indigo ivory khaki lavender lavenderblush lawngreen lemonchiffon lightblue lightcoral lightcyan lightgoldenrodyellow lightgray lightgreen lightgrey lightpink lightsalmon
Hex rgb
#696969 #696969 #1e90ff #b22222 #fffaf0 #228b22 #ff00ff #dcdcdc #f8f8ff #ffd700 #daa520 #808080 #008000 #adff2f #808080 #f0fff0 #ff69b4 #cd5c5c #4b0082 #fffff0 #f0e68c #e6e6fa #fff0f5 #7cfc00 #fffacd #add8e6 #f08080 #e0ffff #fafad2 #d3d3d3 #90ee90 #d3d3d3 #ffb6c1 #ffa07a
Decimal
105,105,105 105,105,105 30,144,255 178,34,34 255,250,240 34,139,34 255,0,255 220,220,220 248,248,255 255,215,0 218,165,32 128,128,128 0,128,0 173,255,47 128,128,128 240,255,240 255,105,180 205,92,92 75,0,130 255,255,240 240,230,140 230,230,250 255,240,245 124,252,0 255,250,205 173,216,230 240,128,128 224,255,255 250,250,210 211,211,211 144,238,144 211,211,211 255,182,193 255,160,122
NiagaraAX-3.x User Guide
A-20
Named
Numeric
Color name
lightseagreen lightskyblue lightslategray lightslategrey lightsteelblue lightyellow lime limegreen linen magenta maroon mediumaquamarine mediumblue mediumorchid mediumpurple mediumseagreen mediumslateblue mediumspringgreen mediumturquoise mediumvioletred midnightblue mintcream mistyrose moccasin navajowhite navy oldlace olive olivedrab orange orangered
Hex rgb
#20b2aa #87cefa #778899 #778899 #b0c4de #ffffe0 #00ff00 #32cd32 #faf0e6 #ff00ff #800000 #66cdaa #0000cd #ba55d3 #9370db #3cb371 #7b68ee #00fa9a #48d1cc #c71585 #191970 #f5fffa #ffe4e1 #ffe4b5 #ffdead #000080 #fdf5e6 #808000 #6b8e23 #ffa500 #ff4500
Decimal
32,178,170 135,206,250 119,136,153 119,136,153 176,196,222 255,255,224 0,255,0 50,205,50 250,240,230 255,0,255 128,0,0 102,205,170 0,0,205 186,85,211 147,112,219 60,179,113 123,104,238 0,250,154 72,209,204 199,21,133 25,25,112 245,255,250 255,228,225 255,228,181 255,222,173 0,0,128 253,245,230 128,128,0 107,142,35 255,165,0 255,69,0
A-21
Named
Numeric
Color name
orchid palegoldenrod palegreen paleturquoise palevioletred papayawhip peachpuff peru pink plum powderblue purple red rosybrown royalblue saddlebrown salmon sandybrown seagreen seashell sienna silver skyblue slateblue slategray slategrey snow springgreen steelblue tan teal thistle tomato turquoise
Hex rgb
#da70d6 #eee8aa #98fb98 #afeeee #db7093 #ffefd5 #ffdab9 #cd853f #ffc0cb #dda0dd #b0e0e6 #800080 #ff0000 #bc8f8f #4169e1 #8b4513 #fa8072 #f4a460 #2e8b57 #fff5ee #a0522d #c0c0c0 #87ceeb #6a5acd #708090 #708090 #fffafa #00ff7f #4682b4 #d2b48c #008080 #d8bfd8 #ff6347 #40e0d0
Decimal
218,112,214 238,232,170 152,251,152 175,238,238 219,112,147 255,239,213 255,218,185 205,133,63 255,192,203 221,160,221 176,224,230 128,0,128 255,0,0 188,143,143 65,105,225 139,69,19 250,128,114 244,164,96 46,139,87 255,245,238 160,82,45 192,192,192 135,206,235 106,90,205 112,128,144 112,128,144 255,250,250 0,255,127 70,130,180 210,180,140 0,128,128 216,191,216 255,99,71 64,224,208
A-22
Named
Numeric
Color name
violet wheat white whitesmoke yellow yellowgreen
Hex rgb
#ee82ee #f5deb3 #ffffff #f5f5f5 #ffff00 #9acd32
Decimal
238,130,238 245,222,179 255,255,255 245,245,245 255,255,0 154,205,50
A-23
A-24
CHAPTER
Glossary
action Action is a slot that defines a behavior which can be invoked on a Component. See helpBajadocViewer Actions for more information. administrator Administrator Security Permissions are defined to be the functions required to configure a system. This person may need to view or edit all the features of the system. Administrator Edit includes creating Components and Linking Components in addition to editing Properties. See Administrator Security for more information.
agent An agent is a special Object type that provides services for other Object types. Agents are registered on their target types via the Module manifest and queried via the Registry interface. alarm Alarms provide the ability to be notified when a special event occurs. See AlarmConsole or AlarmPortal for more information. animate Animate allows you to change a property's value based on changing information. In the PxEditor, right-click a property and select Animate.
API API is a Application Programming Interface. It defines how software engineers access the capabilities of software like the Niagara Framework.
applet A small Java program that can be embedded in an HTML page. Applets differ from full-fledged
Java applications in that they are not allowed to access certain resources on the local computer, such as files and serial devices (modems, printers, etc.), and are prohibited from communicating with most other computers across a network. The common rule is that an applet can only make an Internet connection to the computer from which the applet was sent. See also BAppletView.bajadoc for more technical information.
archive Archive is a History that is stored in a different station from where it originated. audit The Audit keeps a History of changes made by users. If enabled, it registers itself as the Auditor for the system when the service is started. One of the important aspects of security is the ability to analyze what has happened after the fact. See history-AuditHistoryService for more information. back Back refers to the last location viewed by the browser. It is required in order to go forward. BACnet BACnet refers to A Data Communication Protocol for Building Automation and Control Networks. Developed under the auspices of the American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE), BACnet is an American national standard, a European pre-standard, and an ISO global standard. The protocol is supported and maintained by ASHRAE Standing Standard Project Committee 135. See the BACnet Guide for more information on BACnet in the Niagara Framework.
Baja Baja is a term coined from Building Automation Java Architecture. The core framework built by Tridium is designed to be published as an open standard. This standard is being developed through Sun's Java Community Process as JSR 60. See Baja vs. Niagara in the Developer Guide for more information. Bajadoc Bajadoc is the Baja reference documentation. Baja reference documentation includes
both Java API details as well as Baja slot documentation. See help-BajadocViewer for more information.
binding A Binding is used to bind a Widget to a data source. Bindings are bound to one Object
using an Ord. Subclasses are registered as Agents on the type of Objects to which they can be bound to. See also BBinding.bajadoc for more technical information.
B1
bog file A Bog file contains Baja Components. It can be a complete Database or any Collection of Components. A Bog File is a special file that can describe Components in a Database. All views can be used on Components in a Bog File just as if they were in a Station. See Bog Files in the Developer Guide for more information.
bookmark Bookmark identifies a single bookmark. See Bookmarks and About the bookmark side bar for more information. Bajadoc is available at BBookmark.bajadoc. BooleanPoint BooleanPoint defines a read only control point with only an output element. Bajadoc is available at BBooleanPoint.bajadoc. BQL BQL is an acronym for Baja Query Language. BQL has a select statement similar to the select statement of Structured Query Language (SQL). It is typically used to provide programmable access to information in Niagara. See BQL in the Niagara Developer Guide for more details.
bql scheme The "bql" Scheme is used to encapsulate a BQL query. browser A browser is a program used to access Web Pages from a Web Server. A special browser is used
within the Workbench to access the Niagara Framework. Other common browsers include Microsoft Internet Explorer, Mozilla and firefox.
build The build tool is used to build the Niagara Framework itself. You may utilize this build tool to
manage your own Niagara modules. See build.html in the Developer Guide for more information.
cancel Stop the current Action or ignore changes. See Edit Cancel for more information. chart A chart is a graphical representation of data. The HistoryChart is a view that allows you to
view and configure charts of histories. See Types of history views on page 6-9 for more information.
click Click
means to press and release the primary or secondary mouse button.
client The client part of a client-server architecture. Typically, a client is an application that runs on one
computer and relies on a server to perform some operations. For example, an e-mail client is an application that enables you to send and receive e-mail.
clipboard The clipboard contains the results of copy or cut operations and can be used for paste. collection A collection represents a group of objects, known as its elements. Some collections allow duplicate elements and others do not. Some are ordered and others unordered. See Collection.bajadoc for more technical information. color Color stores a color specification via an alpha, red, green, and blue component. See BColor.bajadoc for more information. command Command typically refers to an Action in the Niagara Framework. See About point actions
on page 3-3 for more information on point commands.
component A Component is the primary building block of the Niagara Framework. See bajaComponent for more information.
composite A Composite allows you to expose child slots of a Component as slots on the parent.
See About composites on page 3-26 for more information.
connect Connect refers to entering a valid Address for the SYSTEM to connect, User Name and
Pass Phrase. This creates an active session for use of the system.
console Console provides a simple runtime console for managing and debugging the station. See
About the console on page 2-11 for more information.
container Containers allow you to logically group Components. The current Container is the Component that contains the Components in the display window. See baja-Component Containers for more information.
context Context is used in operations which may perform differently depending on their context. Examples include operations which may require auditing or localization. control The control module provides normalized components for representing control points. All control points subclass from the ControlPoint base class. Control points are typically used with the Driver
NiagaraAX-3.x User Guide
B-2
framework to read and write points in external devices. See Control in the Developer Guide for more information.
control point In the narrowest terms, control points refer to the 8 point types found in the Baja
control palette under the Points folder. See About control points on page 3-1. In broader terms, control points include other components found in both the control and kitControl palettes. Most of these are "classed" from the 8 basic point types. See Other control components on page 3-2. ControlPoint is the base class for all point types in the Baja control architecture. A ControlPoint typically maps to one value being read or written via a driver. All ControlPoints have a StatusValue property called "out". ControlPoints inherit from BooleanPoint, EnumPoint, NumericPoint and StringPoint. If the predefined proxyExt is not a NullProxyExt then the point is considered a proxy point which means that it is a local representation of a point which actually exists in an external device. The driver framework is used to maintain synchronization.
copy Copy places a copy of the Selection in the clipboard for a future paste operation. The shortcut is Ctrl + C (hold down Ctrl and press C). See Edit Copy for more information. credentials Manage Credentials is available in the main Tools menu by selecting Manage Credentials.... You can Reset or Remove selected Credentials or Remove All Credentials. See New module wizard on page 11-8 for more information. CSS CSS is cascading style sheet. CSV The CSV ("Comma Separated Values") file format is used to exchange data between applications. cut Cut places the Selection in the clipboard for a future paste operation. It is deleted from its current location. The shortcut is Ctrl + X (hold down Ctrl and press X). See Edit Cut for more information. daemon Daemon typically refers to the Niagara platform daemon, the server process required by a Niagara host to run a station. There is also a separate dialup daemon to handle dialup modem functions.
database Database is used to store information. Examples of databases include the Registry or a Station database. debug Debug refers to testing or correcting software. The Program Debugger provides debug capability for program Components. delete Delete removes the current Selection from its parent Container. The shortcut is Delete. See
Edit Delete for more information.
delete links Delete Links removes the selected links from the parent Container. dependencies All Modules include zero or one dependencies element. This element contains zero or more dependency elements which enumerate the Module's dependencies. Dependencies must be resolved by the framework before the Module can be successfully used. Each dependency has one required attribute. The name attribute specifies the globally unique name of the dependent Module. A dependency may also specify a bajaVersion and/or a vendor version. If the bajaVersion attribute is declared then it specifies the lowest bajaVersion of the dependent Module required. It is assumed that higher versions of a Module are backward compatible, thus any version greater than the one specified in a dependency is considered usable. Likewise the vendor and vendorVersion may be specified to declare a dependency on a specific implementation of a Module. The vendor attribute may be specified without the vendorVersion attribute, but not vise versa. The required embed attribute specifies whether the dependency should be enforced on embedded Niagara devices.
The ModuleSpaceView supports the ability to right click a Module and display all its dependencies. These dependencies are as declared by the Module's manifest. To compute the dependencies needed to use a specific API a new Dependencies command has been added to the BajadocViewer Menus. This command will compute all the classes and Modules required to use a specific class in the API.
device extensions DeviceExt is the abstract base class for device extensions which provide feature integrations between the device's native protocol and model and the framework's normalized model. See BDeviceExt.bajadoc for more information.
B-3
directory Directory is the File type used to represent Directories in File space implementations. See BDirectory.bajadoc for more information. disabled Status disabled means a user manually disabled the component using the enabled property (enabled = false). Disabled always propagates down. For example if you set the network disabled, that forces all child devices disabled, which then forces all proxy points under each device disabled. See About point status on page 3-15 for more information. disconnect You may logoff the system at any time by Right-clicking the connected system in the tree and select Disconnect. This allows you to close a session with a Station without removing it from the tree. discover Discover allows you to find items that are defined using a drivers framework. See About Device Discover, Add and Match (Learn Process) on page 4-16 and About Point Discover, Add and Match (Learn Process) on page 4-32 for more information. domain Security Domains may be assigned to any Component or set of Components in the system. For example, security domains may be used to assign Components into application domains such as hvac, fire, and lighting or security domains can be used to assign Components into customer groups such as tenant 1, tenant 2, etc.
double-click Double-click
means to press and release the primary mouse button twice.
down Down means a communication error at the network or device level. Down always propagates down. Down is controlled by the pingFail and pingOk methods. The reason why a device is down is always stored in the health.lastFailCause property. download Download refers to passing data down to a device. You may download a Station from its supervisor.
drag Drag means to move the mouse while pressing the primary mouse button. driver Drivers use "Managers" which provide a consistent look and feel for managing configuration and
learning of devices and points. The cornerstone of the driver tools is the ability to support batch edits and Learns. See Driver Framework in the Developer Guide for more information.
duplicate Duplicate copies the current Selection and places a duplicate in the same Container. The shortcut is Ctrl + D (hold down Ctrl and press D). See Edit Duplicate for more information. edit Edit refers to changing software. Edit Mode allows you make changes to the system. element The elements define the hierarchical structure of a document. The majority of elements have opening and closing Tags. Among these Tags, pieces of text or even the whole documents can be found. There are empty elements which contains only opening Tags without any content.
An element may also model one single piece of information in the Baja control architecture. The most common types of elements are: BooleanElement NumericElement EnumElement StringElement All elements regardless of their value type share common attributes. Every element has a status property which provides a consistent mechanism to convey point status. Each element also contains a priority level for informational purposes. If the priority is PriorityLevel.none, this is not a prioritized element. Elements are basic building blocks from which larger, more sophisticated control points are created. A control point contains one or more input elements and one or more output elements. Elements can also be linked between Baja Objects to move data.
enumeration Enumeration represents a value data item which has a fixed set of possible values. This set of values is called the Enumeration's Range. The standard enumerations include:
alarm:AlarmRecordTypes alarm:AlarmTransition baja:Month
NiagaraAX-3.x User Guide
B-4
baja:Weekday control:AlarmState control:AlarmType control:CollectionState control:DisableAction control:LoopAction control:NotifyType control:PriorityLevel control:Reliability control:TotalizationInterval driver:ArchiveMode driver:ArchiveResult driver:ArchiveState driver:PollFrequency driver:ProxyState See Enum Range Dialog or BEnum.bajadoc for more information.
EnumPoint EnumPoint defines a read only control point with only an output element. Bajadoc is available at BEnumPoint.bajadoc. export Export refers to providing data from the system for external use. You can export any Table found
in the workbench (anything built with bajaui:Table). The Table options menu (that little button to the right of the header), includes a Print and Export command. These commands allow you to export the table to PDF, HTML, or CSV (ExcelFile). The export uses the current sort order and visible columns you have displayed. The Niagara Framework also exports its Database to XML for backup and conversion.
extension Extensions allow plug-in functionality to support features such as alarming and historical
data collection.
facets Facets represents a facets in the system. See Facets on page 1-10 or BFacets.bajadoc for more information. fault Faults always propagate down. The framework now performs "fatalFault" checking such as making sure your device is under the right network type. Fatal faults will also be the mechanism used to perform licensing checks. Developers can also manage their fault condition via the configFail() and configOk() methods. The reason why a component is in fault is always stored in the faultCause property. feature Feature encapsulates a feature specification for the licensing framework. A feature is uniquely identified by a vendor and feature name. It contains an expiration and a set of optional properties. See also Feature.bajadoc for more technical information. file File represents a file in the file system of a session. See BogFile for some of the common file
types.
file scheme The "file" Scheme is used to identify files on the file system. All file ords resolve to instances
of javax.baja.file.BIFile. File queries always parse into a FilePath. File ords come in the following flavors: Authority Absolute: "//hostname/dir1/dir2" Local Absolute: "/dir1/dir2" Sys Absolute: "!lib/system.properties" Station Absolute: "^config.bog" Relative: "myfile.txt" Relative with Backup: "../myfile.txt" Sys absolute paths indicate files rooted under the Niagara installation directory identified via Sys.getBajaHome(). User absolute paths are rooted under the user home directory identified via Sys.getUserHome(). In the case of station VMs, user home is the directory of the station Database.
filter Filter is used to select specified items. An example is the Alarm Console Filter. find Find allows you to search for the selected string. The shortcut is F5. See Search Find for more information. find files Find Files allows you to find the all occurrences in the files. See Search Find Files for more information. find next Find Next allows you to find the next occurrence of the selected string. The shortcut is Ctrl + F (hold down Ctrl and press F). See Search Find Next for more information.
NiagaraAX-3.x User Guide
B-5
find prev Find Prev allows you to find the previous occurrence of the selected string. The shortcut
is Ctrl + Shift + F (hold down Ctrl and Shift and press F). See Search Find Prev for more information.
Firefox Firefox is a browser used to access Web Pages from a Web Server. See http://www.mozilla.org/ index.htmlfor more information. flag Flags are boolean values which are stored as a bitmask on each slot in a Baja Object. Some flags
apply to all slot types, while some only have meaning for certain slot types.
folder Folder represents a Folder in the file system of a session. See Folder for more information. format Format is used to format Objects into Strings using a standardized formatting pattern language.
The format String is normal text with embedded scripts denoted by the % percent character (use %% to insert a real %). A script is one or more calls chained together using the . dot operator. Calls are mapped to methods using reflections. Given call "foo", the order of reflection mapping is: special call (see below) getFoo(Context) getFoo() foo(Context) foo() get("foo") The following special functions are available to use in a script: time() calls Clock.time() to get current time as an AbsTime lexicon(module:key) gets the specified lexicon text Examples of formats: "hello world" "my name is %displayName%" "my parent's name is %parent.displayName%" "%value% {%status.flagsToString%} @ %status.priority%" "%time().toDateString%" * "%lexicon(bajaui:dialog.error)%" forward Forward refers to the next location for the browser to return. It is only available after a back.
Fox Fox is a proprietary protocol which is used for all network communication between Stations as well as between the Workbench and Stations. Fox is a multiplexed peer to peer protocol which sits onto of a TCP connection. fox scheme The "fox" Scheme is used to establish a Fox session. Fox is the primary protocol used by Niagara for IP communication. A "fox" query is formatted as "fox:" or "fox:<port>". If port is unspecified then the default 1911 port is assumed. FROM FROM is the mechanism to choose the extent. This may be a History or a class in a Station. See
ExtentBuilder for more information.
gadget Gadget is a visual representation of an arbitrary Object for views. Gif Gif stands for Graphical Interchange Format. It is a file format used for graphical images. glyph A Glyph is a visual representation. GotoFile Goto File allows you to go to a file that has been indexed with the file indexer. The shortcut
is Ctrl + F3 (hold down Ctrl and press F3). See Search Goto File for more information.
GotoLine Goto Line allows you to go to a line number in the file. The shortcut is Ctrl + G (hold down
Ctrl and press G). See Search Goto Line for more information.
handle scheme The "h" Scheme is used to resolve a Component by its handle. Handles are unique
String identifiers for Components within a ComponentSpace. Handles provide a way to persistently identify a component independent of any renames which modify a Component's slot path.
Help Help refers to the electronic documentation available. It includes electronic manuals as well
as context specific help.
B-6
Home Home refers to the originating page. Your home page in Niagara is the page that you see after you enter your password. It is programmed in your user Component. host Host is the navigation node used to organize navigation by hosts. Hosts are the first level of the navigation tree. Hosts represent a physical box. LocalHost is used to represent the local machine. Bajadoc is available at BHost.bajadoc. HTML HyperText Markup Language is the primary language for Web Servers. It is used in areas
such as the electronic help. A thin client property sheet is available. This interface is built using only HTML, CSS and JavaScript and doesn't require any Plugins. A Workbench style navbar with paths and drop downs is available, plus field editors for the core types: boolean, int, enum, float, abstime, and reltime.
HTTP HTTP is short for HyperText Transfer Protocol, the underlying protocol used by the World Wide Web (World Wide Web). HTTP defines how messages are formatted and transmitted, and what actions Web Servers and browsers should take in response to various commands. For example, when you enter a URL in your browser, this actually sends an HTTP command to the Web Server directing it to fetch and transmit the requested Web Page. The other main standard that controls how the World Wide Web works is HTML, which covers how Web Pages are formatted and displayed.
HTTP is called a stateless protocol because each command is executed independently, without any knowledge of the commands that came before it. This is the main reason that it is difficult to implement World Wide Web sites that react intelligently to user input. This shortcoming of HTTP is addressed in a number of technologies, including Java, JavaScript and cookies.
icon An icon is a graphical representation. Icons are used in the toolbar and in the tree. image Image is a representation of a raster image. Bajadoc is available at BImage.bajadoc. import Import refers to receiving data from an external source. The Niagara Framework imports its
Database from XML for backup and conversion.
ip scheme The "ip" Scheme is used to identify a BIpHost instance. Ords starting with "ip" are always absolute and ignore any base which may be specified. The body of a "ip" query is a DNS hostname or an IP address of the format "dd.dd.dd.dd". Java Java is a high-level programming language developed by Sun Microsystems. Java source code
files (files with a .java extension) are compiled into a format called bytecode (files with a .class extension), which can then be executed by a Java interpreter. Compiled Java code can run on most computers because Java interpreters and runtime environments, known as Java Virtual Machines (VMs), exist for most operating systems, including UNIX, the Macintosh OS, and Microsoft Windows. Bytecode can also be converted directly into machine language instructions by a just-in-time compiler (JIT). Java is a general purpose programming language with a number of features that make the language well suited for use on the World Wide Web. Small Java applications are called Java Applets and can be downloaded from a Web Server and run on your computer by a Java-compatible World Wide Web browser. For more information, seehttp://java.com andhttp://java.sun.com/.
JavaScript JavaScript refers to the standard scripting language used in HTML documents. Microsoft Internet Explorer support is discussed at http://msdn.microsoft.com/scripting/jscript/default.htm. Mozilla support is discussed at http://www.mozilla.org/js/index.htmlSee http://www.ecmainternational.org/publications/standards/Ecma-262.htmfor more information on the official Standard ECMA-262 ECMAScript Language Specification.
Jpeg Jpeg stands for Joint Photographic Experts Group. It is often abbreviated to JPG when the file
system is limited to a 3 character suffix. JPEG uses a Lossy compression method to create the final file.
language code Language Code refers to ISO 639 language code -- two letter, lower-case preferred. See http://www.loc.gov/standards/iso639-2/langcodes.html for the list. learn Learn allows you to discover and add items that are defined using the driver framework. See About Learn toggle on page 4-16 for more information.
NiagaraAX-3.x User Guide
B-7
left-click Click
or Left-click means to press and release the primary mouse button. For most systems, this is the left mouse button.
lexicon Lexicon is used to provide support for other languages. links Links are the relationships defined between Components. Links provide the means to pass data between Components. See Links in the Developer Guide for more information. local Local is a Scheme used in Ords. It is both a Host Scheme and a session Scheme. It represents Objects found within the local VM.
log Log is used to log events. The LogHistoryService keeps a History of Niagara log records. If enabled,
it registers itself as the LogHandler for the system when the service is started.
logoff Logoff refers to removing a user from an active session so that a password will have to be entered to logon for use of the system. logon Logon refers to entering a valid Address for the SYSTEM to connect, User Name and Pass Phrase.
This creates an active session for use of the system.
match Match allows you to match items that are discovered. menu A Menu is a list of choices. The Niagara Framework uses the main pull down menu and popup menus on the tree and Components. See menu for more information. Microsoft Internet Explorer Microsoft Internet Explorer is a browser used to access Web Pages
from a Web Server. See http://www.microsoft.com/ie for more information.
MIME The Multipurpose Internet Mail Extensions (MIME) provide a mechanism to determine file type in a standardized way. module The first step in understanding the Niagara architecture is to grasp the concept of modules. Modules are the smallest unit of deployment and versioning in the Niagara architecture. A module is: A JAR file compliant with PKZIP compression Contains a XML manifest in meta-inf/module.xml Is independently versioned and deployable States its dependencies on other modules and their versions See About modules on page 1-6, or Modules in the Developer Guide for more information.
module scheme The "module" Scheme is used to access BIFiles inside the module jar files. The module
Scheme uses the "file:" Scheme's formatting where the authority name is the module name. Module queries can be relative also. If the query is local absolute then it is assumed to be relative to the current module. Module queries always parse into a FilePath.
monitor Monitor refers to observing. The PingMonitor periodically calls ping on all the Pingables
to monitor network and device health. PingMonitor provides built-in support to generate alarms when pingables are down.
mouse The mouse is a device which allows you to control the on-screen pointer or cursor. move Move is the same as Cut and Paste in one operation. See Edit Move for more information. Mozilla Mozilla is a browser used to access Web Pages from a Web Server. See http://www.mozilla.org/ index.htmlfor more information. name map Name Map defines a new Display Name for a Language Code. You can Add Name Map to
provide a new Display Name for a Language Code. A blank Language Code is used for all languages. You Right-click on the Property displayNames to delete or rename Name Map and displayNames_xx to delete or rename Name Map (xx) where xx is the Language Code. Bajadoc is available at BNameMap.bajadoc.
nav file Nav File stores XML nav markup. It allows you to define a navigation tree. You may use
the NavFileEditor to modify this file. Bajadoc is available at BNavFile.bajadoc.
B-8
Netscape Netscape is a browser used to access Web Pages from a Web Server. See http:// www.netscape.comfor more information. network Network is a collection of devices. DeviceManager provides a summary of an attached network. See BDeviceNetwork.bajadoc for more information. Niagara Framework The Niagara Framework is a system designed to manage and control information. Its primary application is for control systems because of its powerful and flexible integration capabilities. The system is made up of Stations that run the Components of the Niagara Framework and views that provide the ability to view and command these Components. See Baja vs. Niagara in the Developer Guide for more information.
normalization Normalization is the process of removing unnecessary "." and ".." segments from the
path component of a hierarchical URI. Each "." segment is simply removed. A ".." segment is removed only if it is preceded by a non-".." segment. Normalization has no effect upon opaque URIs.
null The null flag indicates that the associated value should not be used. It represents a don't care condition. It is utilized in combination with priority arrays so that points may take or release control of their level in a priority array based on their current state. It is also utilized in math, logic and other application blocks that take a variable number of inputs. Any input with the null flag set is ignored. NumericPoint NumericPoint defines a read only control point with only an output element. Bajadoc is available at BNumericPoint.bajadoc. object An Object is the base class required for all objects which conform to the Baja model. See
BObject.bajadoc for more technical information. See Object Model in the Developer Guide for more information on the model.
offline Offline refers to accessing a Bog File file directly when the Station is not running. open Open allows you to open any of the following:
Ctrl + L Ctrl + O Ctrl + Shift + O Open Daemon (Niagarad)... See the File menu reference for more information.
operator Operator Security Permissions are defined to be the functions required as a system operator
who may need to view or edit only the lowest level features of Components. See Operator Security for more information.
options Options allow you to customize the framework for the way you use it. It can be selected from the main Menu by selecting Tools > Options. See Types of Workbench options on page 2-20 for more information. ORD Ord is an "Object Resolution Descriptor". An ORD is Baja's universal identification system for integrating heterogeneous naming systems into a single String. An ORD is composed of one or more queries. Each query has a Scheme which identifies how to parse and resolve the query into an Object.
ord := query (ws "|" ws query)* query := scheme ws ":" ws body scheme := alpha (alpha | digit)* body := bodyChar (bodyChar)* alpha := "a"-"z" | "A"-"Z" digit := "0"-"9" bodyChar := 0x32 - 0x127 except "|" ws := (space)*
See Naming in the Developer Guide orBOrd.bajadoc for more technical information.
overridden Overridden indicates that the user has manually overridden the component. palette Palette provides a hierarchical view of available components. See About palettes on page
1-13 for more information.
paste Paste copies the contents of the clipboard to the selected location. The shortcut is Ctrl + V
(hold down Ctrl and press V). See Edit Paste for more information.
pathbar The pathbar is the line available in Workbench to see and select destination references. The
pathbar provides two functions. It is automatically updated each time a new view is selected to teach you the Ord of each view. It also allows you to select the Ord directly to select that view. See About the locator bar on page 2-13 for more information.
NiagaraAX-3.x User Guide
B-9
PDF PDF refers to Adobe Portable Document Format (PDF) files. permissions Permissions are a property used to define the permissions given to users in a Profile. pin slots Pin Slots provides the capability to make Properties of a Component visible in the
WireSheet view of the Component. See Pin Slots in the WireSheet Plugin for more information.
platform Platform is the Niagara Platform Definition. plugin A Plugin is a visualization for a Component. A WbPlugin is a widget designed to provide plugin
functionality in the Workbench tool environment.
Png PNG stands for Portable Network Graphics. The PNG image format uses lossless compression .
point extension Point extensions allow control point behavior to be extended in a consistent manner. Each property of a ControlPoint which subclasses from PointExtension is considered an extension on the point. Extensions allow plug-in functionality such as alarming and historical data collection via special hooks that ControlPoint provides to PointExtension. print Print provides automatic generation of a PDF for a view. Most standard widgets including labels, point widget, tables, Charts, and most layout panes are handled. Access to the PDF visualization is through the Print command in both Workbench and World Wide Web browser. profile Security Profile may be assigned to any Component or set of Components in the system. Users are assigned a security profile. The list of profile names map to Profile instances which are accessed from the UserService. A user can be assigned one profile. Profiles provide a convenient way to configure Security Permissions on batches of users. Each profile is configured with a set of privileges for each Security Domain. properties Properties are the visible data associated with a Component. They provide the primary means of interacting with Components. See help-BajadocViewer Properties for more information. proxy Proxy is used locally to represent a remote Object. See About the proxy extension on page 3-10 for more information. ProxyExt ProxyExt is the point extension supported in ControlPoints which are proxies for point data
in an external system. See About the proxy extension on page 3-10.
Px file A Px file contains Baja Components. It can be a complete Database or any Collection of
Components. A Px File is a special file that can provide a visualization for Components in a Database. The PxEditor is a Plugin used to create and modify Px files. All views can be used on Components in a PX just as if they were in a Station. See Bog Files in the Developer Guide for more information.
query Query is part of an "Object Resolution Descriptor". An ORD is composed of one or more queries. Each query has a Scheme which identifies how to parse and resolve the query into an Object. A query is made up of a Scheme and a body. See Naming in the Developer Guide orBOrd.bajadoc for more technical information. range Range of en Enumeration is a range of ordinal/name pairs. See Enum Range Dialog or BEnumRange.bajadoc for more information. redo Redo causes an Action to be redone. It is only available after an undo. The shortcut is Ctrl +
Alt + Z (hold down Ctrl and Alt and press Z). See Edit Redo for more information.
refresh Refresh a page after its HTML source has been edited or if you encounter a reason to reload.
registry The registry is a term for a small Database built by Niagara Framework whenever it detects that
a module has been added, changed, or removed. The registry may be used to interrogate the system for summary information about the Modules, types, Ord Schemes, and Agents installed without loading Modules into memory. See RegistryDatabase.bajadoc for more information.
rename Rename allows you to change the name of a Component. It is available on a Components right-click menu. reorder Reorder allows you to reorder items in a stations Nav tree. See Using the nav side bar
(tree) on page 12-8 for more information.
B-10
replace Replace allows you to replace the next occurrence in the file. The shortcut is Ctrl + R (hold
down Ctrl and press R). See Search Replace for more information.
replace files Replace Files allows you to replace the all occurrences in the files. See Search Replace Files for more information. restart Restart a Station. This causes a Station to be restarted. right-click Right-click
means to press and release the secondary mouse button. For most systems, this is the right mouse button.
save Save causes a program to be evaluated and saved in the Database if valid. The shortcut is Ctrl + S (hold down Ctrl and press S). scheme Scheme is part of an "Object Resolution Descriptor". The scheme identifies how to parse and resolve the query into an Object. The scheme "local" is both a Host scheme and a session scheme. It represents objects found within the local VM. Some common schemes include:
ip Scheme fox Scheme file Scheme module Scheme station Scheme slot Scheme handle Scheme spy Scheme bql Scheme See Naming in the Developer Guide orBOrd.bajadoc for more technical information.
section Section is a portion of a Print document that is capable of containing Gadgets. security Security in the Niagara framework covers some broad topics:
Authentication: Logging in and verifying a user Encryption: When and how to use cryptography to secure data Permissions: Configuring and verifying user Permissions on objects Auditing: Logging user actions to create an audit trail The heart of the Niagara security architecture is embodied by the UserService. The UserService contains a Table of SecurityDomains (see Security model overview), Profiles (see Security model overview), and Users. Domains are used to build groups of objects with common security needs. Profiles are used to define Permissions across zero or more Domains. Users are assigned to a Profile and used to represent an entity (human or machine) requiring authentication and security checks. See Security in the Developer Guide for more information.
SELECT SELECT is the primary statement used to access information in a Database. See workbench:ProjectionBuilder for more information. selection The selection is the set of currently selected items. Most operations in the system act on
the selected items.
servlet A Java program that runs as part of a network service, typically an HTTP Web Server and responds to requests from clients. The most common use for a servlet is to extend a Web Server by generating World Wide Web content dynamically. For example, a client may need information from a database; a servlet can be written that receives the request, gets and processes the data as needed by the client and then returns the result to the client. Applets are also written in Java but run inside the JVM of an HTML browser on the client. Servlets and Applets allow the server and client to be extended in a modular way by dynamically loading code which communicates with the main program via a standard programming interface. See also HttpServlet.bajadoc for more technical information.
sidebar Sidebar allows you to choose whether to view sidebars by selecting Window > Side
Bars > Show Side Bar from the main menu. You can also select which sidebars you would like to view. See About side bars on page 2-3 for more information.
slot Slots are the building blocks for defining Niagara Components. There are three types of slots:
NiagaraAX-3.x User Guide
Property Action
B-11
Topic See Slots in the Object Model section of the Developer Guide for more information.
slot scheme The "slot" Scheme is used to resolve a Value within a Complex by walking down a path of
slot names. Slot queries always parse into a SlotPath.
space Space defines a group of Objects which share common strategies for loading, caching, lifecycle,
naming, and navigation.
spy scheme The "spy" Scheme is used to navigate spy pages. The javax.baja.spy APIs provide a framework for making diagnostics information easily available. SQL SQL is an acronym for Structured Query Language. SQL is an American National Standards Institute (ANSI) standard for accessing Database systems. stale Stale indicates that a situation has occurred which renders data untrustworthy. How stale is determined is a driver specific issue. However the common case is that a period of time has elapsed without a successful read. TuningPolicy provides a staleTime property for configuring this period of time. station Station is the Component which represents a Station in the Baja framework. See About stations on page 1-15, or Station in the Developer Guide for more information. station scheme The "station" Scheme is used to resolve the ComponentSpace of a station Database. status Status provides a bit mask for various standardized status flags in the Baja control architecture.
Plus it provides for arbitrary extensions using facets. See BStatus.bajadoc for more information.
statuscolors StatusColors are configurable by the baja lexicon and accessible by the Status API. You may use the LexiconEditor to change these values. Entries include alarm, disabled, fault, down, overridden and stale :
Status.alarm.bg=#FFFF0000 Status.alarm.fg=#FFFFFFFF Status.disabled.bg=#FFD88AFF Status.disabled.fg=#FF000000 Status.fault.bg=#FFFFAA26 Status.fault.fg=#FF000000 Status.down.bg=#FFFFFF00 Status.down.fg=#FF000000 Status.overridden.bg=#FF86BEFF Status.overridden.fg=#FF000000 Status.stale.bg=#FF00FF00 Status.stale.fg=#FF000000
The WireSheet options allow you to choose whether to Show Status Colors.
StatusFormat StatusFormat is used to provide a simple pattern language for formatting status values.
Patterns are strings with script commands embedded using the % character:
"Value=%value% Status=%status%"
Examples: %value% = value using facets %value(precision=2)% = value using 2 decimal places %value(units=null)% = value using facets with no units %value(units=null|precision=i:2)% = combination of previous two %status% = status fully specified {%status.flags%} %status.facets% = same as %status% %status.flags% = status flags, but not facets %status.facets% = status facets, but not flags %status.activeLevel% = status active level %value% {%status.flags%} @ %status.activeLevel% The BNF grammar for the pattern language:
script := valScript | statusScript valScript := "value" [ "(" valFacets ")" ] valFacets := valFacet [ "|" valFacet ]* valFacet := valAddFacet | valRemoveFacet valAddFacet := name "=" value valRemoveFacet := name "=null" value := DataUtil.marshal & unmarshal statusScript := "status" [ "." statusSubset ] statusSubset := statusFlags | statusFacets | statusFacetKey statusFlags := "status.flags" statusFacets := "status.facets" statusFacetKey := "status." name
StringPoint StringPoint defines a read only control point with only an output element. Bajadoc
is available at BStringPoint.bajadoc.
NiagaraAX-3.x User Guide
B-12
subclasses Subclasses provides a subclass tree of all that are subclassed from this item. See help-BajadocViewer Subclasses for more information. tab Tab allows you to view multiple views in the same Window. See Creating tabs in the view
pane on page 2-19 for more information.
table Table displays a grid of rows and columns. See BTable.bajadoc for more technical information.
tag An Element bounded by the marks "<" and ">" is a Tag. Tags are used to mark the semantic or
the structure of a document. HTML and XML use tags. A sample is the tag <title> to mark the beginning of a title. See HTML Tags in the WbHtmlView for more information on tags supported by the HtmlView Plugin.
toolbar A Toolbar is a row of button used to provide quick access to commonly used features. In the
Niagara Framework there are two rows of buttons on the toolbar. The first are the common buttons that are always available. The second are the buttons based on the current view, mode and Selection.
topic Topic defines a Slot which indicates an event that is fired on a Component. See help-BajadocViewer Topics for more information.
tree The tree is the graphical representation of the hierarchy of the Components in the system. It provides a view of each Container and its contents when expanded. See Namespace Sidebar for more information.
undo This reverses the last Action as if it had not been performed. In Niagara it is only available for some actions. The shortcut is Ctrl + Z (hold down Ctrl and press Z). See Edit Undo for more information. up level Up Level allows you to go to the next level up. The shortcut is Alt + Up. See Types of
toolbar icons on page A-13 for more information.
upload Upload refers to receiving data from a device. In Niagara you may upload a Station to its supervisor so that you have a backup of its Database.
URI Uniform Resource Identifiers (URIs, aka URLs) are short strings that identify resources in the
World Wide Web: documents, images, downloadable files, services, electronic mailboxes, and other resources. They make resources available under a variety of naming schemes and access methods such as HTTP, FTP, and Internet mail addressable in the same simple way. They reduce the tedium of "log in to this server, then issue this magic command ..." down to a single click. It is an extensible technology: there are a number of existing addressing schemes, and more may be incorporated over time.
URL Uniform Resource Locator (URL) is the standard way of addressing over the Internet. The Niagara Framework uses this convention for many of its resource locations. user A User is a valid user name. It is used to logon to the system with a valid password. vector Vector is a dynamic Struct which allows Properties to be added at runtime. See Vector for more
information.
view There are many ways to view your system. One way is directly in the tree. In addition, you can Right-click on an item and select one of its views. Plugins also provide views of Components. See About the view selector on page 2-14 and Viewing Components for more information. Web Web refers to the World Wide Web. It is a system of Internet servers that support specially formatted documents. The documents are formatted in a markup language called HTML (HyperText Markup Language) that supports links to other documents, as well as graphics, audio, and video files. This means you can jump from one document to another simply by clicking on hot spots. Not all Internet servers are part of the World Wide Web. There are several applications called World Wide Web browsers that make it easy to access the World Wide Web. Web page A Web Page is a document on the World Wide Web. Every Web page is identified by a
unique URL (Uniform Resource Locator).
Web server A Web Server is a computer that delivers (serves up) Web Pages. Every Web server has an IP address and possibly a domain name. For example, if you enter the URL http://www.niagaraframework.com/ in your browser, this sends a request to the server whose domain name is niagaraframeNiagaraAX-3.x User Guide
B-13
work.com. The server then fetches the page named index.html and sends it to your browser. Any computer can be turned into a Web server by installing server software and connecting the machine to the Internet. There are many Web server software applications, including public domain software from NCSA and Apache, and commercial packages from Microsoft, Netscape and others.
wheel Wheel means to rotate the mouse wheel to scroll up or down. WHERE The Where clause is used to specify that only certain rows of the Table are displayed, based on the criteria described in that Where clause. See workbench:QualifierBuilder for more information. widget Widget is a class used to create light weight user interface components which can seamlessly be used in both the bajaui toolkit and in a 1.1 Applet environment. window A Window is a graphical area used to present a view of the system. This can refer to the
primary window with Locator and tree or user created windows. See Creating Additional Windows on page 2-19 for more information.
wizard Wizards are used to guide the user through common tasks. Some common wizards include: New Station Wizard Commissioning Wizard New Module Wizard Workbench The Workbench is Niagara's Integrated Development Environment (IDE) for nonprogrammers.
XML eXtended Markup Language (XML) is a standard for tagging data. It is a subset of the Standard
Generalized Markup Language (SGML) like HTML. See XML in the Developer Guide for more information.
B-14