Andover Controls Infinity Programmer's Manual

Hide thumbs Also See for Infinity:

Advertisement

Quick Links

Controlling Tomorrow's World
This manual is included for informational purposes
only. It is superceded by the
SX 8000 Programmer's Guide, Version 2.0.
Infinity Controller
Programmer's Guide
Electronic Version
Andover Controls Corporation
i
Technical Manuals Online! - http://www.tech-man.com

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Infinity and is the answer not in the manual?

Questions and answers

Summary of Contents for Andover Controls Infinity

  • Page 1 Controlling Tomorrow’s World This manual is included for informational purposes only. It is superceded by the SX 8000 Programmer’s Guide, Version 2.0. Infinity Controller Programmer’s Guide Electronic Version Andover Controls Corporation Technical Manuals Online! - http://www.tech-man.com...
  • Page 2: Important Notice

    This product is subject to change without notice. This document does not con- stitute any warranty, express or implied. Andover Controls Corporation re- serves the right to alter capabilities, performance, and presentation of this product at any time.
  • Page 3 CROSSTALK is a registered trademark of Digital Communications Associates, Inc. IBM is a registered trademark of International Business Machines, Inc. VT is a trademark of Digital Equipment Corporation. The following are registered trademarks of Andover Controls Corporation: Andover Controls Plain English EnergyNet Infinet Andover Controls Corporation Technical Manuals Online! - http://www.tech-man.com...
  • Page 4 Preface The Andover Controls Infinity CX Programmer’s Guide is a two vol- ume set. The volumes present the following: • Volume 1—Getting Started Programming • Volume 2—Advanced Programming/Access Control If you are using the control system for HVAC, you should proceed through this manual sequentially.
  • Page 5 Whether you use this system for HVAC or for access control, you should already have installed your hardware before you attempt to set up the Infinity CX system. If you do not know how to arrange your network to set up your hardware, refer to the EnergyNet and Infinet Configuration Guide.
  • Page 6 Chapter 21 in this volume. This volume also covers creating your own functions, setting up and using data files, and programming DCX 250, modems on Infinity CX and CMX controllers, expansion modules, and more. It also has a special chapter on debugging techniques.
  • Page 7 • Chapter 23—Setting Up Persons for Access Control • Appendix A—Keystrokes • Appendix B—Error Messages • Appendix C—DCX Graphic Controls and Frame Styles • Appendix D—Storing Areas and Persons on Infinity CX 9000/220 Andover Controls Corporation Technical Manuals Online! - http://www.tech-man.com...
  • Page 8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 9 Chapter 1 Understanding Controller Hardware This chapter presents the following topics: • About the Controller Network • Knowing about Point Types • Expansion Modules Inputs and Outputs • Small Network Controllers Technical Manuals Online! - http://www.tech-man.com...
  • Page 10 You may want to label your map so it reflects the actual layout of the controller system. Each Infinity CX controller on that map can have one or more input output units (IOUs). Each IOU has a number the con- troller identifies it by.
  • Page 11 Figure 1-1. Sample Map of a Network Infinet Cable Infinity CX 9000 LBUS Cable EnergyNet Cable Infinity CX 9500 VT100 Infinity CX 9000 Infinity CX 9500 (has built-in inputs and outputs) Infinity SX 8000 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 12 We refer to all these sensors and transmitters as input and out- put points. Input and output points are Infinity’s way of interacting with the environment. An input point is constantly receiving information about, for instance, the temperature in a room. While that temperature remains within a set range (say 68 to 72), the controller takes no action.
  • Page 13 Finding Points on IOUs You might want to make copies of the drawings on the next few pages, one for each Infinity CX 9000 IOU and each Infinet controller on the network. The drawings show the input and output points and the nu- meric labels supplied at by Andover Controls.
  • Page 14 Understanding Controller Hardware Figure 1-2 is a drawing of an IOU, showing the input and Points on IOUs output points (usually used with Infinity CX controllers). Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 15 1/8 A Auto INPUTS INPUT - On REFERENCE RESISTOR OVERRIDE Auto + 24 V EXTERNAL Auto 1/8 A Form C Tristate – Auto INFINET RESET SHLD 1/8 A SERVICE EXPANSION PORT PORT Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 16 The TCX 851 is similar, but has only the first four inputs. Figure 1-4. Drawing Showing TCX 850/851 Points OUTPUTS INPUTS OUT1 OUT2 OUT3 OUT4 – INPUTS INPUT 8 SHLD – – Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 17 5 through 6, the airflow inputs 7 and 8. Figure 1-5. Drawing Showing TCX 853 Points OUT1 OUT2 OUTPUTS OUT3 OUT4 INPUTS Inputs – INPUT 7 INPUT 8 SHLD – – Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 18 Figure 1-6 is a drawing of an LCX 800, showing the input and Points on an LCX 800 output points. Figure 1-6. Drawing Showing LCX 800 Points OUT1 OUT2 OUTPUTS OUT3 OUT4 – SHLD OUT5 OUT6 OUTPUTS INPUTS OUT7 OUT8 1-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 19 Figure 1-7. Drawing Showing LCX 810 Points INPUT USE COPPER CONDUCTORS ONLY INPUT xxxxxxxxxxx REFERENCE xxxxxxxxxxx RESISTOR 3.6V – STATUS INPUTS LIGHTS OVERRIDE +24V – INFINET EXTERNAL SHLD SERVICE EXPANSION PORT PORT Infinity Controller Programmer’s Guide 1-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 20 DOOR 1 WIEGAND I/DATA READER 1 OUTPUT O/CLK DOOR 2 READER 2 OUTPUT AUTO/OFF/ON I/DATA O/CLK OUTPUT 3 WIEGAND – INFINET SHLD +24VDC CLASS 11 AUTO/OFF/ON SERVICE EXPANSION OVERRIDE PORT PORT 1-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 21 Doors and access control, see Chapters 21, 22, and 23. Refer to Chapter 4 for how to set up supervisory point types. 1 1. For an alternative method of setting up doors, see Chapter 16. Infinity Controller Programmer’s Guide 1-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 22 Figure 1-9. Drawing Showing LCX 890 Points Momentary Switches Output Relays (Max Number Possible Shown—24) 24 VAC Rectified Power Terminal for Occupancy Sensor Digital Inputs LCX 890 INPUTS Universal Inputs EMX 170 or SP 100 Port 1-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 23 LCX 810. So you can, for example, have two EMX 150s (two outputs each) and two EMX 155s (two outputs each) on that controller, for a total of eight expansion outputs. Infinity Controller Programmer’s Guide 1-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 24 Board 2. Since the EMX 190s must be the last output modules on the chain, you can then switch to input modules, and start again at Board 1. (Be sure to put together a 1-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 25 —1 Input Even if you do not have a second pneumatic output (as on an EMX 141 or EMX 143 ), you must count outputs as if it were there. Infinity Controller Programmer’s Guide 1-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 26 1 module would have inputs 17 through 24, and the Board 2 module would have inputs 25 through 32. Figure 1-11. Drawing Showing EMX 160 Points EMX 160 BOARD INPUTS EXTERNAL POWER 1-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 27 OVERRIDE switch or telling what the override setting is. Figure 1-12. Drawing Showing EMX 150 Points BOARD EMX150 OUTPUT OVERRIDE OUTPUTS AUTO OUTPUT Infinity Controller Programmer’s Guide 1-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 28 EMX 170 sensor the highest possible input number in the entire chain of modules. (On SCX controllers, number 33. On LCX and TCX controllers, number 25.) 1-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 29 You can use one or two modules of this type in a single chain. Figure 1-14. Drawing Showing EMX 151 Points BOARD EMX151 OUTPUT OUTPUTS OUTPUT EXTERNAL POWER Infinity Controller Programmer’s Guide 1-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 30 Form C outputs. You can use one or two modules of this type in a single chain. Figure 1-15. Drawing Showing EMX 155 Points BOARD EMX155 OUTPUT OVERRIDE AUTO OUTPUT EXTERNAL POWER 1-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 31 Figure 1-16 is a drawing of an EMX 190 module. This module Points on an EMX 190 has a single output. Infinity identifies all the inputs wired to the module in terms of the output. The EMX 190 must always be the last output module on the chain.
  • Page 32 “manual override” state. Figure 1-17. Drawing Showing EMX 140 Points EMX140 CHANNEL CHANNEL SUPPLY AIR SUPPLY AIR PNEUMATIC OUTPUTS BOARD EXTERNAL POWER – 0-20 RET IN RET IN 1-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 33 So, if you assign a single pneumatic output the number 13, then you cannot assign 14 to another module. Skip 14 and as- sign 15 to the next module output. Infinity Controller Programmer’s Guide 1-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 34 For a single Infinet where you do not always require a termi- nal, you may want to employ the Infinity CMX controller. The Infinity CMX is a scaled down Infinity CX. The Infinity CMX has the following features/limitations: • A port for an Infinet that can have up to 32 Infinet controllers.
  • Page 35 • If you intend to construct a dump file for the CMX on another controller and then load it, rather than developing programs on the controller at its terminal. Infinity Controller Programmer’s Guide 1-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 36 Understanding Controller Hardware 1-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 37 EnergyNet and Infinet We recommend you read this chapter sequentially to get started on an Infinity CX or CMX controller. Go to the terminal and carry out all of these procedures to set up the controllers on each EnergyNet and Infinet: •...
  • Page 38: Logging On For The First Time

    Once you have installed the hardware, when you first approach Infinity Window any terminal or computer on an Infinity CX controller, the screen is blank. You activate Infinity CX windows as follows: 1. Type WINDOW. The word does not appear on the screen.
  • Page 39 Try logging on again. If you continue to fail, contact your Andover Controls representative. Logging on without Windows If you have an Infinity CX 9100 controller, you can log on to the controller from a blank screen so that you can work with dump files: 1.
  • Page 40 Command Window – FLOOR1 R> You can use most keywords on the command line. In the Andover Controls Plain English Language Reference, each keyword has a section labeled Modes Available In. If “command line” is listed, the keyword can be used on the command line.
  • Page 41: Print Date

    Proceed with the next section to print more information. Summary • Command lines tell the controller to act now. • You can use keywords to form command lines. • You type command lines after the R>. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 42 Remember not to type the R>. The R> indicates where you may type. To print TOD again, press the up arrow key until the cursor lands on the command line that says PRINT TOD. Then press the EXECUTE key. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 43 • TOD, HOUR, MINUTE, and SECOND are system variables. • Type command lines after the R> that appears. • Repeat a command line by moving the cursor back up to the command line and pressing the EXECUTE key. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 44: Using The Menus

    To both move the cursor to the menu and select the menu at once, press the first letter of the menu name on the keyboard. For example, as in the figure above, you press Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 45 EXECUTE keys or the first letter in the menu name. • To select a pulldown menu item press either the arrow and EXECUTE keys or the key for the first highlighted letter in the item. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 46: Setting The Date And Time

    You enter both the date and time on that line. You can press the DELETE LINE/TEXT key (refer to the Infinity CX Keystroke Quick Reference) to erase the date and time from the text box. The cursor should then be at the beginning of the box.
  • Page 47: Setting Date

    If you enter 3-2-92, the controller automatically interprets it as March 2, 1992, rather than as February 3, 1992. You can, however, enter the day first if you: • Spell the month as a word. Infinity Controller Programmer’s Guide 2-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 48 10:30:22 AM 10:30:22 1:24:36 PM 13:24:36 You can enter AM or PM anywhere in the date-time. The controller translates 12-hour time into the 24-hour clock. For instance, 3:00 PM becomes 15:00:00. 2-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 49 Notice that the date and time have changed to the one you entered. The next section covers how to move around and erase/add text in the windows. You learn the keystrokes in the quick reference card as you proceed. Infinity Controller Programmer’s Guide 2-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 50 Alter User Attributes in Below is how to make changes inside all windows in the the Window Infinity CX, including Open and Edit windows. (Refer to the quick reference card for exact keystrokes.) Erasing Text To erase all text while the cursor is in the text box, press the DELETE LINE/TEXT key.
  • Page 51: Insert Text

    Then returns cursor to menu bar. EXECUTE or SAVE Saves all attributes. EXECUTE saves if not on a button that directs another action. To set up controllers, proceed to the next section. Infinity Controller Programmer’s Guide 2-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 52 Setting Up EnergyNet/Infinet Defining Infinity CX Controllers (If you are working on an Infinity CMX controller, you may skip this section and the next one—these steps are optional. Begin, instead with Defining the Infinet Controller Network.) Give Each Controller a...
  • Page 53 Although they are not on the EnergyNet, the CMX 220 and 230 models are also “controllers” that function like Infinity CX controllers, so you can enter information about them as described here for other Infinity CX controllers; however, you do not have to.
  • Page 54 You can include underscores, periods, and numbers in the name. If you change it here, the new name replaces the old name throughout the network. 2-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 55 This text box does not appear for the CMX controllers. 7. EthernetId (ETHERNETID)—This text box appears only if you are setting up an Infinity CX 9200, which runs on a network called Ethernet. The unique Ethernet ID assigned at the factory displays in this text box.
  • Page 56 In addition, teach mode teaches all controllers on EnergyNet that the names you assigned belong to particular controllers. Since you have already set the date and time, Infinity also teaches each controller that same date and time. You cannot access the controller until teaching stops.
  • Page 57 Setting Up EnergyNet/Infinet Looking at the Controller Summary Once Infinity has taught all the controllers about the network, EnergyNet Summary Gives Overview of All the Controller Summary window appears on the screen. Figure 2-12 shows the Controller Summary window. Figure 2-12. Controller Summary Window...
  • Page 58 2. Do not press RESET now. RESET erases the controller and all its points and programs. If you press RESET, Infinity tells you that RESET destroys all points and programs and asks if you want to cancel. Press YES to cancel the reset.
  • Page 59 1 to 254. • In a network of both controllers and workstations, Infinity CX controllers must have IDs 1 to 223 and Infinity SX 8000 workstations 224 to 254. • The EnergyNet ID text box (NETWORKID attribute) in the Controller window contains the number the DIP switch is set to.
  • Page 60 Each Infinity CX 9000 series controller on the EnergyNet network has communication ports (comm ports). Some of these comm ports can connect Infinet cabling to the controller Infinity CX or CMX controller. On this cabling, you install Infinet controllers. Define the Comm Port as...
  • Page 61 InfinetPort. 6. Refer to your network map to find out which port has an Infinet on it. For the Infinity CX 9000 or 9200, you can have one or two Infinets. For other models, you can have only one Infinet.
  • Page 62 Setting Up EnergyNet/Infinet For an Infinity CX 9000, the port must be COMM1 or COMM2. For an Infinity CX 9500, it must be InfinetPort. For an Infinity CX 9200, the port must be COMM1 or COMM2. On a CMX 220 or 240, it must be InfinetPort.
  • Page 63 • Infinet cables on the Infinity CX 9000 are connected through one of the three communications ports. • Up to two of the communications ports on an Infinity CX 9000 can be for Infinets, only one on an Infinity CX 9500 or Infinity CMX 220/230.
  • Page 64 2. Description—Type a description of the comm port if you would like. It is optional. This information is strictly for you and does not affect the controller. 2-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 65 Setting Up EnergyNet/Infinet 3. DefaultMode—Select Infinet for the Infinet cable. If you are setting up Infinet on an Infinity CMX controller, Infinet is automatically selected for you. 4. Baud—Automatically set to Baud19200. 5. Mode —You cannot change this box. It displays the current way the comm port is operating, Infinet.
  • Page 66 VIEW button to reopen the window. (Do not press LEARN again to open the window, only to relearn the network.) 2-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 67 • Infinet cables on the Infinity CX 9000 are connected through one of the three communications ports. • Up to two of the communications ports on an Infinity CX 9000 can be for Infinets, only one on an Infinity CX 9500 or Infinity CMX 220/230.
  • Page 68 Select Edit Infinet Once you have defined an Infinet connection port for the Controller Infinet controllers on the Infinity CX controller, you may then open each Infinet controller to alter its name and look at its other attributes, as follows: 1.
  • Page 69 Logout Open an Infinet Controller Controller Infinet Ctlr 2. Verify the name of the Infinity CX 9000 controller from the Select the Infinity CX Controller network map. If the correct name does not appear in the Controller text box, press the LEFT SIDE key to move to the left side of the box.
  • Page 70 (Compare the numbers carefully.) When the correct controller is highlighted, press the EXECUTE key to select it. That controller’s attributes now fill the other text boxes. 2-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 71 12. Error Time (INFINETERRTIME)—Displays the date and time the last error occurred. 13. Error Count (INFINETERRCNT)—Displays the number of errors that have occurred. You later reset the error count to zero from an Andover Controls Plain English program. Infinity Controller Programmer’s Guide 2-35...
  • Page 72 21. When you have renamed the last Infinet controller on that comm port, press the SAVE button, SAVE key, or EXECUTE key to save the controller information. The window automatically closes. 2-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 73 Do not press RESET now. RESET erases the controller and all information on the controller. If you press RESET, Infinity asks if you want to cancel. Press YES to cancel the reset. You can work on any controller you have defined from one terminal.
  • Page 74 Connect Logout Open a Connection Controller Floor1 Infinet Ctlr 2. To change the Infinity CX 9000 name displayed in the Controller text box, you can: • Erase the name displayed and type another controller name 2-38 Infinity Controller Programmer’s Guide...
  • Page 75 Infinet controllers to highlight the one you want. 3. Press the EXECUTE key to put the name of the Infinity CX controller in the Controller text box. If you are connecting only to an Infinity CX controller, skip to the last step on this page.
  • Page 76 2. Type CD (change direct connection) followed by the name of an Infinity C (EnergyNet) controller: CD FLOOR1 3. If the controller is on Infinet, you give first the Infinity CX controller that the Infinet is connected to, then the Infinet controller name:...
  • Page 77 • On the Main menu bar, arrow to the Connect menu and press the EXECUTE key. • In the Command window, type the CD command followed by the name of the Infinity CX controller, then the Infinet controller. Infinity Controller Programmer’s Guide 2-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 78 Setting Up EnergyNet/Infinet 2-42 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 79 User Logons We recommend you read this chapter sequentially. You carry out the procedures in this chapter (listed below) on an Infinity CX controller or Infinity CMX controller through the terminal. You begin with LBUSes. If you do not have any LBUSes, skip those sections and begin with terminals.
  • Page 80 One Comm Port The LBUS cable connects all input-output units (IOUs) to the Connects the LBUS Infinity CX 9000 controller. You may or may not have an LBUS on your controller. If you have one, you must tell the controller about it.
  • Page 81 Open a Comm Port Controller Name Select a Comm Port 2. Verify the name of the Infinity CX 9000 controller from the Name network map. If the correct name does not appear in the Controller text box, press the DELETE LINE/TEXT key to erase the name.
  • Page 82 2. Description—Type a description of the comm port if you would like. It is optional. This information is strictly for you and does not affect the controller. 3. DefaultMode—Select LBUS for the LBUS cable. 4. Baud—Automatically set to Baud19200. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 83 6. Press the SAVE button, SAVE key, or EXECUTE key to save the comm port attributes. The window automatically closes. Summary • The LBUS on the Infinity CX 9000 network is connected Select the LBUS for the DefaultMode through one of the three communications ports.
  • Page 84 Command window. If you do not have at least 400,000 bytes of free memory, do not add a second terminal to your Infinity CX 9000 controller or the comm port you try to set it up on becomes unusable. You connect terminals and printers to the comm ports to al- low humans to interact with and/or communicate with the controller.
  • Page 85: Setting Up The Terminal

    You should not connect a printer to the CMX UserPort. Setting Up the Terminal Define a terminal or printer on your Infinity CX 9000 or ter- minal on your Infinity CMX controller as follows: 1. Select Edit Comm Ports from the Main menu bar.
  • Page 86 DELETE LINE/TEXT key to erase the name. Then type the correct one. Or use the SHOW LIST key to select another name. 3. Check your network map for the name of your terminal, computer, or printer. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 87 LBuses, Terminals, Printers, TankNets, Users 4. On an Infinity CX 9000, press the SHOW LIST key and Connect Terminals, select COMM3. Printers On an Infinity CMX controller, press the SHOW LIST key and select UserPort. 5. When the comm port you want is in the Name text box, press the EXECUTE key to proceed.
  • Page 88 Figure 3-6 shows the Comm Port window. If you opened Computers Attributes COMM3 on an Infinity CX controller, it is already predefined as a terminal, but you may want to change how it is set up. Figure 3-6. Comm Port Window for Terminal...
  • Page 89 If a terminal is on a modem and you set it up to run in Window mode, to get started on that terminal, you must type an ampersand (&) to receive the Infinity window. • Select Command to display a screen with no windows or menus, only the Login prompt.
  • Page 90 • Select AutoSet if you want to be able to switch between Window and Command, or if you want to connect to an Infinity SX workstation Version 1.3. Later, when you turn on the terminal, it comes up totally blank. You type one of the following and press...
  • Page 91 Infinity CX and CMX controllers. • You can select Command for the DEFAULTMODE of the terminal or computer if it is an Infinity CX 9100 or CMX 230. • You can select AutoSet for the DEFAULTMODE of the any terminal if you want to switch between Command and Window modes, or to connect to an Infinity SX 8000.
  • Page 92 9000or in a retrofit kit, you can skip this section. If your modem was shipped alone without a retrofit kit, you must set it up to work on an Infinity CX 9000 or a terminal. To set up a modem to be attached to a comm port on a controller, proceed as follows: 1.
  • Page 93 • You enter a series of commands on the dumb terminal that set up the modem. • Once you have entered the commands, you reconnect the modem ribbon cable to the controller and your modem is ready to operate. Infinity Controller Programmer’s Guide 3-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 94 Attach to a Terminal an Infinity CX controller across town or across the country, proceed as follows: 1. If you have already connected your terminal to Infinity CX 9000 and the controller is powered up, disconnect the terminal from the controller.
  • Page 95 Infinity CX 9000. Your modem is now ready. For how to log onto the Infinity CX, see Chapter 2. For a list of modem commands to dial and hang up the modem, see the modem documentation.
  • Page 96 2. Description—Type a description of the comm port if you would like. It is optional. This information is strictly for you and does not affect the controller. 3-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 97: Default Mode

    • You select Printer for the DEFAULTMODE of a printer. • You may want to change the name of the port from COMM1, COMM2, or COMM3 to the name of your printer. Infinity Controller Programmer’s Guide 3-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 98 Defining the TankNet for Tank Probes TankNet Connects Tank The TankNet cable connects to many Infinity CX controllers Probes to Controllers and to the CMX 240 controller. You may or may not have a TankNet on your controller. If you have one, you must tell the controller about it.
  • Page 99 Open a Comm Port Controller Name Select a Comm Port 2. Verify the name of the Infinity CX 9000 controller from the Name network map. If the correct name does not appear in the Controller text box, press the DELETE LINE/TEXT key to erase the name.
  • Page 100 It is optional. This information is strictly for you and does not affect the controller. 3. DefaultMode—Select TankNet for the TankNet cable. 4. Baud—Automatically set to Baud4800. 3-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 101 6. Press the SAVE button, SAVE key, or EXECUTE key to save the comm port attributes. The window automatically closes. Summary • The TankNet on the Infinity CX 9000 network is connected Select TankNet for the DefaultMode through one of the communications ports.
  • Page 102 ACC user and change the password to one unique for your controller system. Follow these steps: 1. Be sure you are connected to an Infinity CX controller. 2. Select Edit User from the menu bar. 3. The Open a User window appears.
  • Page 103 LBuses, Terminals, Printers, TankNets, Users 4. The name of the Infinity CX 9000 controller you are A Logon Gives Access to connect to appears in the Controller text box. If you All Controllers expect to work on a different controller most of the time, erase the controller name, type the new one, and press NEXT ATTRIBUTE to proceed to the next text box.
  • Page 104 ACC name. (You may, however, create more than one Administrate level user.) 8. Full Name (FULLNAME)—Type your full name, up to 32 characters, including spaces. You can include a period 3-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 105 12. Security Level (LEVEL)—You arrow down to the Administrate radio button. Press the space bar to select it. For ACC, Infinity has already selected Administrate. Administrate is the security level of the administrator, who has access to all user passwords, programs, and functions on all controllers.
  • Page 106 Command window and press EXECUTE. Try logging on again using your new name and password. Once you have logged on successfully, you are ready to create logons for other users. 3-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 107 • The ACC user is automatically at Administrate security You Cannot Change ACC Security Level level. You cannot change the security level for ACC. Infinity Controller Programmer’s Guide 3-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 108 You set up a user as follows: 1. Select Edit Users from the Main menu bar. 2. In the Open a User window, enter the Infinity CX 9000 name in the Controller text box and then the user name in the Name text box. The user name is the name the user later logs on with, and should be 16 characters or less, starting with a letter of the alphabet;...
  • Page 109: User Security Levels

    TRUE. A user you assign to this level may not access the Edit menu. • Acknowledge Alarms—Same as View Only. Has more capabilities on Infinity SX 80000 workstations. 1. You learn about the COMMANDLINE attribute in Chapter 5. Infinity Controller Programmer’s Guide 3-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 110 Only users on the Administrate level can create more users, change user security levels, or change passwords. No user below this level (on Infinity CX) can add, delete, or change any attribute of an EnergyNet or Infinet controller or a comm port. This level user is also the only user who can change the system time and date.
  • Page 111 LBuses, Terminals, Printers, TankNets, Users single user Change Values level access on one Infinity CX 9000 and View Only access on another. If one Infinity CX 9000 handles building access and several others handle HVAC control, then you would want the head of security to have Configure security level on the first controller and View Only security level on the others.
  • Page 112 Press the DOWN key to move the X down to All Users and the UP key to move it back up to This User Only. 3-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 113 8. Later, if you change a user logon name or password, you must press TEACH to be sure the information is the same on all Infinity CX controllers on the EnergyNet. Infinity Controller Programmer’s Guide 3-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 114 Chapter 4, where you assign all points. If you do have Infinet controllers with keypads, you must assign a password for each keypad as covered in the next section. 3-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 115 • You press the TEACH button in the User window to teach all controllers about either a single user or all user on the controller you are connected to. Infinity Controller Programmer’s Guide 3-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 116 FLOOR1 Infinet Ctlr ROOM 2. If the name of the Infinity CX controller in the Controller text box is not the one the Infinet controller is connected to, change it to the correct name. 3. Press NEXT ATTRIBUTE to move to the Infinet Ctlr text box.
  • Page 117 Open the System Variable window for LCDPASSWORD and enter three digits you choose for the password. • When you press the SAVE button or EXECUTE key, the three digits become the password for that controller’s keypad. Infinity Controller Programmer’s Guide 3-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 118 LBuses, Terminals, Printers, TankNets, Users 3-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 119 Chapter 4 Naming and Defining Points Note Before you define any points, consider that EMX 140 and 150 expansion module outputs do not give standard feedback indicating when you are controlling a point manually or its manual control setting. If you want this kind of feedback from a particular piece of equipment, do not use an EMX 140 or 150 to control it.
  • Page 120 • An Alternative Method of Naming Points on Other Controllers • Viewing Points • Deleting a Point from the View List • Printing a Series of Point Values • Being Sure the Reference or Ground Voltage Is Correct Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 121 SCX 900 Current Output MinAirFlow Floor1 Room1 TCX 850 Voltage Input HWTemp1 CENTRALPLANT CX 9000 IOU Thermistor CX 9000 IOU Burner CENTRALPLANT Digital Output CX 9000 IOU HWConvValve CENTRALPLANT Current Output Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 122 System Variables Persons Areas Doors Figure 4-2 shows the window that appears on the screen. Figure 4-2. Open a Point Window View Edit Connect Logout Open a Point Controller Infinet Ctlr Name Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 123 Name the Point in the Open a Point Window text box. 2. Refer to the Infinity CX 9000 or Infinet controller drawings from Chapter 1. The name of your Infinity CX 9000 is displayed in the Controller text box. Because you are not working on a SCX 900 or other Infinity CX 9000 controller, the Infinet Ctlr text box is empty.
  • Page 124 • Output • Numeric • Datetime • String (Infinity CX controllers only) 3. To select a point from the list of points, press the EXECUTE key while the point is highlighted. The name of the point appears in the Name text box.
  • Page 125 You choose one of the point names using one of these: • Arrow keys. • PAGE UP and PAGE DOWN keys. Then press the EXECUTE key to complete the selection. 3. Press the EXECUTE key to proceed. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 126 If you rename it here, the new name replaces the old name. The value (VALUE) of the point later appears in the text box after the equal sign. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 127 4. State (STATE)—Arrow to your choice and press the space bar. The X appears in the parentheses. Set the State to Enabled, so you do not have to enable the point before you can use it. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 128 Suppose, for example, when you attempt to assign a Board 1 module with a pneumatic output and you assign it the voltage type by mistake. Infinity does not know you meant the pneu- matic output, and sets the voltage output on another Board 1 instead.
  • Page 129 • ACC Temp (DEG F or DEG C)—Select one of these types (degrees Fahrenheit or degrees Celsius) only if the point uses a standard Andover Controls Corporation thermistor. You also select this type for the SmartSensor module (EMX 170) input.
  • Page 130 • RTD Temp (DEG F or DEG C)—Available only on for Properly Wired RTDs Infinity CX 9500. Select this type only for an ACC RTD wired to two consecutive inputs where the first is an odd number—and assign the odd number as the Channel.
  • Page 131 ( ) Disabled ( ) ReaderDoor (X) Enabled ( ) HiResVoltage ( ) HiResCurrent • Pneumatic—Applies only to Infinet controllers. Select this type for the EMX 140 expansion module outputs. If Infinity Controller Programmer’s Guide 4-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 132 • HiResVoltage—Applies only to Infinet controllers. Assign EMX 151 Outputs to HiRes Types Select this type for an voltage output. • HiResCurrent—Applies only to Infinet controllers. Select this type for an EMX 151 current output. 4-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 133 Output 15—ReaderDoor Board 1 EMX 190 Output 16—ReaderDoor Board 2 EMX 160 Inputs 17–24—Digital Board 1 EMX 170 Input 33—Temperature —1 Input The EMX 170 input must be input number 33. Infinity Controller Programmer’s Guide 4-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 134 Figure 4-7 shows settings for a MESSAGE point with a STRINGSIZE of 45. Notice that this point is on the Infinity CX controller. You cannot have string points on an Infinet controller.
  • Page 135 SAVE button, EXECUTE key, or SAVE key. The controller saves the point and closes the window. You can also press the CANCEL button to cancel the point definition. Infinity Controller Programmer’s Guide 4-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 136 EMX 140 as if it has two outputs.) EMX 150—Two Voltage/Current Outputs EMX 151—Two High Resolution Voltage/Current Outputs EMX 155—Two Digital Outputs (Form C) EMX 160—Eight Digital Inputs EMX 170—One Temperature Input EMX 190—One Reader Door Output 4-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 137 • When you should move to a button and press the EXECUTE key, we say “Press the button,” rather than explaining how each time. • You can press the CANCEL button to cancel the point. Infinity Controller Programmer’s Guide 4-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 138 2. Display Format (FORMAT)—Automatically set to the display format associated with the engineering units you selected in the Point window. You can change the display format in this text box. 4-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 139 % Open do not require the percent sign, as it prints with the number. More format details are described under the PRINT keyword in the Andover Controls Plain English Language Reference. 3. Exported (EXPORT)—You do not change this setting.
  • Page 140 You would enter 20 mA for the example in step 7. 9. Bottom (ELECSCALEBOT)—Same as top of scale. You enter 4 mA for the example in step 8. 4-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 141 Figure 4-11 shows the input point Details window for a supervised input. In this case, the switch is normally open and the resistor is in series. Infinity Controller Programmer’s Guide 4-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 142 Setpoint (SETPOINT)—Set to ON by pressing the space bar so that the (X) appears. When ON, the controller remembers the current value as the setpoint. 4-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 143 Figure 4-13 shows the string point details. String Point Details Figure 4-13. String Point Details Window View Edit Connect Logout Point – Floor1 Message Description SAVE Setpoint CANCEL LOGS TRIGGERS DELETE Infinity Controller Programmer’s Guide 4-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 144 LOGS TRIGGERS DELETE For the sample program, connect to the AHU SCX 900 and name this output point: SUPPLYFAN—Output (channel) 1. The supply fan. Set the electrical type to Digital. 4-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 145 • Input, numeric, string, and datetime points can be arrays. • You can press the TRIGGERS button to set triggers. • You can press the DELETE button to delete the point. Infinity Controller Programmer’s Guide 4-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 146 Changes, from old ELECVALUE) Convert to psi UNITS = psi VALUE: 60 psi (Value updates only when difference between new VALUE and old VALUE is at least the THRESHOLD value) 4-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 147 60 % Open UNITS = % Open If % Open CONVERSION: Changes, (Occurs only when new Convert VALUE is different to milliamps from old VALUE) ELECVALUE: 12 mA Damper Output Infinity Controller Programmer’s Guide 4-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 148 2. Move to and press the DETAILS button and fill in the details of the next point. 3. Press SAVE to return to the Point window. 4-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 149 DAMPERS point. Why? Because this valve is normally open and the bottom of scale is the closed setting. To set up the auto-conversion for this point, proceed to the next section. Infinity Controller Programmer’s Guide 4-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 150 Conversion text box. To set ON to OFF and OFF to ON in similar circumstances for a Digital point, you put an X after Invert On/Off in the Details window. 4-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 151 • You can convert analog or counter points with the auto- and Counter Points conversion. • You can display the value of 0 to 1 engineering units as 0 to 100% by using %### as the display format. Infinity Controller Programmer’s Guide 4-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 152 A tristate point can be on one of three controllers: and Infinet Controllers • An Infinity CX 9000 IOU with all tristate output points. • An SCX 900 or similar Infinet controller where two universal outputs are wired to be one tristate.
  • Page 153 3 becomes tristate, output 4 can be voltage or current. Summary • Tristate points are either on IOUs of an Infinity CX 9000, on a TCX 850, or on an SCX 900. • Tristate points on SCX 900 are formed by setting a slide switch and wiring two points, an even and odd output, as one.
  • Page 154 PLANT Infinity CX 9000. You name a tristate output point as follows: 1. Start on the terminal connected to the CENTRALPLANT Infinity CX 9000 or connect to that controller using the Connect menu. 2. Select Edit Points from the Main menu bar.
  • Page 155 Naming Points Summary • To have a tristate point on an Infinity CX 9000, you must have a tristate IOU attached to the controller. Use SAVE AS to Enter • You use SAVE AS to enter one point after another.
  • Page 156 Figure 4-19 shows the way you could set up MIN as a point called MINAIRFLOW with an auto-conversion. 4-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 157 • You can use MIN and MAX knobs to set minimum and maximum air flow. • You can use SP to set the setpoint for air flow. Infinity Controller Programmer’s Guide 4-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 158 Naming Points on Another Controller Select Connect from the If the point you are naming is on an Infinity CX 9000 or Infinet Main Menu Bar controller different from the one you are working on, refer to your network map.
  • Page 159 5. Press the EXECUTE key. 6. When the OK button appears, press the EXECUTE key again. From now on, the Infinity CX 9000 you selected here and the Infinet controller are the ones that will appear in the Open a Point window each time you select Edit Points.
  • Page 160 1. Press the CANCEL WINDOW key. The cursor moves to CD Command the Command window. 2. Type CD followed by the name of the Infinity CX controller and the name of the Infinet controller, as in the example that follows:...
  • Page 161 • On the Main menu bar, arrow to the Connect menu and press the EXECUTE key. • In the Command window, type the CD command followed by the name of the Infinity CX controller, then the Infinet controller. • The names of the controller or controllers you connect to appear in the Open a Point window each time you select Edit Points.
  • Page 162: Viewing Points

    Notice that the points shown in the summary are the ones on the AHU SCX 900 Because they are not on IOUs, the IOU number is 0. The number after the zero is the channel. 4-44 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 163 Naming Points the actual output number. To see points on other SCX 900s or other Infinity CX 9000 controllers, first connect to that con- troller through the Connect menu. If you see a point in the summary that you want more infor- mation about, arrow down until it is highlighted and press the EXECUTE key to open its Controller window.
  • Page 164 DELETE button. In either case, when you try to delete a point, a window ap- pears on the screen asking if you want to cancel. Figure 4-24 shows the window. 4-46 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 165 • You can delete a point from the View Points list using the DELETE TEXT key. • If you decide you want to cancel, and not delete the point, press the YES button to cancel. Infinity Controller Programmer’s Guide 4-47 Technical Manuals Online! - http://www.tech-man.com...
  • Page 166 You can also display system variable and point values on the LCD of the keypad found on some Infinet controllers (SCX 900 and LCX 810 controllers). Details on how to display them are in the Andover Controls Infinity CX Operator’s Guide. 4-48 Infinity Controller Programmer’s Guide...
  • Page 167 Command window. • If you use P, the units are printed after the value. • P and PR are the same command. Infinity Controller Programmer’s Guide 4-49 Technical Manuals Online! - http://www.tech-man.com...
  • Page 168 999.99. How could that happen? If the input or ground voltage to one input is too high, Infinity sets all inputs on that controller to the 999.99 value until situation is corrected. If this occurs, get out your Volt-Ohm Meter and test each in- put to find out which has the high input or ground voltage.
  • Page 169 Chapter 5 An Overview of the Programming Process This chapter presents these procedures while it develops one sample program using the points created in Chapter 4: • Defining the Program Action • Talking to the Controller • Understanding Keyword Formats •...
  • Page 170 Overview of Programming Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 171 Controller SupplyFan FLOOR1 AHU SCX 900 Form C Output PrehtValve FLOOR1 AHU SCX 900 Current Output ReturnFan FLOOR1 AHU SCX 900 Current Output SCX 900 Dampers FLOOR1 AHU Form C Output Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 172 You begin by deciding what you want your controller to do. GOAL: To have the controller activate morning warmup. You instruct the Infinity CX 9000 controller and network of Infinet controllers using an English-like programming lan- guage called Andover Controls Plain English. You write instructions in that language that direct the controller.
  • Page 173 Overview of Programming The controller needs to know: • Specific actions to take (listed on previous page). • The Infinity CX 9000 IOUs, SCX 900s, or TCX 850s the Locate Points on Controllers points are on. For the sample program, let’s say that the points are on the FLOOR1 Infinity CX 9000’s AHU SCX...
  • Page 174 TURN OPEN CLOSE The controller also has approximately 130 additional advanced keywords. These words are the source of Infinity’s power. You can exercise Infinty’s full capability by learning these advanced words. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 175 • Names of points, terminals, printers, Infinet controllers, and Infinity CX 9000s. • Reserved words such as POINT, PROGRAM, and NAME. Andover Controls Plain English has approximately 40 fundamental keywords and over 130 advanced keywords. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 176 Each keyword has one or more formats that tell how you use the keyword in a statement. If you look up TURN in the Andover Controls Plain English Language Reference, the format looks like this: Format 1...
  • Page 177 TURN acts on all output points that have a top and bottom of scale the same way. Two types of output points have this kind of scale: • Voltage • Current Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 178 TURN acts on all points the same basic way. This is why you should avoid using TURN with tristate points. 5-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 179 • You must have at least one output point in a TURN statement. • TURN sets an output point with an output type of Voltage or Current to the top or bottom of its scale. Infinity Controller Programmer’s Guide 5-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 180 Sample Lists with CLOSE and OPEN Notice that one of the formats for CLOSE is almost the same as for TURN: Format: CLOSE output_point_list CLOSE THE DAMPERS, VENTS CLOSE THE VENTS, DAMPERS, VALVES 5-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 181 • You can form lists with commas between points. • You can list two items with AND between them. • You can end long lists with AND between the last two items. Infinity Controller Programmer’s Guide 5-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 182: Writing The Program

    TURN ON THE SupplyFan TURN ON THE ReturnFan OPEN THE PrehtValve In Andover Controls Plain English, you can say almost anything you can say in English, as long as the words are keywords, and the statements are set up following the format.
  • Page 183 • Find the names of the points on your controller drawings. • Create the statements using the keywords. Make your statements like English sentences. • Make each single-action statement only one line. Infinity Controller Programmer’s Guide 5-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 184 • Type the name of a new file. It may be up to 16 characters long and must start with a letter of the alphabet. You can include underscores, periods, and numbers in file names. 5-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 185 To select a file from the list, press the EXECUTE key while the file is highlighted, or press CANCEL WINDOW to cancel. 2. Press the EXECUTE key to proceed. Name the sample program MORN.WARMUP. Infinity Controller Programmer’s Guide 5-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 186: Command Line

    1. Name (NAME)—Change it if you want. It may be up to 16 characters long and must start with a letter of the alphabet. You can include underscores, periods, and 5-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 187 7. Command Line (COMMANDLINE)—Move to it and press the space bar to select it if you want to be able to start the program from the command line by typing only the Infinity Controller Programmer’s Guide 5-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 188 1. Press the CANCEL WINDOW key to return to the File menu bar. 2. Press F for File and C for Configuration to open the File window where the attributes display. The File window opens. 5-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 189 • You can press the SAVE key at any time while in the File window to save the information about the file. • You can return to the File window by pressing CANCEL WINDOW, and selecting File Configuration. Infinity Controller Programmer’s Guide 5-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 190: Entering A Program

    Notice that the menu bar has changed. This new menu bar is called the “File menu bar.” You can press CANCEL WINDOW to go back and forth between the Editor window and the File menu bar. 5-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 191 Press CANCEL WINDOW • The Editor window is where you type your program. to Enter and Leave Editor • The name of the Infinity CX 9000, the Infinet controller, and the name of the program appear at the top of the window.
  • Page 192 BEGIN Takes the cursor to the top of the file and positions it in the leftmost posi- tion in that line. Takes the cursor to the bottom of the file. 5-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 193 Key as EXECUTE) brings the cursor to the beginning of the next line. Until you become well acquainted with the characters, you may want to refer to the Infinity CX Keystroke Reference card, supplied with this manual. Infinity Controller Programmer’s Guide 5-25...
  • Page 194 Now try moving the cursor down. Notice that the cursor moves to any position on the line, as long as you have typed at least one space (or one RETURN) on it. 5-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 195 Andover Controls Plain English Language Reference for a complete list. Other Features of the Infinity CX Editor You can enter up to 400 physical lines in any Infinity CX file. Enter Up to 400 Lines in Any File The Infinity CX editor also has several menus.
  • Page 196 3. Press CANCEL WINDOW to go to the menu bar again. 4. Select File Save to save the file. 5. Press CANCEL WINDOW to go to the menu bar again. 5-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 197 If it does, a program is taking longer than 10 seconds to execute one line and gives the impression it is off-line. The Infinity CX recovers after approximately 10 seconds and you can then save the file. The problem is really in the program—any program that takes more than 10 seconds to execute a single line is not following good programming practices.
  • Page 198: Searching For Errors

    Previous Error and the cursor would go back to the last line with an error on it. The cursor goes to that line even if you have fixed the error, until you select Check again. 5-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 199 • You select Search Next Error to find the errors one at a time from the top of the file down. • You select Search Previous Error to find the errors one at a time from the bottom of the file up. Infinity Controller Programmer’s Guide 5-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 200 RUN HEATPROGRAM, FANPROGRAM OPEN VENTS ROTATE HEATINGPROG TO STARTUP To start a program on a Infinet controller from an Infinity CX 9000, you enter the name of that Infinet controller, then the program name. For example if the HEATINGPROG were on...
  • Page 201 • You can use these four keywords to start programs: RUN, OPEN, START, ROTATE. • To start a program located on an Infinet controller from the Infinity CX 9000, after RUN include the name of the Infinet controller, then the program name. Infinity Controller Programmer’s Guide 5-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 202 If the value of a point is not set to the one you expect, you should go back into the program and check each keyword statement to be sure it is correct. 5-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 203 • To see a point value change in response to a program, Window select View Points from the menu bar. • The Point Summary window shows the current value of each point. Infinity Controller Programmer’s Guide 5-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 204 Edit Connect Logout Details Floor1 AHU MORN.WARMUP Default Port SCREEN1 SAVE Last Changed 10/5/91 8:03 AM CANCEL Current Line Current Line Start 10/30/91 10:01 AM File Size Program Status Active 5-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 205 6. Program Status (STATUS)—Active or Inactive. Summary • Open the File window and press DETAILS to see what a program is doing. • The Details window of a file tells which line is currently running. Infinity Controller Programmer’s Guide 5-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 206: Stopping A Program

    Figure 5-10 shows some STOP command lines in the Command window. Figure 5-10. STOP and CLOSE Command Lines View Edit Connect Logout Command Window – FLOOR1 AHU R> STOP MORN.WARMUP, HEATUP R> CLOSE VENTS R> STOP FANS 5-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 207 • You can stop a program from the Command window. Stop Programs from Command Window • Type STOP or CLOSE and the name of the program or programs you want to stop. Infinity Controller Programmer’s Guide 5-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 208 Overview of Programming 5-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 209 Chapter 6 Writing Fundamental Programs We recommend you read Chapter 4 and Chapter 5 before you read this chapter, and then proceed sequentially in this one. This chapter includes brief sample programs and presents these programming concepts: • Planning the Instructions •...
  • Page 210 Fundamental Programs Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 211 Thermistor Input HWPump1ST CENTRALPLANT CX 9000 IOU Digital Input CX 9000 IOU Burner CENTRALPLANT Form C Output HWPump1 CENTRALPLANT CX 9000 IOU Digital Output HWP1ISOValve CENTRALPLANT CX 9000 IOU Digital Output Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 212 5. Find the keywords you need. Keywords are presented as required in this manual and all are covered in detail in Andover Controls Plain English Language Reference. 6. Write the program. How to write programs is outlined in Chapter 5, this chapter, and subsequent chapters in this manual.
  • Page 213 Single Steps Find the Controller the Points Are On Find the Names of the Points Needed Find the Keywords Needed Write the Program Check the Program Save the Program Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 214 “flowchart” because it charts the flow of the program. Figure 6-2. Flowchart of WARMUPl Start Read from Top to Bottom the supply fan Turn On the Preheat valve Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 215 IF THE SupplyFanST IS ON THEN OPEN THE PrehtValve A Statement That The TRUE-FALSE Could Stand On Comparison Its Own This complete statement is called an IF..THEN statement. The IF half of the statement is a TRUE-FALSE comparison. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 216 FallThru in the File window, the controller skips the THEN statement and goes on to the next action in the program. In this case, there is no next action, so the program ends. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 217 THEN statements. • When the TRUE-FALSE comparison is FALSE, the controller skips the THEN statements and goes to the next statement or, if there is no next statement, ends the program. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 218 (using the NEXT ATTRIBUTE key) and select Looping. Figure 6-5 shows the FLOWTYPE attribute reset to Looping. Figure 6-5. FLOWTYPE File Attribute Set to Looping FLOWTYPE (X) Looping ( ) FallThru 6-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 219 The reason is that it does not really start in one place and it never ends. Instead it runs continuously, testing to see if the supply fan is on and opening the preheat valve when it is. Infinity Controller Programmer’s Guide 6-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 220 6-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 221 Figure 6-7 shows the expanded flowchart for the program. Figure 6-7. Expanded Flowchart of WARMUP Is the Fan ON or OFF? Keep Checking Open the Preheat Valve Close the Preheat Valve Infinity Controller Programmer’s Guide 6-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 222 More Efficient FLOWTYPE saves controller time by running the program only when necessary. The controller runs more efficiently with FallThru programs, but you may find instances when Looping programs are useful. 6-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 223 • FallThru programs use the controller more efficiently that Looping programs. • Turning ON and OFF the same piece of equipment in one program is the safest way to avoid conflicts related to the firing order list. Infinity Controller Programmer’s Guide 6-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 224 IF THE SupplyFanST = ON THEN... All of these comparisons state the same idea. You can see how flexible the Andover Controls Plain English language is. The single-action steps to turn on the return air fan when the supply air fan is on are as follows: 1.
  • Page 225 IF THE SupplyFanST IS OFF THEN TURN OFF THE ReturnFan Summary • You use the IS keyword to form comparisons. IS Has Many Aliases • IS, IS EQUAL TO, EQUALS, and = all have the same meaning. Infinity Controller Programmer’s Guide 6-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 226 You can also see if the time is greater than or equal to a certain time of day (TOD): IF TOD IS GREATER THAN OR EQUAL TO 8:30 am THEN... IF TOD >= 8:30 am THEN... 6-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 227 FLOOR1 AHU STRT.WARMUP IF THE TOD >= 8:30 am AND TOD <= 9:00 am THEN START MORN.WARMUP IF THE TOD <= 8:30 am AND TOD >= 9:00 am THEN STOP MORN.WARMUP Infinity Controller Programmer’s Guide 6-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 228 OCCUPIED and sees ON, the “comparison” is TRUE. Figure 6-13. OCCUPY.WARM Program File Edit Search Check Tools FLOOR1 AHU OCCUPY.WARM ’Triggered by OCCUPIED IF OCCUPIED THEN START WARMUP ELSE STOP WARMUP 6-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 229 TRUE-FALSE comparison is FALSE. • In an IF..THEN comparison, when you test a numeric point, ON is the same as TRUE and OFF is the same as FALSE. Infinity Controller Programmer’s Guide 6-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 230 FLOOR1 AHU WARMUP IF THE TOD > 8:00 am AND THE TOD < 9:00 am THEN CLOSE THE Dampers TURN ON THE SupplyFan TURN ON THE ReturnFan OPEN THE PrehtValve ENDIF 6-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 231 FALSE comparison with TOD. • When two or more actions occur after THEN, they can each be on separate physical lines below IF..THEN and the statement must be closed with ENDIF. Infinity Controller Programmer’s Guide 6-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 232 You may notice that this line is similar to the program from Chapter 5. Here, however, all the statements from one program are placed in one line. Why would you want to make them all one line? 6-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 233 You can use it after THEN. A TRUE-FALSE comparison determines if the temperature is less than 50 degrees: IF THE TEMP < 50 THEN GOTO HEATING Next, we write a real program with two lines. Infinity Controller Programmer’s Guide 6-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 234 • Turn off the burner. • Turn off the hot water pump. • Close the hot water pump isolation valve. • Stop the converter. Figure 6-15 shows a flowchart of the program. 6-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 235 If the TRUE-FALSE comparison is FALSE, the program skips the THEN and carries out the statements after ELSE. Figure 6-16 shows the looping program. Before HEATING starts heating, it checks the temperature. Infinity Controller Programmer’s Guide 6-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 236 Because all actions in the same line occur at the same time, this program is not ideal. Some time should elapse between starting the burner and activating the converter control program. The next program shows how to use elapsed time. 6-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 237 THEN statements and carries out the ELSE statements. • You can have multiple statements after ELSE, but the ELSE group must end with ENDIF on its own physical line. Infinity Controller Programmer’s Guide 6-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 238 3 minutes before proceeding: IF TM > 3 GOTO ADJUSTING Remember that the controller continues to run the same line until GOTO directs it to another line. 6-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 239 IF TM > 3 THEN START THE CONVRTR.PRGM GOTO ADJUSTING ENDIF LINE ADJUSTING TURN THE BurnerHiFire ON OPEN THE HWP1ISOValve TURN ON THE HWPump1 IF THE OutsideAir > 50 THEN GOTO NOTHEATING Infinity Controller Programmer’s Guide 6-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 240 TD, TH, TM, and TS. • State of the file—E for enabled, D for disabled. • Status of the file—A for active, I for inactive. 6-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 241 STATE (enabled or disabled) of the program, and the STATUS of the program (active or inactive). • To see the program summary from inside a program, select Tools View Program Summary. Infinity Controller Programmer’s Guide 6-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 242 2. If the day is Sunday and the burner is ON, lower the hot water setpoint. 3. If the day is not Sunday, run the HEAT.NOHEAT program. Figure 6-19 shows the flowchart of the program. 6-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 243 Once the point is a setpoint, the controller remembers the point value along with the name whenever you save the controller information with the SAVE command. Infinity Controller Programmer’s Guide 6-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 244 This character, called a tilde, continues the statement on the next physical line. To continue any statement on the next physical line, insert a tilde (~), press the EXECUTE key, and keep typing. 6-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 245 So, a TRUE-FALSE comparison can check the elapsed time at the end of the ADJUSTING line. Figure 6-21 shows the looping HEAT.NOHEAT program with both statements altered under ADJUSTING. Infinity Controller Programmer’s Guide 6-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 246 IF THE WEEKDAY IS NOT SUNDAY THEN SET THE HWsetpt TO 130 ELSE SET THE HWsetpt TO 100 ENDIF IF THE OutsideAir > 50 AND TM > 3 THEN GOTO NOTHEATING 6-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 247: Adding Comments

    (~) at the end of the first physical line. • You add a comment to a program by typing a single quotation mark before it. • A comment cannot be longer than a physical line. Infinity Controller Programmer’s Guide 6-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 248 Symbol(s) are not from the correct set.) 3. Be sure you have spelled all keywords or their aliases correctly. If you typed RUM instead of RUN, the controller cannot guess the correct word. 6-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 249 8. With IS, check to be sure you used the correct words for an operator. Do no use IS and > together. The symbols do not require IS; they are alternatives to IS GREATER THAN, IS LESS THAN, and similar wordings. Infinity Controller Programmer’s Guide 6-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 250 (If the comment does have the quotation mark, but exceeds the 132 character limit, you receive a message that says Comment has more than 132 characters.) Refer to the Andover Controls Plain English Language Reference for more on formats. Appendix Has Complete...
  • Page 251 Chapter 7 More Fundamental Keywords This chapter includes brief sample programs strictly for the purpose of illustrating some fundamental keywords and programming concepts. The chapter presents these programming concepts: • Comparisons with IS NOT • Comparisons with IS and OR •...
  • Page 252 More Fundamental Keywords Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 253 FLOOR1 AHU SCX 900 Digital Output SupplyFan FLOOR1 AHU SCX 900 Digital Output ReturnFan FLOOR1 AHU SCX 900 Damper FLOOR1 ROOM101 TCX 850 Current Output HWConvValve CENTRALPLANT CX 9000 IOU Current Output Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 254 3. Otherwise turn on the humidifier. Figure 7-1 shows the flowchart of the program. The point you need to write the program is HUMIDIFIER. You also need to check the WEEKDAY. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 255 Monday are in the next week. The range must contain days all in the same week. It may not run from Saturday of one week to Sunday of the next. Figure 7-2 shows the program. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 256 More Fundamental Keywords Figure 7-2. HUMID.CTRL Program—Looping File Edit Search Check Tools FLOOR1 AHU HUMID.CTRL IF THE WEEKDAY IS NOT Mon THRU Fri THEN TURN OFF the Humidifier ELSE START HUMID.PRGM Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 257 • The THRU range is always inclusive. Range with THRU is Always Inclusive • A range of weekdays must always include days in the same week, starting with Sunday and ending with Saturday. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 258 1. Check the day of the week. 2. If day of the week is Monday, Wednesday, or Friday, then modulate the humidifier. 3. Otherwise turn off the humidifier. Figure 7-3 shows the flowchart of the program. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 259 ELSE TURN OFF THE HUMIDIFIER Summary • In TRUE-FALSE comparisons with IS the word OR is understood in a list. • You must use the word EITHER or IN before a list. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 260 2. If the day of the week is not Monday, Thursday, or Saturday, turn off the humidifier. 3. Otherwise run the humidity control program. Figure 7-5 shows the flowchart of the program. 7-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 261 Summary • You can use NOT or NEITHER to see if a name or number is not in a list. • You must use IN or NEITHER before the list. Infinity Controller Programmer’s Guide 7-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 262 1. Check the day of the week. 2. If the weekday is between Monday and Thursday, then run the humidity control program. 3. Otherwise turn off the humidifier. Figure 7-7 shows the flowchart of the program. 7-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 263 • You can set up a range in a TRUE-FALSE statement with THRU or BETWEEN. • Both THRU and BETWEEN are always inclusive. • You cannot use <> with THRU or BETWEEN. Infinity Controller Programmer’s Guide 7-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 264 If a valve has engineering units of 0 to 360 degrees, and the corresponding electrical units are 0 to 20 mA, when you move the setting to 180 degrees, it sets to 10 mA. 7-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 265 10 mA, halfway between 0 and 20 mA. Figure 7-9. Auto-Conversion of Units View Edit Connect Logout Details – CENTRALPLANT HWConvValve Description HWConvValve EXIT Display Format %### Exported CANCEL Conversion LOGS Auto-Conversion TRIGGERS Open DELETE Bottom Infinity Controller Programmer’s Guide 7-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 266 You can move a valve to a certain value to, for instance, set a temperature setpoint: MOVE THE SpaceSP TO 72 Remember, MODULATE is the same as MOVE, so you can use it in appropriate statements: MODULATE THE HWConvValve TO 50% 7-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 267 0 (bottom) to 1 (top). • ADJUST—With TO only, not the equals sign. • CHANGE—With TO only, not the equals sign. • LET—With the equals sign only, not with TO. Infinity Controller Programmer’s Guide 7-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 268 –ON for that number of seconds: MODULATE THE ROOM101 Damper TO –60 A tristate point also pulses when given a numeric setting rather than one of the three standard settings. 7-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 269 ON for that number of seconds. • Tristate outputs to a negative number to set them to –ON Set Tristate Outputs to –ON with Negative Value for that number of seconds. Infinity Controller Programmer’s Guide 7-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 270 The single-action steps to set the hot water temperature are: 1. Check the lowest space temperature to determine the lowest space temperature adjustment factor (LOWSPACEFCTR). 2. Set the hot water temperature setpoint based on the LOWSPACEFCTR. 7-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 271 180 degrees Figure 7-11 shows the program that combines the two steps in one statement. The controller automatically checks the lowest space temperature to update the LOWSPACEFCTR point value. Infinity Controller Programmer’s Guide 7-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 272 You can use IS BELOW for IS LESS THAN and IS ABOVE LESS THAN for IS GREATER THAN. An alternative way to write this program is shown in Chapter 8 under the MINIMUM and MAXIMUM keywords. 7-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 273 • You can set a point value to an expression. • You can use IS BELOW for IS LESS THAN. • You can use IS ABOVE for IS GREATER THAN. Infinity Controller Programmer’s Guide 7-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 274 SET KWH = KWMeter DIVIDED BY SCAN + KWH SET KWH = KWMeter / SCAN + KWH SCAN is a system variable (a keyword that Infinity assigns a value) that measures the length of the controller scan of all programs. You learn more about SCAN later in this manual.
  • Page 275 • You can use the keywords TIMES and DIVIDED BY to form expressions. • You can substitute the asterisk (*) for TIMES and the slash Use Asterisk and Slash Symbols (/) for DIVIDED BY in expressions. Infinity Controller Programmer’s Guide 7-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 276 2. Multiplies the result of step 1 by OATCHANGE. 3. Divides the result of step 2 by TIME to set the rate of rise. 4. Adds the result of step 3 to 6.0. 7-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 277 • The controller carries out operations in parentheses first. • Multiplication and division are carried out before addition Processes Occur in a Specific Order and subtraction; all four of these operations are carried out from left to right. Infinity Controller Programmer’s Guide 7-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 278 YEAR HOUR MINUTE SECOND HOD (Hour of Day) TOD (Time of Day) WEEKDAY and TOD were introduced earlier. The others are covered in the Andover Controls Plain English Language Reference. 7-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 279 More Fundamental Keywords You also cannot delete any system variable, since each is a permanent part of Infinity. Summary • HOUR and DATE are the only system variables you can You Can Set HOUR and DATE set. • You must be at Administrate security level to set HOUR.
  • Page 280: Setting The Hour

    IF DAYOFMONTH IS BETWEEN 1 AND 7 THEN... IF WEEKDAY IS SUNDAY THEN... IF HOUR = 2 THEN... Then you form the statement to set the HOUR: SET HOUR TO HOUR + 1 7-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 281 Flowchart of Daylight Program Start the month April? day of month 1-7? weekday Sun? the Hour Set the Hour to Figure 7-13 shows the program that results when you combine the steps. Infinity Controller Programmer’s Guide 7-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 282 Set it to FallThru in the File window so that after it runs, it ends. Set a Trigger to Start Then, so that it starts only when the DAYOFYEAR changes, Program you set a trigger (see the next chapter). 7-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 283 • You can place an IF..THEN statement inside another THEN Inside Another IF..THEN statement (after THEN). • To make a program run once, then stop, you set it to FallThru in the File window. Infinity Controller Programmer’s Guide 7-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 284 3. If the area is not occupied, proceed. 4. Check the current HOD to see if 1/2 hour has gone by. 5. If 1/2 hour has not gone by, keep checking. 7-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 285 You must define it as a point. Since it is neither input nor output, but holds a number, you must define it as a numeric point in the Point window, by selecting Numeric for TYPE. Infinity Controller Programmer’s Guide 7-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 286 TURN OFF THE ReturnFan ENDIF IF OCCUPANCY() = ON THEN GOTO OCCUPIED If the building is occupied, then the LASTHOUR is set over and over until OCCUPANCY is OFF. When OCCUPANCY 7-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 287 • You can create a numeric point using the NUMERIC keyword at the top of your program. • You can use a numeric point in any program on the controller. Infinity Controller Programmer’s Guide 7-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 288 4. Check to be sure every IF has a THEN. In everyday English you can say IF THE TEMP < 50 TURN ON THE HEAT, but in Andover Controls Plain English, the THEN is required: IF THE TEMP < 50 THEN TURN ON THE HEAT 5.
  • Page 289 IF WEEKDAY IS SUNDAY THRU MONDAY THEN..You can look up any messages that occur in Appendix B, Messages Help You Resolve Issues where we explain what you can do to resolve each message. Infinity Controller Programmer’s Guide 7-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 290 The program does not do what you want it to, or does it at the wrong time, temperature, or the like. The controller does not know anything is wrong—you must recognize the problem. 7-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 291 The error would say Path name is not an actual path. For instance, the path to the fan might be CENTRALPLANT TOWER FAN and you might have named only TOWER FAN in the program. Infinity Controller Programmer’s Guide 7-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 292 TRUE. So even if it is 80 degrees Fahrenheit outside, the program still goes to the HEATING line. The same happens with this statement: IF SUNDAY THEN GOTO HEATING 7-42 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 293 Appendix B or apply techniques discussed in Chapter 14. • Logical errors. Refer to Chapter 14 for debugging techniques that help uncover logical and other runtime errors. Infinity Controller Programmer’s Guide 7-43 Technical Manuals Online! - http://www.tech-man.com...
  • Page 294: Helpful Hints

    • The program that calls this program. • The program or programs that call this function. • The functions this program calls. For more on functions, refer to Chapter 12. 7-44 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 295 Chapter 8 Working with Triggers, Logs, and Special Conversions We recommend you read Chapters 5, 6, and 7 before you read this chapter. This chapter presents: • Taking Action Only When a Point Changes • Setting Point Triggers • Triggering a Program by the Day of Year •...
  • Page 296 Triggers and Logs Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 297 CX 9000 IOU Thermistor Input SupplyAir BLDG1 FLOOR1 SCX 900 Thermistor Input FLOW BLDG1 ROOM101 TCX 850 Voltage Input LCX 800 StaticPress BLDG1 BASEMENT Voltage Input PRESSURE BLDG1 FLOOR1 SCX 900 Voltage Input Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 298 • Have it triggered by a system variable changing. System variables are related to date and time. WEEKDAY, for instance, is a system variable. They are called system variables because the controller system sets their values. You Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 299 • You can have a program start automatically. • You can have a program triggered by a point or system variable. • System variables are date and time values updated by the controller. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 300 (If you have not yet saved the point, a popup message box appears stating that the point does not exist and asking if you want to create it. Press the OK button to proceed.) Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 301 Press ADD to Add 2. Press the ADD button. Trigger to List The program name appears in the Programs to Trigger window. Figure 8-2 shows the HEAT.NOHEAT program in the Triggers window. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 302 Program Name text box from the list. Press EXIT to return to the Details window. You could have OUTSIDEAIR trigger several programs by adding them all to the Programs to Trigger list. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 303 • You can press the ADD or DELETE button to add or delete a program from the program list. • You can press EXIT to return to the Details window. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 304 5. Move to the TRIGGERS button and press it. 6. Now type the name of the program in the Program Name text box. Figure 8-3 shows the program name in the Triggers window. 8-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 305 Variable from the File menu bar. You then proceed as detailed in Chapter 5. Summary To trigger a program with a system variable, you edit the system variable and add the program name to the Programs to Trigger list. Infinity Controller Programmer’s Guide 8-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 306 PRINT SupplyAir[1] 1. Logs can be input, output, numeric, string, or datetime points. The example here illustrates an input. More about other types of logs appears in future chapters. 8-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 307 Table 8-3 shows the AVSUPPLYAIR array positions labeled with index numbers. Table 8-3. AVSUPPLYAIR Array Values Index Value 72.5 73.1 71.2 78.2 72.1 76.5 77.5 Last Value 74.2 in Array, but Not Necessarily Last One Recorded Infinity Controller Programmer’s Guide 8-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 308 Remember, you can set an array from a program, but you can- not set a log. A point can be a log or an array; it cannot be both. 1. We present the AVERAGE keyword later in this chapter. 8-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 309 • You access entries in a log or array by the name and index Index Numbers number; you access the third entry in a SUPPLYAIR log as follows: PRINT SupplyAir[3] Infinity Controller Programmer’s Guide 8-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 310 (X) LogInstantaneous Log Type ( ) LogAverage SAVE (X) Automatic Log ( ) LogMinimum ( ) Manual Array ( ) LogMaximum CANCEL Interval Days 0 Hours 0 Minutes 15 Seconds 0 8-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 311 4. Interval (LOGINTERVAL)—Enter the amount of time you want to elapse between the logging of each value. Break down the total length of the interval into: • Days—Up to 365. Infinity Controller Programmer’s Guide 8-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 312 Figure 8-5. The Logs Window for Manual Array View Edit Connect Logout Point – FLOOR1 AHU AVG.SAT LOGS – FLOOR1 AHU AVG.SAT Number of Entries EXIT Log Type ( ) Automatic Log CANCEL (X) Manual Array 8-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 313 SAVE to save the point as a log. Or you can press the EXECUTE or SAVE key from the Logs window and save the log information. • You press the CANCEL button to erase the log information. Infinity Controller Programmer’s Guide 8-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 314 To set up this log, you would make the interval 1 hour to record the average value for the hour. 8-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 315 • You may want to select each of the entry types for logs in different circumstances. • You base the length of the log interval on the kind of information you need. Infinity Controller Programmer’s Guide 8-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 316 IF SUM(KWH.USAGE) IS ABOVE USAGE.SP THEN... You could also set a numeric point to the sum for later use in a report: SET TOTAL TO SUM(KWH.USAGE) Figure 8-6 shows the program. 8-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 317 • SUM adds up the values in a log, list, or array. • SUM automatically adds up all the values in a log or array when you give the point name with no index number. Infinity Controller Programmer’s Guide 8-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 318 SET OATAVG[2] TO AVERAGE(OutsideAir) (Details on creating numeric points are included in Chapter 4. Using numeric points is covered in a later chapter.) Figure 8-7 shows the program. 8-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 319 • AVERAGE finds the average of the values in a log, list, or array. • AVERAGE automatically averages all the values in a log AVERAGE Automatically Uses Entire Log or array when you give the point name with no index number. Infinity Controller Programmer’s Guide 8-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 320 MAXIMUM. MAXIMUM works like this: MAXOAT = MAXIMUM (OutsideAir) When you put OUTSIDEAIR in parentheses after MAXIMUM, the keyword assumes that point is a log or array. It finds the highest value logged. 8-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 321 4. Divide the total by the number of items in the array (SIZE attribute) minus 2 (the minimum and maximum that have been removed). 5. Put the results in a numeric point called ADJUSTED.AVG. Infinity Controller Programmer’s Guide 8-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 322 Figure 8-9 shows the WATERTEMP program rewritten to set the hot water to the correct setpoint in one statement. Figure 8-9. WATERTEMP Program—Looping File Edit Search Check Tools FLOOR1 AHU WATERTEMP SET HWTemp.Setpt TO MINIMUM(MAX((180 – LowSpaceFctr),100),180) 8-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 323 • The MAXIMUM and MINIMUM keywords automatically act on all the values in a log or array when you give no index number. Infinity Controller Programmer’s Guide 8-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 324 Conversion text box. Developing the Conversion The words and symbols you use to form the conversion are the same ones you program with—Andover Controls Plain English keywords. You need to use the inches of water to cubic feet per minute relationship and the K factor for the VAV box to convert to cubic feet.
  • Page 325 Once you have developed the conversion, open the Point window, name the point, and proceed as follows: 1. Press the DETAILS button. 2. Enter a description and format if you want. Infinity Controller Programmer’s Guide 8-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 326 You either press OK to keep the conversion for the point or CANCEL to cancel the conversion. Figure 8-11. Conversion Popup Message Box Error Point does not exist. Create it? CANCEL 8-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 327 Conversion text box. • You use Andover Controls Plain English language keywords and symbols to create a conversion. You usually employ a mathematical keyword to form a nonlinear conversion.
  • Page 328 OUT for such inputs when you install the controller. (See the installation guide for each controller for details.) You enter the formula in the Conversion text box. 8-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 329 • LCX 800s and TCX 850s both have has a reference voltage of 5.120 V. • SCX 900s and LCX 810s both have input reference resistor switches that must be set to OUT for high impedance inputs. No conversion is required. Infinity Controller Programmer’s Guide 8-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 330 Figure 8-12 shows a current sensor wired to an input point. Figure 8-12. Wiring Diagram for Current Input = 475 Ω Take the following steps: 1. Calculate the voltage from an input with a 475 Ω resistor: 8-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 331 900 or LCX 810) as follows: Voltage = Current (mA) * Resistance (Ω)/1000 • The resistance for a current input is usually 475 Ω on a SCX 900 or LCX 810. Infinity Controller Programmer’s Guide 8-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 332 After you type the name, if your new point has a conversion, a new window appears on top of the Point window. Figure 8-14 shows the window, called the Conversion Check window. It displays a message. 8-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 333 If you pressed YES, enter the conversion for the new point in the Conversion text box. Press the SAVE button to save the point. Or press the EXECUTE key or the SAVE key. The window automatically closes. Infinity Controller Programmer’s Guide 8-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 334 ENABLED and DISABLED set the STATE of a point. (You can also stop points from displaying on the LCD keypad, but not the same way. See Chapter 9 for details.) 8-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 335 • Enabling a point is not the same as starting it or turning it • An enabled point is under the control of the controller. • You can use ENABLE or DISABLE on the command line or inside a program. Infinity Controller Programmer’s Guide 8-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 336 BUTTON key and then L. • TRIGGERS—Opens the Triggers window. Press the QUICK BUTTON key and then T. • DELETE—Removes the point from the controller. Press the QUICK BUTTON key and then E. 8-42 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 337 Chapter 9 Altering and Further Developing Programs in Your Set This chapter includes sample programs and presents these programming concepts: • Cutting, Copying, and Moving Text in a File • Finding and Replacing Text in a File • Finding and Replacing Text with Regular Expressions •...
  • Page 338 Developing Programs Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 339 Form C Output Fan2 CENTRALPLANT TOWER SCX 900 Form C Output Fan3 CENTRALPLANT TOWER SCX 900 Form C Output CX 9000 CW1ISOValve CENTRALPLANT Current Output CHWP1Valve CENTRALPLANT CX 9000 Current Output Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 340 3. Move the cursor to the beginning of the location you want to move the text to and press the CANCEL WINDOW key. (The location you want to move the text to can be in Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 341 132 characters. The controller responds with a message. Figure 9-2 shows the message that appears. Figure 9-2. Caution for Pasting Long Statements Caution Search Replace inserted a continuation character, ~, which may produce errors in your program. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 342 Pasting and Reaching End of File File Can Contain Up to If you paste 25 physical lines into a 375 line file, Infinity 400 Lines enters as many physical lines as it can up to 400 total for the entire file.
  • Page 343 The selected text is now gone. It is not even available to paste. If you select Edit Paste now, you paste the last piece of text you cut or copied with Edit Cut or Edit Copy. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 344 ( ) Regular Expression Search (X) Entire File (X) Prompt/Replace 4. Enter up to 32 characters in the Search For text box. Move from the Search For to the Replace With text Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 345 8. Press the OK button to begin the search. The search starts where the cursor currently is and stops at the end of the file. When Infinity finds the first instance of the text, it puts the cursor on that text.
  • Page 346 Developing Programs 11. If Infinity cannot find the text, Text not found appears in the message bar. If, when you replace text, a line exceeds 132 characters or the file grows beyond 400 lines, the same messages appear as when you paste text.
  • Page 347 4. Press the OK button to start the search. The Cursor Lands on the Text It Finds The search window disappears and the cursor lands on the first line that contains the text. Infinity Controller Programmer’s Guide 9-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 348 Figure 9-7. Search:Find Next Window File Edit Search Check Tools FLOOR1 AHU MORN.WARMUP Search:Find Next Search For DAMPER (X) Ignore Case ( ) Regular Expression Search CANCEL 9-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 349 WINDOW key to stop searching in the middle of the search. • With Search Find Next you can press the EXECUTE key repeatedly to move to the next occurrence of that text. Infinity Controller Programmer’s Guide 9-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 350 SPACE.TEMP The period means “any single letter, number, or symbol.” 5. Press the NEXT ATTRIBUTE key to move to the Replace With text box and enter the new point name. 9-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 351 The text with characters like periods and brackets that have special meanings is called a “regular expression.” These characters (*, [, ], ., $,\) have special meanings only when you select Regular Expression Search in a Search window. Infinity Controller Programmer’s Guide 9-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 352 To find more than one letter in the middle, add the asterisk (*) to a regular expression searching for a single character: Space[A-Z]*Temp The asterisk means “repeat the previous character or range of characters indefinitely.” 9-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 353 SPACE2ATEMP, because it does not combine letters and numbers—it finds one or the other. Finding Text That Ends a Line To find a group of characters that ends a physical line, use the $ after them: THEN$ Infinity Controller Programmer’s Guide 9-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 354 • You place a slash immediately before the special character to cancel its special meaning. For example, find the left bracket by putting it first inside the range, as follows: Space[[0-9]Temp 9-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 355 If you use periods in your point names, you can find them with regular expressions. You put a backslash (\) in front of any special character you want to find as text, including the period: SpaceTemp\.[1-9]* Infinity Controller Programmer’s Guide 9-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 356 You can find the asterisk (*) or dollar sign ($) the same way. Character as Text You can also search for a backslash (\), as well as either square bracket, by placing it as the first character inside the brackets. 9-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 357 [ABCDEF] or [A-F] • You can find a backslash, left square bracket, or right square bracket as text by placing it in the first character position in a range inside square brackets. Infinity Controller Programmer’s Guide 9-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 358 Figure 9-9. A New Command Window File Edit Search Check Tools Command Window – BLDG1 FLOOR1 FLOOR1 AHU MORN.WARMUP Now you can enter any commands here that you would enter in the original Command window. 9-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 359 • You press the CANCEL WINDOW key to move from window to window to the File menu bar. • You select Tools Command Window again to remove the Command window. Infinity Controller Programmer’s Guide 9-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 360 Check Tools Point Summary File Summary Program Summary System Variables Edit a Point Edit a System Variable Command Window Messages As shown in Figure 9-11, the Point Summary window appears. 9-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 361 You can also create a new point, alter an old one, or look at a point’s attributes by selecting Tools Edit a Point. The Open a Point window appears and you then proceed as described in Chapter 4. Infinity Controller Programmer’s Guide 9-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 362 Program Summary System Variable Summary Edit a Point Edit a System Variable Command Window Messages Once you have selected it, the Messages window appears. Figure 9-13 shows the Messages window. 9-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 363 Messages – BLDG1 FLOOR1 EXIT CLEAR To erase the messages, press the CLEAR button. Erase Messages with CLEAR Button To leave the window without erasing the messages, press the EXIT button. Infinity Controller Programmer’s Guide 9-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 364 System Variable Summary Edit a Point Edit a System Variable Command Window Messages Once you have selected it, the File Summary window appears. Figure 9-15 shows the File Summary window. 9-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 365 PAGE DOWN key. When the file you want to change is highlighted, press the EXECUTE key. The Open a File window appears. Proceed as described in Chapter 5. Infinity Controller Programmer’s Guide 9-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 366 You would start by using the Connect menu from the Main Connect Menu Opens Other Controllers menu bar to connect to the ROOM101 Infinet controller on the BLDG1 Infinity CX 9000. Then: 1. Close the damper. 2. Turn off the reheat coil. Figure 9-16 shows the flowchart of the program.
  • Page 367 Select FILE SAVE AS to Copy File As shown in Figure 9-18, the Open a File window appears. The name of the Infinity CX 9000 controller appears in the Controller text box. Infinity Controller Programmer’s Guide 9-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 368 6. Press the EXECUTE key to complete the copying process. 7. Repeat steps 2 through 6 for each VAV box on each floor. To copy from one Infinity CX 9000 to another, you would proceed the same way, only you would change the controller name in the Controller text box and leave the Infinet Ctlr text box empty.
  • Page 369 Developing Programs Summary • The controller knows the Infinity CX 9000 you are on when you open the file and displays the name in the Controller text box. • You can take the same action in several rooms on several...
  • Page 370 Attribute of a Point with a point from the command line as well as inside an Infinity CX 9000 program. The path gives you access to a point that may be on another controller. For instance, you can print the temperature in room 408 of building 1 from any...
  • Page 371 Infinet controller followed by the name of the point. • To access points on a Infinet controller from another Infinity CX 9000, you must give the full path to that Infinet controller—the Infinity CX 9000 name followed by the Infinet controller name.
  • Page 372 Infinet controllers (SCX 900 and LCX 810 controllers). Details on how to display them are in the Andover Controls Infinity CX Operator’s Guide. Unless you stop particular points (or system variables) from displaying, any operator with the password can change the value of that point.
  • Page 373 DISABLED to prevent that point from displaying on the LCD. • You set the LCDSTATE attribute of any point to ENABLED to allow that point to display on the LCD. Infinity Controller Programmer’s Guide 9-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 374 These replacements are used throughout the file. If the item is a single item not in a path, the replacement for it is always ?_n where n is a number. 9-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 375 Here are some examples of paths you might see: IF ?2 ?2_1 ?_4 > 82 THEN OPEN DAMPER ?2 is an Infinity CX, ?2_1 is an Infinet controller, and ?_n is a point. IF FLOOR1 ?2_2 ?_1 > 82 THEN OPEN DAMPER If an Infinet controller is replaced with ?n_n, then the point that follows it may not have been deleted;...
  • Page 376 A program must be enabled before you can run it. You can enable or disable a program from the command line or from inside a program. 9-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 377 • A disabled program cannot be run by the controller. • An enabled program can be run by the controller. • You can enable or disable a program from both the command line and inside a program. Infinity Controller Programmer’s Guide 9-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 378 • Gathering and converting input points • Processing program statements and commands • Converting output points and setting hardware • Evaluating alarms • Updating the status bar Figure 9-21 illustrates the scanning process. 9-42 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 379 • Triggers set program STATUS to active • Value of numeric, string, or datetime points change • Attribute values update • Point logs update • Command lines execute (between programs) Infinity Controller Programmer’s Guide 9-43 Technical Manuals Online! - http://www.tech-man.com...
  • Page 380 You create and store the schedules on an Infinity SX workstation, but they take effect only on a controller. 3. Gathering and Converting Input Points...
  • Page 381 Processing Command Lines The controller treats command lines entered in the Controller Checks for Command Lines Command windows of the various terminals and computers like one-line programs. The scanner checks for command Infinity Controller Programmer’s Guide 9-45 Technical Manuals Online! - http://www.tech-man.com...
  • Page 382 We do, however, recognize that you may want a master emergency program to override output settings of all other programs in certain circumstances. That is why you are allowed to alter the firing order. 9-46 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 383 Alarms All points can have up to eight conditions that the controller sets an alarm under. You set these conditions on an Infinity SX 8000 workstation. Whenever the point’s value changes during the scan, the controller evaluates each condition associated with an alarm at the end of the scan and updates the alarm’s...
  • Page 384 VALUE of ON could be exported to another controller between PROGRAM1 and PROGRAM99. This is another reason you should handle both turning on and turning off a piece of equipment in one program. 9-48 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 385 • Executes current lines from each program. Treats command lines as one line programs and checks for them between each current line. • Converts outputs and sets hardware. • Evaluates alarms and updates the status bar. Infinity Controller Programmer’s Guide 9-49 Technical Manuals Online! - http://www.tech-man.com...
  • Page 386 PREVIOUS button. Once you press the button, OCCUPY then appears before MORN.WARMUP. To move OCCUPY to after MORN.WARMUP, arrow to MORN.WARMUP and press the NEXT button. OCCUPY then appears after MORN.WARMUP. 9-50 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 387 • To exit the window, press the QUIT button. • You can open the firing order list from a function or data file. • You can change the firing order list only from a program file. Infinity Controller Programmer’s Guide 9-51 Technical Manuals Online! - http://www.tech-man.com...
  • Page 388 AUTOSTART programs remain stopped until you start them. • Add a program at the bottom of the list that starts the same AUTOSTART programs you stopped at the top of the list. 9-52 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 389 STOP OutsideAirTest, SpaceTempTest, VentilationTest Figure 9-24 shows a sample STARTPROGRAMS program. Figure 9-24. Sample Program to Start Programs File Edit Search Check Tools FLOOR1 BLDG1 StartPrograms START OutsideAirTest, SpaceTempTest, VentilationTest Infinity Controller Programmer’s Guide 9-53 Technical Manuals Online! - http://www.tech-man.com...
  • Page 390 Controlling Exported Point Updates Suppose OUTSIDEAIR travels out from (exports from) an Infinity CX 9000 to several TCX 850s for VAV box control. (Remember that the OUTSIDEAIR point updates only when the temperature changes by more than the threshold amount.)
  • Page 391 The following is an example of a program that ensures the hot Sample Program to water setpoint receives all updates: Update HWSetpoint Checking: IF TM > 5 THEN GOTO Updating Updating: SET HWSetpoint REFRESH to ON GOTO Checking Infinity Controller Programmer’s Guide 9-55 Technical Manuals Online! - http://www.tech-man.com...
  • Page 392 Developing Programs 9-56 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 393 Chapter 10 Creating and Using Numeric, String, and DateTime Points This chapter introduces more types of points to the programming process: • Using Numeric Points • Using String Points • Creating Date and Time Stamps • Switching Lead/Lag with Positions of Minimum and Maximum in Log •...
  • Page 394 Advanced Points 10-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 395 Fan1ST CENTRALPLANT TOWER SCX 900 Digital Input Fan2ST CENTRALPLANT TOWER SCX 900 Digital Input Fan1 CENTRALPLANT TOWER SCX 900 Form C Output Fan2 CENTRALPLANT TOWER SCX 900 Form C Output Infinity Controller Programmer’s Guide 10-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 396: Outside Air

    You can also make a numeric point a log or array. To set the CHW.SETPT, you must first create it as a numeric point. You then proceed with the program. 10-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 397 120 – OAT < 40 Set the Chilled 120 – OAT > 50 Water Temp based Set the Chilled on OAT Water Temp to 40 degrees Set the Chilled Water Temp to 50 degrees Infinity Controller Programmer’s Guide 10-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 398 IF 120 – OutsideAir IS 40 THRU 50 THEN CHW.SETPT = 120 – OutsideAir You can also employ MINIMUM and MAXIMUM to write this program, just as you did with WATERTEMP in Chapter 8. 10-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 399 • A numeric point is a point that does not interact with the environment, but has a numeric value. • A numeric point is stored in the controller for use by all Numeric Points Stored in Controller programs. Infinity Controller Programmer’s Guide 10-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 400 4. Move (press the NEXT ATTRIBUTE key) to the text box after the equal sign (to the right of the name). 5. Type the message in the text box. Figure 10-3 shows the message in the window. 10-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 401 You should print the point name in the message. Since that name changes from point to point, you enter a format to receive any point name, as follows: FAILMESSAGE="|@@@@@@@@@@@@@@@@ has failed." Infinity Controller Programmer’s Guide 10-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 402 5. If the temperature is greater than 82, start LEAD.LAG.FAN, a program that controls the fans. (See LEAD.LAG.FAN later in this chapter.) 10-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 403 Closed CWBypassVlve To open the bypass valve means to divert CWSupply condenser water from the tower fans. Chiller To close the valve means to CWPump divert water to the fans. Infinity Controller Programmer’s Guide 10-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 404 Turn off Water Temp Fan1 and Fan2 >82? Start Lead.Lag.Fan Figure 10-6 shows the program. The program is written on the TOWER Infinet controller, so the program refers to the 10-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 405: Checking The Fan Status

    Looping program. However, as a FallThru program, it continues to carry out the actions in order and carry out each action only once. Infinity Controller Programmer’s Guide 10-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 406 Figure 10-8 shows the TOWER.FAN.CK program. The program is FallThru and contains a GOTO statement in the WAIT line to wait for 15 seconds before going to the 10-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 407 Value the values display on the screen or printer. • You can make a FallThru program loop by using GOTO to send it to the line it is currently on. Infinity Controller Programmer’s Guide 10-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 408 1. Give the fan 15 seconds to change status. Use GOTO to form the manual loop. 2. Check the fan status. 10-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 409 You can also make FANFAILTIME a log or array and store several date/times in it to keep a history of fan failure times. Infinity Controller Programmer’s Guide 10-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 410 0 to FANTIME[1]. Only when the fan is ON does the controller add the SCAN to FANTIME[1]. You would use the same equation to set FANTIME[2] to the hours the other fan has been ON. 10-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 411 MINITEM and MAXITEM to determine the lead and lag: LEAD = MINITEM(FANTIME) LAG = MAXITEM(FANTIME) The lead is the fan that has been running the shortest time. The lag is the one that has been running the longest. Infinity Controller Programmer’s Guide 10-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 412 SET FANTIME[2] = FANTIME[2] + (SCAN/3600 * Fan2ST) IF MAXIMUM(FANTIME) > 24 THEN GOTO LeadLagSwap LINE LeadLagSwap LEAD = MINITEM(FANTIME) LAG = MAXITEM(FANTIME) SET FANTIME[1] = FANTIME[1] – 24 SET FANTIME[2] = FANTIME[2] – 24 GOTO Decide 10-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 413 Local variables are known only to the program you create them in. • The SCAN system variable tells you the number of SCAN System Variables Gives Scan Length seconds that have passed since the points were last updated. Infinity Controller Programmer’s Guide 10-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 414 3. To log the time that the temperature change is recorded, you can have a parallel log record the TEMPTIME and set that one to the DATE (or TIME) system variable value at the same time you record the TEMPDIFF. 10-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 415 • You make a log semi-automatic by setting its interval of zero. • You use a semi-automatic log to set a datetime log to the time an event occurs. Infinity Controller Programmer’s Guide 10-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 416 140 or EMX 150 outputs.) • OVERRIDEVALUE—For voltage or current outputs, the OVERRIDEVALUE is the voltage or current you would read if you connected a meter to the point. For digital 10-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 417 PRINT Burner STATE TO SCREEN1 PRINT Fan1 DESCRIPTION TO SCREEN2 You can take other actions on attributes: SET TEMPERATURE STATE TO ENABLED MOVE CW1ISOValve VALUE TO 80% SET CHW2ISOValv ENGSCALETOP TO 1 Infinity Controller Programmer’s Guide 10-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 418 Command window.) You can even set a program’s STATUS attribute to ACTIVE to start it, INACTIVE to stop it, from the command line: SET MORN.WARMUP STATUS TO INACTIVE 10-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 419 Chapter 11 Programming with Advanced Keywords This chapter covers the following topics: • Summary on Local Variables • Acting on Errors with Local String Variables • Changing the Status Bar • Going to Lines Based on a Value • Going to Lead, Lag, or Standby •...
  • Page 420 Advanced Keywords 11-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 421 CENTRALPLANT TOWER SCX 900 Digital Input Fan1 CENTRALPLANT TOWER SCX 900 Form C Output SCX 900 Fan2 CENTRALPLANT TOWER Form C Output Fan3 CENTRALPLANT TOWER SCX 900 Form C Output Infinity Controller Programmer’s Guide 11-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 422 Below are some statements that define local variables. Note Always remember to define local variables at the top of the program! If you try to define them anywhere else in the program, the program does not run. 11-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 423: Numeric Variables

    • The name that follows is a variable that accepts a string of characters. You can also use STRING to define several string variables at once: STRING WARNING1, WARNING2, WARNING3 Infinity Controller Programmer’s Guide 11-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 424 You Can Make Variables You can form a datetime array with DATETIME by putting Be Arrays the number of items in the array in square brackets after the name: DATETIME DOWNTIME [10] 11-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 425 • When you define a local variable, you can make it an array by putting the number of items in square brackets after the name. • You can give a length to a string variable. You Can Give Length for String Infinity Controller Programmer’s Guide 11-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 426 SET ERRORMSG[2] = "Five to ten errors have occurred." SET ERRORMSG[3]="Twelve or more errors have occurred. |7" 1 1. The vertical bar and 7 indicate an ASCII code for a beep. See Appendix A of the Andover Controls Plain English Language Reference for more on ASCII codes. 11-8 Infinity Controller Programmer’s Guide...
  • Page 427 • The ERRORS system variable contains the number of errors that have occurred in the controller system. • You can create a local string variable to contain text or a message. Infinity Controller Programmer’s Guide 11-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 428 • All of this prints to a terminal called SCREEN1 and to the status bar (indicated by the STATUSBAR attribute). 11-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 429 • In STAT.BAR you put a statement that tells what to print to the status bar. • To direct the PRINT statement to the status bar, you use TO SCREEN1 (the terminal name) STATUSBAR. Infinity Controller Programmer’s Guide 11-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 430 The values must begin with 1 and increase by 1 (increment). BASEDON..GOTO is most useful with the system variables that increment, WEEKDAY, HOUR, MINUTE, and similar values that increment, such as the ERRORS system variable. 11-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 431 ’Triggered by ERRORS System Variable BASEDON TERM1 ERRORS GOTO MSG1, MSG2, MSG3 LINE MSG1 RUN MESSGPROG STOP MSG.REPT LINE MSG2 RUN MESSGPROG2 STOP MSG.REPT LINE MSG3 RUN MESSGPROG3 STOP MSG.REPT Infinity Controller Programmer’s Guide 11-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 432 LINE REPT3 RUN MEMORY.REPT STOP DAILY.REPT LINE REPT4 RUN COMM.REPT STOP DAILY.REPT LINE REPT5 RUN MESG.REPT STOP DAILY.REPT LINE REPT6 RUN HUMID.REPT STOP DAILY.REPT LINE REPT7 RUN WEEKLY.REPT STOP DAILY.REPT 11-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 433 Appropriate Line to the first line listed after GOTO, if it is 2 goes to the second, if it is 3 goes to the third, and so on. Infinity Controller Programmer’s Guide 11-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 434 Since you would have to turn off the other two fans if you turned on one, you could incorporate that action in the same line. You would also then go back to check the FANTIME value once more. 11-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 435 TURN OFF Fan2 AND Fan3 GOTO FANTIMECK LINE TFAN2 TURN ON Fan2 TURN OFF Fan1 AND Fan3 GOTO FANTIMECK LINE TFAN3 TURN ON Fan3 TURN OFF Fan1 AND Fan2 GOTO FanTimeCk Infinity Controller Programmer’s Guide 11-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 436 After you set up the variable, you write lines to set the timestamps equal to the DATE system variable: IF Fan1ST IS ON THEN SET TIMER1 = DATE ELSE SET TIMER2 = DATE 11-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 437 This kind of difference between a date and time always gives the result in seconds, no matter how large the difference. This technique is simple and direct, and useful as long as you want seconds. Infinity Controller Programmer’s Guide 11-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 438 The program triggers again when the fan status changes back to ON and the first timer is set to the new DATE. The process continues with each change in fan status. 11-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 439 If the fans are on the same controller, you can change the names of the copies of the program to FAN2.TIMING and FAN3.TIMING. Infinity Controller Programmer’s Guide 11-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 440 2. Sets LOGPOS equal to 1. 3. Prints the mixed air temperature for the LOGPOS equal to 1. 4. Repeats step 3 for the next log position, where LOGPOS equals 2. 11-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 441 Because the LOGPOS is neither an input nor an output, it need not even be a point. It can, instead, be a “local variable.” Remember, local variables are known only to the program you use them in. Infinity Controller Programmer’s Guide 11-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 442 Check Tools BLDG1 FLOOR1 MIXED.REPT ’Triggered by WEEKDAY NUMERIC LOGPOS LINE MIXTEMP.REPT PRINT "The Mixed Air Temperatures for |*", DATE FOR LOGPOS = 1 TO 96 PRINT MixedAirT[LOGPOS] NEXT LOGPOS 11-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 443 You Can Use FOR..NEXT • Even with a loop built into a program, the program can still in FallThru Program be FallThru if it should end after all actions have occurred. Infinity Controller Programmer’s Guide 11-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 444 FOR Element = 1 TO 24 TOTAL = TOTAL + TEMPLOG[Element] NEXT Element AverTemp = TOTAL / 24 The program then finds the average as follows: AverTemp = TOTAL / 24 11-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 445 Notice how the second loop is indented inside the first. Before you proceed to analyze how the loops work, you need to look more closely at exactly what the loops are trying to calculate. Infinity Controller Programmer’s Guide 11-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 446 Before the loop, you set STARTQUARTER to 0, as follows: StartQuarter = 0 When the action begins, the outside FOR..NEXT loop sets ENDQUARTER to 6 the first time it loops. 11-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 447 FOR Element = (StartQuarter + 1) to EndQuarter Total = Total + TempLog[element] NEXT Element AverTemp = Total/6 PRINT "Ave Temp is |##.##", AverTemp Set StartQuarter = EndQuarter NEXT EndQuarter Infinity Controller Programmer’s Guide 11-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 448 ENDQUARTER using STEP. STEP indicates how much the outside loop should “count by.” In this case STEP 6 indicates that the loop should add 6 to the value of END- QUARTER, so it becomes 12. 11-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 449 ENDQUARTER once more, so it becomes 12 this time. The third time through the loop, the process repeats, with ENDQUARTER set to 18 and STARTQUARTER set to 12. Infinity Controller Programmer’s Guide 11-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 450 Total = Total + TempLog[Element] NEXT Element ENDIF If you want to add the temperature to the total only if the tem- perature is not more than 3 degrees away from setpoint, you 11-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 451 • You can put a FOR..NEXT loop inside an IF..THEN statement. • You can put an IF..THEN statement inside a FOR..NEXT loop. Infinity Controller Programmer’s Guide 11-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 452 IF statement with ENDIF. WHILE loops are most useful in working with data files. For an example of WHILE with a data file, see Chapter 13. 11-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 453 WHILE the TRUE-FALSE comparison is TRUE. • A WHILE loop always ends with ENDWHILE. WHILE Loops Always End with ENDWHILE • WHILE loops are useful in working with data files. Infinity Controller Programmer’s Guide 11-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 454 NUMERIC ROOM FOR ROOM = 1 TO 30 IF VAVSpace.AVG[ROOM] >= VAVSpace.SP + 2 THEN SET STORE.RM = ROOM PRINT "ROOM |##’s temp exceeds the setpoint",STORE.RM BREAK ENDIF NEXT ROOM 11-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 455 • You break out of a loop before it is complete using the BREAK keyword. • BREAK exits the loop and takes the controller to the next consecutive statement. • You can use BREAK with FOR..NEXT, WHILE, or REPEAT..UNTIL loops. Infinity Controller Programmer’s Guide 11-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 456 30-minute sliding window: DEMAND = CONV.CONST * KWH.Pulses * .001278 * 3600 + ((1 – (SCAN * .001278)) * DEMAND) The DEMAND is the total number of kilowatts. 11-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 457 “sliding window.” As you slide the window up the continuum, you add new scans and remove “old” scans. Figure 11-15. 30-Minute Sliding Window Scans of Time Sliding Window for 30-Minute Interval Infinity Controller Programmer’s Guide 11-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 458 • You multiply this total length of all scans in the interval by the present DEMAND to give the new DEMAND. 11-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 459 30-minute interval. Summary • SCAN measures the length of the last scan interval. You Can Use SCAN in • You can use SCAN in a variety of HVAC calculations. Many Calculations Infinity Controller Programmer’s Guide 11-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 460 The various pieces of the date and time are now separated, so you can print them in a report that does not require both date and time together. You can use any of the datetime system variables, except, of course, DATE. 11-42 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 461 SET DOMSTAMP = TIMEPIECE(DOM, TIMER1[NUM]) SET YEARSTAMP = TIMEPIECE(YEAR, TIMER1[NUM]) SET TODSTAMP = TIMEPIECE(TOD, TIMER1[NUM]) PRINT MONTHSTAMP; PRINT " "; PRINT DOMSTAMP; PRINT ", "; PRINT YEARSTAMP PRINT " "; PRINT TODSTAMP NEXT NUM Infinity Controller Programmer’s Guide 11-43 Technical Manuals Online! - http://www.tech-man.com...
  • Page 462 MORNING.WARM Filesize = 101 The program requires 101 bytes. If you have enough room in memory, you can continue to add to the program. 11-44 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 463 If you run into a problem with a program and call the Andover Controls customer support office, you may be asked the ver- sion of Infinity CX that is running on your controller. If you do not know which version is on the controller, go to...
  • Page 464 Advanced Keywords 11-46 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 465 Chapter 12 Defining Your Own Functions This chapter covers the following topics: • Understanding Categories of Keywords—Including Functions • Understanding the Purpose of Functions • Determining You Need a Customized Function • Creating a Function File • Setting Attributes of a Function File •...
  • Page 466 Understanding Categories of Keywords—Including Functions Keywords Belong in Every word in the Andover Controls Plain English language Categories is a keyword. Keywords can also be particular types. The types and some examples of each are as follows: • Statements—Action words such as MOVE, TURN, PRINT, GOTO that tell the controller to do something •...
  • Page 467 MAXIMUM function: PRINT THE MAXIMUM (Room1Temp, Room2Temp) Summary • All Andover Controls Plain English words are keywords. Statements Can Contain Other Keyword Types • Statements are action keywords that you use to form program statements.
  • Page 468 Chapter 8. Other functions are for looking up values in data files (see Chapter 13), still others for advanced math and advanced string functions (see Chapter 18). 12-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 469 • We say a program “calls” a function. • We say a function “returns” a result. • The controller has many types of predefined functions, some data file, some mathematical, and some string functions. Infinity Controller Programmer’s Guide 12-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 470 2. Define the values you want to bring in to the task or calculation. 3. Define the values you want the task or calculation to return. After that you proceed just as you would to write a program. 12-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 471 • Before you write a function, you must: • Define the task or calculation. • Define the values you want to use. • Determine the values you want to return. Infinity Controller Programmer’s Guide 12-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 472 The cursor is in the Name text box. You press the NEXT ATTRIBUTE key to move from text box to text box. (Press the PREVIOUS ATTRIBUTE key to move backwards.) 12-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 473 The name can have up to 16 characters and must begin with a letter of the alphabet. You can include underscores, periods, and numbers in the name. 2. Press the EXECUTE key to proceed. Infinity Controller Programmer’s Guide 12-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 474 Remember, this name becomes the keyword you later use to call the function. See previous page for characters allowed. 2. Description—Type one in the text box if you want. It is optional. 12-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 475 • You can move to the editor with the SAVE button, or press the EXECUTE key or SAVE key. • You can cancel or delete the function using the CANCEL or DELETE buttons. Infinity Controller Programmer’s Guide 12-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 476 You would then use a nested IF to select the time for Monday through Friday: IF WEEKDAY IS MON THRU SAT THEN IF WEEKDAY IS MON THRU FRI AND TOD IS ~ 800 THRU 1900 THEN SET OCCUPIED TO ON 12-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 477 RETURN RETURN carries out two actions: • Returns the controller to the calling program. • Brings the value you designate to the calling program. Infinity Controller Programmer’s Guide 12-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 478 Calling the Function from a Program The programs that call OCCUPANCY may include one of the following statements: IF OCCUPANCY() IS ON THEN... IF OutsideAir < 40 AND OCCUPANCY() IS ON THEN... 12-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 479 The same is true in a program statement— parentheses are not required if the function is the first word in a statement, even after THEN or ELSE. Infinity Controller Programmer’s Guide 12-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 480 TURN ON THE HWPump1 IF OCCUPANCY() IS ON THEN SET THE HWsetpt TO 130 ELSE SET THE HWsetpt TO 100 IF THE OutsideAir > 50 AND TM > 3 THEN GOTO NOTHEATING 12-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 481 • You cannot use LINE or GOTO in a function. GOTO in Functions • Every function must use the RETURN keyword to: • Return to the calling program. • Bring the resulting value (if any) to the calling program. Infinity Controller Programmer’s Guide 12-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 482 Figure 12-6 shows a calling line in a program. Figure 12-6. Calling Program Line for TESTING Function File Edit Search Check Tools CENTRALPLANT CALLINGPROG SET RESULT TO TESTING(OutsideAir[1], OutsideAir[2], OutsideAir[3]) 12-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 483 With NUMERIC, you can define more than one local variable in one statement: NUMERIC RESULT1, RESULT2 The keywords you need in addition to ARG and NUMERIC are SET and RETURN. Figure 12-7 shows an entire function file. Infinity Controller Programmer’s Guide 12-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 484 Usually, you write more complex functions, such as the stop- start function in the next section. You use the same elements in every function that receives arguments or requires calculations. 12-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 485 ARG[1], the second to ARG[2], the third to ARG[3], and so on. • You can name variables in a function that are not arguments. You use NUMERIC, STRING, and DATETIME to name variables. Infinity Controller Programmer’s Guide 12-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 486 OCCUPANCY function. Or you could have a point called OCCUPIED. Caution Do not use recursive functions when programming Infinity. If you use a point to determine occupancy instead of calling a function, you can trigger the new function based on occupancy.
  • Page 487 OCCUPIED. This function is simple, yet versatile. You can use it in a variety of programs to avoid reprogramming similar actions. Infinity Controller Programmer’s Guide 12-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 488 Defining Your Own Functions 12-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 489 Chapter 13 Creating, Using, and Searching for Data in Files This chapter covers how to create and write to a data file, read one to write a report, and how to look up facts in data files with a function called LOOKUP: •...
  • Page 490 Each field in any data file is defined by assigning it a type. (As with a point, the type can be NUMERIC, STRING, or DATETIME.) The first field is designated by the first 13-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 491 You can refer to any particular piece of data in the file by the record number for the row and the field name or column number for the column. Figure 13-3 points out a single piece of data in the file. Infinity Controller Programmer’s Guide 13-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 492 It is convenient that Zone 5 is in the fifth record. But that is more than mere coincidence. You can set up a file in a way that makes it easy to use. 13-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 493 • A program that accesses a data file must be located on the same controller as the data file. You cannot retrieve data from a data file on another controller. Infinity Controller Programmer’s Guide 13-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 494 SATURDAY, with a length of 9. Remember that even though the days of the week have names, they are still understood as numbers. • A numeric field for the average OAT, with a length of 4. 13-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 495 NUMERIC DAY.WK 9 NUMERIC OATAVG 4 NUMERIC TEMPAVG 4 NUMERIC DEWPTAVG 4 STRING EXCEED 8 7. Press the CANCEL WINDOW key to return to the File menu bar and select Check. Infinity Controller Programmer’s Guide 13-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 496 Next, you must write a program to calculate the values and put (“write”) them into the file. The next section explain how to fill the file from a program. 13-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 497 • After you check for errors, save, and close the data file, when you reopen it, the “empty” fields are displayed with blanks for strings, zeros for numbers, and 1/1/89 12:00:00 am for datetimes. Infinity Controller Programmer’s Guide 13-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 498 3 with the value of TEMPAVG, field 4 with the value of DEWPTAVG, and field 5 with EXCEEDED or BELOW. The statement also tests the WRITE to see if it returns SUCCESS. 13-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 499 This data is written into the file over a period of a week. Each day the same action must take place. Figure 13-6 shows the program. It should be triggered by WEEKDAY changing. Infinity Controller Programmer’s Guide 13-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 500 The program triggers when the day changes. When the HOUR is equal to 23 (time is after 11:00 p.m.), the controller: • Sets the DAY.WK to the day of the week. • Averages each log (OAT, TEMP, and DEWPT). 13-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 501 If WRITE has filled all the records, the status of the writing process is then EOF. When the status is EOF, the program prints a report called WKLY.AVG.RPT. The report reads the data and prints it out in a particular format. Infinity Controller Programmer’s Guide 13-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 502 In addition, you can have numeric fields containing ON, OFF, –ON, SUCCESS, FAILURE, EOF, and any of the months of the year as well as the days of the week. 13-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 503 • A program that accesses a data file must be located on the same controller as the data file. You cannot retrieve data from a data file on another controller. Infinity Controller Programmer’s Guide 13-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 504 We won’t repeat much of that information here. If you do not recognize the formats (shown with pound signs and @ signs in a PRINT statement) used here, refer to the PRINT keyword in the Andover Controls Plain English Language Reference. The program should include: • The title of the report.
  • Page 505 Temperatures (degrees Fahrenheit) Week Average Average Average Outside Indoor Dewpoint 28.2 70.1 27.5 31.1 72.2 30.1 29.8 71.6 28.0 28.5 71.2 26.7 26.7 70.3 24.3 25.1 70.0 23.6 27.6 71.0 25.8 Infinity Controller Programmer’s Guide 13-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 506 A statement that tests WRITE for success is at top of next page. Figure 13-10 shows the complete program, where you must also define the variables. 13-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 507 IF WRITE(DAY.AVGS.90, WRITE.REC, DY.WK, OATS,TEMPS,~ DEWPTS)=SUCCESS THEN PRINT"Writing Record Number ",~ WRITE.REC ELSE PRINT "End of Writing to DAY.AVGS.90 File." ELSE PRINT "End of Reading WK.AVGS File." BREAK ENDIF NEXT REC Infinity Controller Programmer’s Guide 13-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 508 Writing Record Number 16 Writing Record Number 17 Writing Record Number 18 Writing Record Number 19 Writing Record Number 20 Figure 13-12 shows the what DAY.DATA.PROG writes into the DAY.AVGS.90 data file. 13-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 509 29.8, 71.6, 32.0 "WED", 28.5, 71.2, 32.1 The Last Week’s Seven Records Added onto the End of the File. "THU", 26.7, 70.3, 30.5 "FRI", 25.1, 70.0, 28.6 "SAT", 27.6, 71.0, 29.1 Infinity Controller Programmer’s Guide 13-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 510 • Remember that a program that accesses a data file must be located on the same controller as the data file. You cannot retrieve data from a data file on another controller. 13-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 511 LOOKUP returns two pieces of information: • The status of the search—SUCCESS, FAILURE, or EOF. • The number of the record found. (This number replaces the one you originally assigned to RECNUM). Infinity Controller Programmer’s Guide 13-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 512 IF RESULT = SUCCESS THEN PRINT " Average Dewpoint on Tuesday was "; PRINT WK.AVGS [RECNUM].DEWPTAVG, " degrees F." ELSE PRINT "Error in Search of WK.AVGS File." Figure 13-14 shows what DEWPT.FIND prints. 13-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 513 • LOOKUP returns: —The status of the search in a local numeric variable: SUCCESS FAILURE —The number of the record found (stored in the original record number variable). Infinity Controller Programmer’s Guide 13-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 514 1/13/90 12:00:00 pm, 395, "BELOW " The RECORD keyword tells that there are seven records in this file. DATETIME tells us the first field is a datetime type field called DTSTAMP. 13-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 515 After the search has found a record, you can print the date from the first column of that record number. You use the PRINT statement: PRINT USAGE [RECNUM].DTSTAMP This statement prints the date in DTSTAMP for a single record. Infinity Controller Programmer’s Guide 13-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 516 You can alter the program to format the information you print out using any of the formats covered under the PRINT keyword in the Andover Controls Plain English Language Reference. You can also search a file for a string using the selections in the Search menu of the File menu bar.
  • Page 517 • Remember that a program that accesses a data file must be located on the same controller as the data file. You cannot retrieve data from a data file on another controller. Infinity Controller Programmer’s Guide 13-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 518 Data Files 13-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 519 Chapter 14 Debugging Techniques This chapter presents some common techniques for debugging programs—removing all runtime errors. These errors are not the ones that occur when you “check” the program with the Check selection from the File menu bar. These errors occur after you run the program: •...
  • Page 520 The problem could be any of the following: • Sensors • Equipment • Your Andover Controls Plain English program(s) Figure 14-1 shows the three possible sources of a problem. 14-2 Infinity Controller Programmer’s Guide...
  • Page 521 1. Check to be sure the sensors are functioning. Refer to the Andover Controls Infinet Controller Troubleshooting Guide. 2. Check physical output points (relays) in the controller. If a point is ON and the equipment is OFF, then the equipment itself is not working.
  • Page 522 MONTH to trigger a program that must run daily. Obviously, the month changes only every 30 days, but the program needs to start every day. 14-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 523 • Does a program contain errors in logic? Apply the debugging techniques later in this chapter that help uncover logical and other runtime errors. Infinity Controller Programmer’s Guide 14-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 524 COOLING is often running well into the night. 4. Change the FLOWTYPE of the program to looping for testing. This way the program runs continuously rather than waiting to be triggered. 14-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 525 OCCUPIED is on, so the program tests the SPACETEMP. SPACETEMP is high enough to start the COOLING, so the COOLING starts. The controller ignores the ELSE statement. To explore the problem, you can try setting the point values. Infinity Controller Programmer’s Guide 14-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 526 OCCUPIED is OFF and the temperature is 76. Although OCCUPIED is OFF, COOLING remains ON. So SPACETEMP controls the COOLING, even when the space is not occupied. No wonder COOLING was ON at 10 p.m.! 14-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 527 Statement use AND between them in the same IF..THEN statement: IF OCCUPIED AND SPACETEMP > 75 THEN START COOLING ELSE STOP COOLING ENDIF Always be wary of nested IF statements. Infinity Controller Programmer’s Guide 14-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 528 PR OCCUPIED, SPACETEMP, COOLING, COOLCONTROL STATUS 3. Set the point value you want to test from the command line. 4. Run the debugging function as many times as necessary to resolve the problem. 14-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 529 COOLING = ON R>SET OCCUPIED = OFF R> RUN COOLCONTROL R>CHBUG OCCUPIED = OFF SPACETEMP = 76 COOLING = ON The function prints the point values in the Command window. Infinity Controller Programmer’s Guide 14-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 530 When the COOLING is eventually on, the program stops itself. All data from PR goes to the Messages window. 9. Put the program last on the firing order list. 10. Run the debugging program. 14-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 531 12. Close and reopen the Messages window to see updates of the program activity. The Messages window can hold up to 48 physical lines of data unless you reset it. Infinity Controller Programmer’s Guide 14-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 532 (You can use either DATE or TIME, since each prints the full date and time.) Figure 14-9 shows how you would alter the HEAT.NOHEAT program to print the current line whenever the program runs that line. 14-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 533 IF THE OutsideAir > 50 AND TM > 3 THEN GOTO NOTHEATING 2. You can also add PR statements to print each point value Add PR Statements to a Program after any statement that may change that point value. Infinity Controller Programmer’s Guide 14-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 534 3. Open the Messages window as described in Chapter 9. See PR Results in Message Window Here you see the results of PR statements from programs. Figure 14-10 shows the messages from HEAT.NOHEAT that print in the window. 14-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 535 START.BURNER is because the OUTSIDEAIR drops below 50 degrees. 4. Close and reopen the Messages window to see updates of the program activity. The Messages window can hold up to 48 physical lines. Infinity Controller Programmer’s Guide 14-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 536: Status Bar

    STATUSBAR (or to the terminal name you changed COMM3 to, such as SCREEN1). Figure 14-11 , for example, shows a formatted PRINT statement that would print point values from HEAT.NOHEAT. 14-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 537 Or you can modify it to debug the next program. Now that you have seen some debugging techniques, you are ready to debug some sample programs. Infinity Controller Programmer’s Guide 14-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 538 If BoilerPSI < StmSetpt – 0.5 and TM > 3 THEN GOTO RunningHiFire RunningHiFire: Turn ON BlrStage1, BlrStage2 If BoilerPSI > StmSetpt + 0.25 and TM > 3 then goto BeginningStage1 14-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 539 If you use a debug program on it, you find that the OUTSIDEAIR point is updating as follows: 63, then 62.5, then 62, and so on. Each time, OUTSIDEAIR Infinity Controller Programmer’s Guide 14-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 540 Notice that the WAIT line tests to see if BOILERPSI is below setpoint by half a pound and if 30 minutes have gone by. If nei- ther of these has happened, the program goes back to STARTUP. 14-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 541 Wait: IF BoilerPSI < StmSetpt – 0.5 AND TM > 30 THEN goto BurnHiFire BurnHiFire: Start BoilerStage2 If BoilerPSI > StmSetpt + 0.25 AND TM > 10 THEN GOTO StartUp Infinity Controller Programmer’s Guide 14-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 542 The valve remains open until the program leaves the line and the 5 seconds can elapse. The only way to repeatedly pulse the valve is to add another line that resets it to OFF. 14-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 543 Otherwise, you would have ELSE after TS, which would make the controller go to WITHINLIMIT every time. (Under WITHINLIMIT the program uses a user-defined function called VALVESET that is like a PID loop.) Infinity Controller Programmer’s Guide 14-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 544 The controller goes to the unlabeled line that sets the constants KP, KI, and KD for the VALVESET function. What happens next? The controller never leaves that line because no GOTO 14-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 545 GOTO HiLimitCheck ENDIF You could also label the first line so its name appears in the program summary, but if you do not, Infinity interprets it as an implied line. Occasionally you may experience a situation where an error occurs that is unavoidable—such as being unable to retrieve a point value because the controller is off-line.
  • Page 546 Current Line Start 10/30/93 10:01 AM File Size Program Status Active But how do you know where the error occurred? You can employ another form of tracing along with LINE E. 14-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 547 IF THE Building 1 OutsideAir Value < 50 THEN GOTO START.BURNER ELSE TURN OFF the Building1 Burner TURN OFF the Building1 HWPump1 CLOSE the Building1 HWP1ISOValve CLOSE the Building1 CONVRTR.PRGM ENDIF Infinity Controller Programmer’s Guide 14-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 548 LINE E: If Action = Adjusting Then If TS > Building1 ProbeTime Then Goto Adjusting Endif If Action = NotHeating Then If TS > Building1 ProbeTime Then Goto NotHeating Endif 14-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 549 ’sets Burner To High Open The Hwp1ISOValve Turn On The HWPump1 If The Weekday Is Not Sunday Then Endif If The Building1 OutsideAir Value > 50 and TM > 3 Then Goto NotHeating Infinity Controller Programmer’s Guide 14-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 550 Program with LINE E Since adding the statements that set ACTION and TIMELINE is repetitious, you may want to put them into a function called DEBUGINFO to avoid repeating them in the program. 14-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 551 In both of these cases LINE E can keep the program running. Infinity Controller Programmer’s Guide 14-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 552 Debugging Techniques 14-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 553 Chapter 15 Programming the DCX Screen Your Infinity CX 9000 controller may have a 4.9 × 4.2 inch liquid crystal display (LCD) screen in the upper right front door of the cabinet. This screen is the DCX 250. You may also have a DCX 250 located elsewhere in the building, connected to the control system via Infinet.
  • Page 554 (user) to change the point value through the control; for example, turn the knob to set a temperature. Buttons Buttons are graphics you can press (with your finger) to do one of the following: 15-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 555 You can have up to 24 graphic controls on a single DCX 250 dis- play at one time. The next section covers how you can place predrawn controls on the DCX 250. Infinity Controller Programmer’s Guide 15-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 556: Clear Screen

    (such as the screen color) and system vari- ables (more later) set to their current values. You give the word alone, as follows: CLEARSCREEN You can use CLEARSCREEN only in a program, not on the command line. 15-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 557: Turn On The Backlight

    1. Because the background light has a limited life span, always turn off the background light within minutes of turning it on. Never leave it on for pro- longed periods. Infinity Controller Programmer’s Guide 15-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 558 Determining Location on the Screen To give the location of the button on the screen, you tell Infinity the position of the lower left corner of the button, then the upper right corner. How? Picture the screen covered by hundreds of tiny dots.
  • Page 559 DCX Screen Telling Infinity to Display the Control To display a button control (Control Style 1) in the approxi- mate center of the screen, you enter the information you have collected with the CONTROL keyword. The format for the CONTROL keyword is as follows:...
  • Page 560 Try altering the left, bottom, right, and top values to see how they change the shape and size of the button. This control style (1) and Control Style 2 must be a minimum (in line points) of 40 wide by 25 high. 15-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 561 For control styles 1 and 2, you cannot give a frame style (see end of Appendix C), because the frame is automatically included with the control. If you give a frame style, Infinity ignores it. Other Arguments for CONTROL Notice that the direction, bottom and top of scale, tickmarks,...
  • Page 562 The control is then horizontally centered within the space you have defined. If the control cannot display in the space you give, Infinity dis- ables the file; you can then find the error message in the File Configuration window.
  • Page 563 “cells” or “touch cells.” Figure 15-6 (on the next page) shows where the cells are on the screen. Infinity can sense when you have touched one of these cells. You must position the control so that it can use these cells.
  • Page 564 The rule applies as long as you want the operator to have the option of setting the control. If you set that argument to FALSE, the arrows do not appear. 15-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 565 For any button or switch control (Control Styles 1, 2, 3, 4, 5) you Assume ON/OFF do not have to set a top and bottom of scale. Infinity automatical- ly sets them to ON and OFF for a digital point or to the two values of a digital attribute, such as ENABLED and DISABLED for STATE.
  • Page 566 DCX Screen If you do not give a top and bottom of scale, Infinity assumes ON and OFF or other digital values. For Control Styles 8, 9, and 10, you must give a top and bottom of scale unless you assign it to a digital point or attribute.
  • Page 567 The point the knob controls is on the FLOOR1 Infinity CX and the ROOM2 Infinet controller. You want the knob to be in frame style 3 and to title the knob with the name of the point, AIRFLOW.
  • Page 568 DCX Screen This style control is always one size. When you give the left, Infinity Automatically bottom, top, and right, Infinity automatically centers the con- Sizes Knob trol in the area you designate, as long as the center of the knob is at least 30 line points away from any edge of the screen.
  • Page 569 CONTROL (6, 10, 10, 310, 190, TRUE, FLOOR1 ROOM2 AirFlow,~ "AirFlow", 3, , 60, 180, 7, 6, "###") Figure 15-9 shows how the control looks. Figure 15-9. Air Flow Control with Complete Scale AirFlow Infinity Controller Programmer’s Guide 15-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 570 The left, bottom, right, and top values position the frame so its lower left corner is at 50, 50 and its upper right at 280, 180. The control appears sized and centered within the frame (Frame Style 4, later). 15-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 571 Figure 15-12 shows how the frame style appears alone. The extra comma after the 4 indicates you are leaving out an ar- gument—the direction. The direction does not apply to gauges. The gauge always turns clockwise. Infinity Controller Programmer’s Guide 15-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 572 180 settings (one for each degree around the portion of the cir- cle the gauge is composed of). Figure 15-12. Frame Style 4 without a Control Title 15-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 573 225. You can set the needle to one of those values. “###” is the format for the numbers around the gauge, three digits. Now, let’s see how to place a text control on the DCX 250. Infinity Controller Programmer’s Guide 15-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 574 Control Style 13 to display a date and time in the standard format. When Infinity displays a value in a text control (other than a datetime), the value displays in the format for the point (from the Point Details window) that the control represents.
  • Page 575 The 60 is the bottom of scale, the 90 the top. Figure 15-14. Display of Value Bar with Raised Arrow Buttons (Control Style 9) Setpt Room 2 72.5 Infinity Controller Programmer’s Guide 15-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 576 The 60 is the number of steps (one for every 0.5 degree between 60 and 90). If you do not include a number of steps, Infinity as- sumes 1 step, the number of steps for a digital control. But one step is not useful in this situation, because the one step would go from the bottom of scale to the top and vice versa.
  • Page 577 DCX Screen When you alter the area for a this control, Infinity sizes its height and width fit the area. Figure 15-16 shows how the slider control appears in the DCX 250 screen. Compare this to the appearance of the sample Control Style 12 in Appendix C.
  • Page 578 2. Imagine the line on the DCX screen or draw it out on a grid. Figure 15-17 shows where the line should be and the line points on either end. 15-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 579 DRAWLINE 40, 25, 100, 125 Be sure to put commas between the numbers. 5. Now press the RETURN key to complete the statement. When you run the program, the line appears on the DCX. Infinity Controller Programmer’s Guide 15-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 580: Drawing A Rectangle

    Figure 15-18 shows where the rectangle should be and the line points in the lower left and upper right corners. Figure 15-18. Line Points at Corners of Rectangle Upper Right Corner (190, 75) Lower Left Corner (40, 40) 15-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 581: Drawing An Ellipse

    Do not press the RETURN key yet. Figure 15-19 shows where the ellipse should be and the line points in the lower left and upper right corners of the imaginary rectangle that surrounds it. Infinity Controller Programmer’s Guide 15-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 582 Ellipse Appears on the When you run the program, the ellipse appears on the DCX. DCX Screen You can use the ellipse as a button or make it a part of another drawing. 15-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 583: Displaying Text

    Building1 Temperatures Lower Left Corner (50,190) The text you print with PRINT is not a control; you add it so the controls on the DCX 250 are easier to use. Infinity Controller Programmer’s Guide 15-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 584 NOFILL does not make a series of lines a filled graphic. You can set one attribute at a time or a list of them, as illustrated in the following examples: SETDISPLAY (BLUE) 15-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 585 If you were to draw a polygon (solid object), you would set the display to FILL instead of NOFILL. 2. Open the block with BEGINPOLYLINE. 3. Name the line point you want the line to start at: LINEPOINT 10, 10 Infinity Controller Programmer’s Guide 15-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 586 Check Tools FLOOR1 DISPLAY1 EDGE.DR CLEARSCREEN TURN ON THE BACKLIGHT SETDISPLAY NOFILL BEGINPOLYLINE LINEPOINT10, 180 LINEPOINT 30, 200 LINEPOINT 50,180 LINEPOINT 70, 200 LINEPOINT 90, 180 LINEPOINT 110, 200 ENDPOLYLINE 15-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 587 DCX Screen Figure 15-22 shows the polyline the program draws. Figure 15-22. Polylines on the DCX Screen Infinity Controller Programmer’s Guide 15-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 588 6. Repeat the last step until you have entered all the line points you want connected. The last line point should be the same line point you started with. 7. Close the block with ENDPOLYLINE. 15-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 589 LINEPOINT 300, 155 LINEPOINT 310, 180 LINEPOINT 20, 180 LINEPOINT 10, 155 LINEPOINT 20, 130 LINEPOINT 70, 130 LINEPOINT 70, 100 LINEPOINT 10, 100 LINEPOINT 20, 75 LINEPOINT 10, 50 ENDPOLYLINE Infinity Controller Programmer’s Guide 15-37 Technical Manuals Online! - http://www.tech-man.com...
  • Page 590 You could enter ellipses and rectangles to form the fans. You would change the display settings to WHITE and FILL for each fan. You could then use LOCATE and PRINT to display the names of the fans. 15-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 591 You can then create a customized response to each. But first you must determine how to read an operator response—using the TOUCHED- CELL system variable. Infinity Controller Programmer’s Guide 15-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 592 Figure 15-26. DCX 250 LCD Screen Touch Cell Grid The DCX stores the number of the cell in a system variable called TOUCHEDCELL. If you have touched the screen, you 15-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 593 6. Now add statements to the program that test to see if the button has been pressed, as follows: IF TOUCHEDCELL IS IN 42, 43 OR 44 THEN... Infinity Controller Programmer’s Guide 15-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 594 Figure 15-27. TOUCHTEST Program—Looping File Edit Search Check Tools FLOOR1 DISPLAY1 AHU.DRW IF TOUCHECELL IS IN 43, 44, 45 or 46 THEN CLEARSCREEN() 15-42 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 595 PRINT "Press Here" LOCATE 100, 60 PRINT "To Acknowledge" You could also set the TOUCHTEST program up as fallthru TOUCHTEST Can Be FallThru and Triggered and have TOUCHEDCELL trigger it. Infinity Controller Programmer’s Guide 15-43 Technical Manuals Online! - http://www.tech-man.com...
  • Page 596 LOCATE 100, 70 PRINT "Acknowledge" SET AUDIOBELL = 18000 ELSE STOP ALM.MSG Figure 15-30 shows the program that turns off the beep when you press ACKNOWLEDGE. It also clears the screen and 15-44 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 597 Turn off Beep—FallThru and Triggered by TOUCHEDCELL File Edit Search Check Tools FLOOR1 DISPLAY1 ALM.MSG IF TOUCHEDCELL = 43, 44, 45, or 46 THEN CLEARSCREEN TURN OFF AUDIOBELL CLEARSCREEN TURN OFF BACKLIGHT ENDIF Infinity Controller Programmer’s Guide 15-45 Technical Manuals Online! - http://www.tech-man.com...
  • Page 598 76. Once the temperature is no longer greater than 76, the pro- gram stops. When the TEMP point value changes, it triggers the program. 15-46 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 599 Checking line, where it again checks the temperature. If the temperature remains 76 or lower, the pro- gram then clears the screen and stops the program. Infinity Controller Programmer’s Guide 15-47 Technical Manuals Online! - http://www.tech-man.com...
  • Page 600 ELSE GOTO Checking LINE BlinkOn SETDISPLAY (WHITE) LOCATE 60, 100 PRINT "Temperature Too High in Lobby" IF TS > 1 and TEMP > 76 THEN GOTO BlinkOff ELSE GOTO Checking 15-48 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 601 Chapter 16 Programming Modules, ReaderDoor Outputs, and Lighting Controllers This chapter covers the various aspects of programming the EMX 170 module, the EMX 190 with ReaderDoor outputs, and the LCX 890 lighting controller: Note You should program your ACX 700 using the access control information in Chapters 21 through 23.
  • Page 602 OFF if not. Operator must hold the button down for it to be ON. Figure 16-1 shows the locations of buttons 1 through 6. Figure 16-1. Locations of Buttons on EMX 170 16-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 603 The first statement assigns DISPLAYMSG the word Setpoint and then the next line displays the message. Once Infinity scans the DISPLAYSELECT statement, the message displays within 0.5 seconds. The display remains on the LCD until you direct the EMX 170 to display something else or to erase the LCD.
  • Page 604 You can also reverse the order of these steps, just as you can with displaying a message. If you have already set DISPLAYSELECT to ShowDisplayValue and have not changed it, you can simply change the 16-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 605 Displaying the Space You can display the input temperature in one statement—you Temperature set the DISPLAYSELECT attribute to ShowSpaceTemp, and the temperature displays within 0.5 seconds: SET SPACE DISPLAYSELECT = ShowSpaceTemp Infinity Controller Programmer’s Guide 16-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 606 For instance, SET DISPLAYSELECT = ShowSpaceTemp is not a correct statement. You must enter: SET SPACE DISPLAYSELECT = ShowSpaceTemp 16-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 607 If no one has pressed the button, the button is OFF and the TRUE-FALSE comparison is FALSE. In the next section, you write a sample program employing the EMX 170 sensor attributes. Infinity Controller Programmer’s Guide 16-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 608 3. After the elapsed time is 6 seconds (guaranteeing the message displays for at least 5.5 seconds), set the DISPLAYSELECT attribute to ShowSpaceTemp. 4. Display the temperature until an operator presses another button. Figure 16-2 shows the program statements. 16-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 609 LINE TempDisplay SET SPACE DisplaySelect = ShowSpaceTemp IF SPACE Button4 THEN GOTO ButtonTest Infinity displays the temperature until the operator presses another button. What happens when you press the other buttons? With a few simple modifications, you can test for any button pressed, set the mode in the first line, then go to a line that displays the appropriate information for that button.
  • Page 610 SET SPACE DisplayMsg = "Setpt = " SET SPACE DisplaySelect = ShowMessage IF TS >5 THEN GOTO SPDISPLAY LINE SetPtDisplay SET SPACE DisplayValue = SETPTTEMP SET SPACE DisplaySelect = ShowDisplayValue GOTO ButtonTest 16-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 611 You could also use the EMX 170 buttons as arrows. This way, you could have an entire menu of selections and arrow your way up and down the menu. In the next section, you write a program to do just that. Infinity Controller Programmer’s Guide 16-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 612 Temp appears. If you are on Occupied and press the up arrow, Weekday should appear. This works like many menus you have seen, except that you see only one menu choice at a time. 16-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 613 If you entered this line, it would not work. Why? When you press a button on the EMX 170, because the scan is so fast, the button remains ON for more than a single scan. So, Infinity interprets one press as two or three presses.
  • Page 614 Although Infinity must know how many times you press the Pressed OK arrow button to add up the correct choice, Infinity does not have to know how many times you press OK or DONE, only that the button has been pressed, period.
  • Page 615 Set Space DisplayMsg = "Weekday" GOTO PressingDone OccDisp: Set Space DisplayMsg = "Occupied" GOTO PressingDone TempDisp: Set Space DisplayMsg = "SpTemp" GOTO PressingDone PressingDONE: IF Space Button5 AND TS > 3 THEN GOTO Starting Infinity Controller Programmer’s Guide 16-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 616 Just be sure you know which way the circuit works be- fore you program it. Since the door switch is an attribute of a point, rather than a point, to invert ON and OFF, you have to write a function. 16-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 617 Updates every 100 ms. READERLED Sets the color of the light emitting diode (LED) on the card reader; red when OFF, green when ON. Updates every 100 ms. You can set this value. Infinity Controller Programmer’s Guide 16-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 618 IF FRONTDOOR SITECODE IS 10 THEN... IF FRONTDOOR EXITREQUEST IS ON THEN... PR FRONTDOOR OVERRIDE PR FRONTDOOR OVERRIDEVALUE If you enter the attribute without the door name, Infinity does not understand it. 16-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 619 Building1. First, you set up a ReaderDoor output on an EMX 190 module. Name the output DOOR1. (You cannot name the door simply DOOR, because that is a reserved word. For more reserved words, see Appendix E of the Andover Controls Plain English Language Reference.) Checking the Access Card...
  • Page 620 You could also turn on the card reader LED when you open the door, as follows: SET DOOR1 ReaderLED TO ON This statement makes the LED flash for one scan. 16-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 621 Door 2 Output Reader 2 Supervisory Supervisory Input Input 3 Input 4 This information applies only to ReaderDoor outputs on EMX 170 modules connected to controllers other than the ACX 700. Infinity Controller Programmer’s Guide 16-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 622 ON. Suppose you want LIGHT1 and LIGHT2 to work together with SWITCH1 turning on the first panel (LIGHT1) and SWITCH2 turning on the second (LIGHT2). SWITCH1 is 16-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 623 SET Light2 TO OFF ’Set to Low Lighting RUN TestingOcc Endif IF Switch1 IS OFF AND Switch2 IS ON OR Switch2 is OFF THEN SET Light1, Light2 TO OFF Endif Infinity Controller Programmer’s Guide 16-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 624 Figure 16-8 shows a sample program that triggers on the OVERRIDE of the FirstLightPanel output. The program sets a timer to monitor and control how long the “momentary” setting remains in place. 16-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 625 Endif CalculatingTime: IF TM > 60 and FLOOR1 ROOM1 IS UNOCCUPIED THEN TURN FirstLightPanel OFF ELSE STOP ENDIF CheckingLightsOff: IF FLOOR1 ROOM1 IS OCCUPIED THEN TURN FirstLightPanel ON ELSE STOP Infinity Controller Programmer’s Guide 16-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 626 Programming EMX Modules 16-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 627 Modem or Setting Up Modem Attached to a Terminal. This chapter covers how to dial a modem and how to send data through the comm port on the Infinity CX 9000. It also covers how to use the modem on an Infinity CMX controller.
  • Page 628 Instead of cabling between them, you use modems to connect them. Once the modems are in place on the Infinity CX 9000 of each building, the controller in building 1 can call to send data, messages, reports, or alarms to the printer in building 2.
  • Page 629 T after ATD if you do not have touchtone dialing.) Figure 17-1. CALL Function File Edit Search Check Tools BLDG1 CALL ARG 1 PHONE.PORT ARG 2 PHONE.NUMBER PRINT "ATDT";PHONE.NUMBER TO PHONE.PORT RETURN Infinity Controller Programmer’s Guide 17-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 630 Comm Port and Modem Functions Using the Modem Dial Function on Infinity CX Controller For purposes of the example illustrated in this section, you should have a string point called ErrorText. In the program, you set this point to a message about the dialing action.
  • Page 631 After it determines the port is open or opens the port, the program must turn on the DTR (Data Terminal Ready) attribute of the port to indicate it wants to access the modem. Infinity Controller Programmer’s Guide 17-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 632 Connecting To see if the modem connects (“answers the phone”) the program checks the CXD (carrier detect) attribute of COMM3: If Comm3 CXD = On Then Print Alarmsg To Comm3 17-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 633 Ringing If Comm3 CXD Is On Then Goto SendMsg If TS is greater than 40 Then ErrorText = "Could not connect to 508/555-1212" Goto ClosingPort Endif Infinity Controller Programmer’s Guide 17-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 634: Handling Errors

    Set ErrorText = "" Now, if you suspect an error has occurred, you can print the ErrorText value at the terminal and see any message the program may have sent to it. 17-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 635 Print AlarmMessage to Comm3 Goto WaitForPrintDone WaitForPrintDone: if Comm3 PrintDone = True then goto ClosingPort 1. This program assumes an Andover Controls UDS modem. Any other modem may require a delay after CXD occurs. Infinity Controller Programmer’s Guide 17-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 636 A more typical program would use a string point for the phone number, so that all you have to do is change the point value to change the phone number. 17-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 637 Set Modem1 Baud = Baud300 Then, after opening the comm port, and completing the tasks on the modem, you must set the BAUD attribute back to its original value: Set Modem1 Baud = ModemBaud Infinity Controller Programmer’s Guide 17-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 638 Comm Port and Modem Functions The same applies to both the PARITY and STOPBITS if you must them for a particular modem. For more on those attributes, see Appendix B of the Andover Controls Plain English Language Reference. Revising the Program for CMX 240...
  • Page 639 • After you use the modem, you must have a line that closes the comm port with CLOSE. • OPEN and CLOSE each require a line that tests to see if the opening or closing process is successful. Infinity Controller Programmer’s Guide 17-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 640 What is different about calling from an CMX rather than an Infinity CX? Here are some of the differences: • Infinity sees the built-in modem on a CMX as the UserPort rather than as COMM3. • To indicate you want to access the modem, you set the UserPort DTR attribute to ON and set the baud to 2400.
  • Page 641 (on the CALLING line): IF UserPort Mode = Raw Then Set Opening to Success Goto Calling Else Opening = Open (UserPort) Endif Infinity Controller Programmer’s Guide 17-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 642 To see if the modem connects, you set up a line called RINGING that checks the CXD (carrier detect) attribute of the UserPort: If UserPort CXD = ON Then GoTo DelayAfterCXD If the controller detects communication signals, CXD is ON. 17-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 643 TS is greater than 40 then ErrorText = "Could not connect to 508/555-1212." goto ClosingPort Endif DelayAfterCxd: if ts is greater than 5 then goto SendMsg SendMsg: Print AlarmMessage to UserPort Goto WaitForPrintDone Infinity Controller Programmer’s Guide 17-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 644 UserPort with a PRINT statement: Print AlarmMessage to UserPort The PRINTDONE attribute of the UserPort becomes TRUE when all characters in the message have been sent: If UserPort printdone = TRUE Then goto WaitForModem 17-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 645: Hanging Up The Modem

    (in quotation marks) and followed by a semicolon: PrepModem: Print "+++"; to UserPort Goto WaitToFinishPrep Now be sure you have sent the string: WaitToFinishPrep: If UserPort PRINTDONE = True then WaitToHangup Infinity Controller Programmer’s Guide 17-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 646: Ending The Program

    Set UserPort Baud to ModemBaud Closing = Close (UserPort) Ending the Program The last line of the program must test to be sure CLOSE is successful and take action if it is not. 17-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 647 Closing = Close(UserPort) EndingProgram: If Closing = Success then stop CMXDialOut Else Print "Could not close port." to ErrorText stop CMXDialOut Endif If the CLOSE function is successful, the program stops. Infinity Controller Programmer’s Guide 17-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 648 Once it is locked open, you cannot access the controller through that terminal. So be careful to thoroughly debug any programs that use OPEN and CLOSE comm port functions. 17-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 649 Chapter 18 Advanced Functions for Experts This chapter lists some advanced functions and operators: • Advanced Math Functions • Advanced Math Operators • Advanced String Functions Technical Manuals Online! - http://www.tech-man.com...
  • Page 650: Advanced Math Functions

    Advanced Math Function Keywords ACOS ASIN ATAN RANDOM ATAN2 ROUND CEILING SQRT EXPONENTIAL STANDARDDEVIATION FACTORIAL FLOOR TRUNCATE Details on these functions are provided in the Andover Controls Plain English Language Reference. 18-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 651 The following math operators are available for advanced users: BITAND BITOR Advanced Math Operator Keywords BITNOT BITXOR Details on these operators are provided in the Andover Controls Plain English Language Reference. Infinity Controller Programmer’s Guide 18-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 652 The following string functions are available for advanced users: Advanced String RIGHT Function Keywords SEARCH LEFT STRINGFILL LENGTH STRTODATE STRTONUM NUMTOSTR Details on these functions are provided in the Andover Controls Plain English Language Reference. 18-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 653 Chapter 19 Loading and Saving Points and Programs This chapter covers the following topics: • Saving Points and Programs to Magnetic Media • Loading Points and Programs from Magnetic Media • Using LOAD Command to Correct Memory Fragmentation Technical Manuals Online! - http://www.tech-man.com...
  • Page 654 The computer should be running a communications package, such as CROSSTALK. (You may also want to consider the helpful hints regarding the firing order list, given in Chapter 9.) 19-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 655 You can also save a particular point or file by including its name: SAVE HEAT.PROG DUMP SupplyAirT Or you could save a list of points or programs: SAVE SupplyAir1, SupplyAir2, SupplyAir3 Infinity Controller Programmer’s Guide 19-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 656 Saving Items on Infinet Save All of Infinet To save all items on the Infinity CX 9000 and all Infinet con- trollers on the Infinet or Infinets connected to it with a definition of each item, include INFINET in the command...
  • Page 657 DUMP INFINET Saving Items on Both EnergyNet and Infinet To save all items on all Infinity CX 9000s and all Infinet con- trollers on all Infinets with a definition of each item, include SITE in the command line: SAVE SITE...
  • Page 658 You must also have a file that has been saved (called a “dump file”) or an ASCII file typed in dump file format. For more on dump file format, see the Andover Controls Plain English Language Reference. Procedure to Load You prepare the computer to send a file to the controller using the communications package commands.
  • Page 659 RELOAD to replace all information in the controller with the information you are loading. • You use the -m (messages) option with LOAD or RELOAD to see messages in the Messages window during loading. Infinity Controller Programmer’s Guide 19-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 660 3. Reload the programs with the LOAD or RELOAD command. LOAD Stores Files More The reload stores the files more compactly in the controller Compactly memory and corrects the fragmentation problem. 19-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 661 Chapter 20 Operating on Battery Backup This chapter covers the following topics: • Reacting When AC Power Goes Down • Writing a Simple Power Down Program • Writing Another Power Down Program • Calling for Intervention on Power Loss Technical Manuals Online! - http://www.tech-man.com...
  • Page 662 You can shut down the various parts connected to the controller and keep only the CPU running: • Modem • DCX 250attached directly to the Infinity CX 9000 Warning If you take down the CPU power, you cannot turn on the controller until AC power returns.
  • Page 663 • DCXPOWER • CPUPOWER These system variables correspond to particular lights on the Power Supply Voltage Status Display inside the Infinity CX 9000 cabinet. Figure 20-1 shows the lights. The ones with the asterisks to the right correspond to the programmable system variables.
  • Page 664 You can use the POWERFAIL system variable as a trigger to tell the controller when to shut down system parts. In the next section, you write some programs that take various actions when AC power fails. 20-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 665 If POWERFAIL is on when it triggers the program, the program turns on power to the CPU, DCX 250, and modem. Infinity Controller Programmer’s Guide 20-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 666 For instance, you may want to light up a status light on the controller that has been labeled OPERATING ON BATTERY. Each status light on the front of the Infinity CX controller has a programmable system variable called STATUS1 for the first light, STATUS2 for the second, and so on up to STATUS8.
  • Page 667 IF TM > 5 and POWERFAIL IS ON THEN TURN OFF MODEMPOWER, CPUPOWER, Status1 ENDIF Shutting down CPUPOWER supersedes any other power, since no other part of the controller functions if the CPU has no power. Infinity Controller Programmer’s Guide 20-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 668: System Status

    FLOOR1 controller after the PowerLoss program has run for Controller Door more than 5 minutes. Figure 20-4. Status Light Panel on Floor1 Controller in Response to PowerLoss Program STATUS SYSTEM Operating On Battery STATUS SCAN COMM1 COMM3 20-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 669 SET PhoneNum = NUM1 SET Seq = 1 GOTO OpenPort endif LINE OpenPort OPENING = OPEN (COMM3) LINE Calling IF OPENING = SUCCESS THEN CALL (COMM3, PhoneNum) GOTO Ringing endif Infinity Controller Programmer’s Guide 20-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 670 1 to the SEQ number, uses SEQ to form the next phone number, and goes to the CALLING line to call the new number. This program would be an evening alternative. You would need a day program to cover daytime actions. 20-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 671 Introducing and Planning Access Control Note If you are not using Infinity for an access control system, skip this chapter and subsequent chapters. Before you attempt to set up and program your access control system, this chapter explains how you get started. It covers how to plan your sites.
  • Page 672 Figure 21-1 shows such a drawing of a small site. Figure 21-1. Drawing of a Simple Site for Access Control Lobby Outside 21-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 673 • FrontDoor—from Outside to Lobby • LabDoor—from Lobby to Lab Be sure to write down the names of your doors in your draw- ing so you can refer to them later. Infinity Controller Programmer’s Guide 21-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 674 Draw a Graphic of you must have the following: Building or Site • An Infinity CX 9000 Controller (or any controller in the 9000 series or 220 series) • Access Controllers (ACX 700 series)—Infinet controllers specifically designed to handle access control •...
  • Page 675 Buzzer Button Note that the SX 8000 file server is optional for access con- trol. However, it may be required if you expect to have a large database of personnel. Infinity Controller Programmer’s Guide 21-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 676 In this case, the door is controlled by a ACX 780 controller. The ACX 780 also has an extra tamper switch that sets off an alarm if someone tries to remove the cabinet from the wall. 21-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 677 Exit Card Entry Card Reader Reader 1 2 3 4 5 6 7 8 9 Entry Keypad Exit Keypad How does all this equipment work to control access to an area? Infinity Controller Programmer’s Guide 21-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 678 To accommo- date multiple sets of cards for the same area, you can have up to four different site codes for the same area. 21-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 679 If so, the system then unlocks the door. The door switch indicates whether or not the door was opened. If the person opens the door and, presumably, enters Infinity Controller Programmer’s Guide 21-9 Technical Manuals Online! - http://www.tech-man.com...
  • Page 680 (You can require the person to do both to enter.) The controller verifies that the person is allowed to enter and unlocks the door lock. The door switch determines that the door opens. 21-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 681 Card numbers and PINs allow you to track the access of per- sonnel. If a valid access event occurs, the control system also records the time the event occurs, so you have a record of who enters and when. Infinity Controller Programmer’s Guide 21-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 682 Figure 21-6 shows an exit door that automatically opens as personnel approach. It has a motion detector or request-to-exit button. The door is, of course, still wired to the door switch and door lock. 21-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 683 (Request-to-Exit). The controller then unlocks the door lock for the person. The door switch determines that the door opened. Infinity Controller Programmer’s Guide 21-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 684 It has an exit card reader and exit keypad; you can use either one or the other. The door is, of course, still wired to the door switch and door lock. 21-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 685 Control Required to the controller. Where do you wire all of the sensors and re- lays to control a door? Infinity Controller Programmer’s Guide 21-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 686 Figure 21-8 shows a window that has been secured with a glass break sensor. Figure 21-8. Secured Window Setup GlassBreak Sensor Controller A glassbreak sensor is considered a supervisory input. 21-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 687 Figure 21-9 shows the ACX 700 and 780s used at the Andover site. Figure 21-9. Drawing of a Site Showing Location of ACX 700 or 780 Controller 700 Series Controller (DoorController) Lobby Outside Infinity Controller Programmer’s Guide 21-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 688 So, wire them as you see fit, then be sure you write down which one goes with which, so that you can later properly set up the Door. 21-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 689 PORT PORT In addition to having up to three doors on an ACX 700 control- ler, you can also have up to two additional doors on EMX 190 expansion modules. Infinity Controller Programmer’s Guide 21-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 690 Door Channel other type of supervisory input to the DoorSwitch DOOR and Exit Request channels. OUTPUT OVERRIDE 24VDC AUTO CLASS WIEGAND OVERRIDE CARD READER 21-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 691 Figure 21-12 shows a sample map of modules on an ACX 700 controller, using the maximum number of input and output channels allowed. (You assign door-related input and output channels later, when you set up the access control system.) Infinity Controller Programmer’s Guide 21-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 692 Wire a relay of the following type to the appropriate output module: Voltage, Current, Digital, HiResVoltage, HiResCurrent, and Pneumatic. For further informa- tion on these modules, refer to Chapter 1. 21-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 693 —1 Input Instead of a EMX 150 , you can put any output module, except another EMX 190 , for a total of two outputs after any EMX 190 s. Infinity Controller Programmer’s Guide 21-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 694 Later, you also set up points if you need them. Go back to the Chapters 2 and 3 and proceed through them sequentially. Then go to Chapter 22. 21-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 695 If you prefer, you can wire an alarm buzzer to Output 9. For details on how to wire each type of sensor and relay, refer to the ACX 780 Installation Guide. Infinity Controller Programmer’s Guide 21-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 696 Introducing Access Control 21-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 697 Chapter 22 Setting Up Areas and Doors for Access Control This chapter tells you how to set up areas and doors to use Infinity CX as an access control system. Technical Manuals Online! - http://www.tech-man.com...
  • Page 698: Before You Proceed

    (see also guidelines in Chapter 21). • Plan a map of your areas and assigned names to areas and doors (in the map), as explained in Chapter 21. 22-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 699 • Setting Up the Entry Card Reader or Keypad • Setting Up the Entry Card Reader or Keypad Options • Finding Out Entry Reader or Keypad Status • Setting up the Exit Card Reader or Keypad Infinity Controller Programmer’s Guide 22-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 700 ACX 700 or 780, store them, instead, in one of the following locations: • The Infinity CX 9000 controller that the ACX 700 series controller’s Infinet is connected to • In the SX database, under the root (above the sites in the Object Tree) You can choose one of these options, but not both.
  • Page 701 8000 ? Database Number Greater Than 1500? Put in Do People 9000 or 220 Access Doors on More Controller Than One 700 ? Database Put People in 700 Controller Database Infinity Controller Programmer’s Guide 22-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 702 If you choose, you can store area information in the Infinity CX 9000 controller or under the root in the SX database. If you choose to store people in the Infinity CX 9000, then you must also store areas in the Infinity CX 9000, and cannot store any access control information under the root in the SX data- base.
  • Page 703 CX 9000 controller. This manual assumes you are storing areas and personnel in the Infinity CX 9000 or ACX 700 series controller. For infor- mation on how to store areas and personnel on a workstation, refer to the SX 8000 Programmer’s Guide.
  • Page 704 Once you have decided where to store areas and people, you Decide Where to Store are now ready to tell the control system where you want to Access Info store your information. 22-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 705 Areas and Doors Summary Before you set up Infinity to control access to your areas, you Decide Where to Store must decide where to store the access control information Access Info based on a number of factors: • You must store all people and all areas in same controller (or all in the workstation database).
  • Page 706 English Language Reference), then typing the following in the Command window: Set AccessServer = 120 The 120 is an example of the EnergyNet ID of an Infinity CX 9000 controller. You should, of course, give the ID of your Infinity CX 9000 controller. This command sets the AccessServer system variable to the EnergyNet ID of the access control server.
  • Page 707 Repeat this procedure for each ACX 700 series controller. Summary If you use an Infinity CX 9000 controller to store areas and people, you must tell the ACX 700 series controllers on the Infinet which controller stores them. To tell the controllers, you set the AccessServer on each one as follows: 1.
  • Page 708: Setting Up Areas

    Controller text box, press the DELETE LINE/TEXT key to erase the name. Then type the correct one. Or use the SHOW LIST key to select another name. 22-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 709 5. Type the name of your area in the Name text box and press the EXECUTE key to proceed. The Area window opens. To fill in the text boxes in that window, proceed to the next section. Infinity Controller Programmer’s Guide 22-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 710 Because the count can be inaccurate, you may want to alter it in the future. Type the number here. 22-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 711 They appear here after you have set up the doors. 1. If you see other attributes in your window, ignore them. They are not avail- able for Version 1.4. Infinity Controller Programmer’s Guide 22-15 Technical Manuals Online! - http://www.tech-man.com...
  • Page 712 DELETE button, a window appears asking you if you want to cancel the action. This window prevents you from deleting an area by mistake. Next, you set up the doors for each area. 22-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 713 Later, after you have set up doors, you can press the DETAILS button and see a list of doors you can enter this area through. Infinity Controller Programmer’s Guide 22-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 714 Users Points Files CommPorts Controller Infinet Controller System Date & Time System Variables Persons Areas Doors In a moment, the Open a Door window appears. Figure 22-8 shows the window. 22-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 715 EXECUTE key to proceed. (Do not name any door “door,” since that is the class name.) The Main Door Setup window opens. To fill in the text boxes in that window, proceed to the next section. Infinity Controller Programmer’s Guide 22-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 716 3. Door Lock (VALUE)—Displays the current setting of the door striker relay, which controls the door lock— Locked or Unlocked. You can change the setting in this text box to lock or unlock the door. 22-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 717 If Disabled, the door does not allow anyone access to or from the area. 8. Before you set up any card readers, you complete the Door information by pressing the DETAILS1 button. Infinity Controller Programmer’s Guide 22-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 718 Type each acceptable site code in one of the four text boxes to the right. The following site codes are allowed for the given card type: • Infinity 37—0 to 4095 • AC4+4 32—0 to 4095 • Wiegand 26—0 to 256 Assign Door Channel 2.
  • Page 719 In a high-security situation, especially if you do not have a visual monitor for the door, you can have this attribute set an alarm based on the door being ajar too long, since Infinity Controller Programmer’s Guide 22-23 Technical Manuals Online! - http://www.tech-man.com...
  • Page 720 ACX 780 from 1 through 32. Figure 22-11 shows the location of each channel on the ACX 700. 22-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 721 OUTPUT O/CLK Reader Channels DOOR 2 READER 2 OUTPUT AUTO/OFF/ON I/DATA O/CLK Door OUTPUT 3 WIEGAND Alarm – INFINET Channel SHLD +24VDC CLASS 11 AUTO/OFF/ON SERVICE EXPANSION OVERRIDE PORT PORT Infinity Controller Programmer’s Guide 22-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 722 4, on the second 24VDC AUTO CLASS module you identify it as 5. WIEGAND OVERRIDE CARD READER Figure 22-13 shows the location of each channel on the ACX 780. 22-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 723 Areas and Doors Infinity Controller Programmer’s Guide 22-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 724 EMX 190 expansion modules, 9 and 10 on the first module and 11 and 12 on the second. Set this attribute to the channel number of the input. 22-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 725 14. If you have any doors wired to expansion modules, read the next subsection. If not, skip the procedure and press the DETAILS2 button. Then go on to the next major section. Infinity Controller Programmer’s Guide 22-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 726 • Door Strike Seconds—Set to number of seconds door can remain open. • Door Ajar Seconds—Set to number of additional seconds door can remain open before door is ajar. • Alarm Channel—Set to channel number of buzzer. 22-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 727 • Door Switch Type—Set to type of door switch. • Exit Request Channel—Set to number exit request sensor channel. • Exit Request Type—Set to type of exit request switch. Infinity Controller Programmer’s Guide 22-31 Technical Manuals Online! - http://www.tech-man.com...
  • Page 728 Refer to the chap- ter on points for how to set up the points. The types you can have for these channels include Voltage, Current, Digital, HiResVoltage, HiResCurrent, and Pneumatic. 22-32 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 729 Refer to the chapter on points for how to set up the input point. Figure 22-14 illustrates a full chain of expansion modules and gives the object types and numbers you can assign to each channel. Infinity Controller Programmer’s Guide 22-33 Technical Manuals Online! - http://www.tech-man.com...
  • Page 730 190 s. 15. When you are ready to proceed, press the NEXT ATTRIBUTE key until the cursor is on the DETAILS2 button and then press the EXECUTE key to proceed. 22-34 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 731 Table 22-2. Rules for Assigning Channels on Input Expansion Modules Channel(s) on Channel(s) on Type of Input First Module Second Module Digital or Counter 13 – 20 21 – 28 Temperature Input (not allowed) Infinity Controller Programmer’s Guide 22-35 Technical Manuals Online! - http://www.tech-man.com...
  • Page 732 Figure 22-15. Card Formats Window View Edit Connect Logout Door – Floor1 Front LabDoor Details 2 Door Schedule General Code Infinity37 SAVE AC4Plus432 Wiegand26 Card Format CANCEL Wiegand 22-36 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 733 Wiegand Formats—If you have a Wiegand card reader, choose the card format to the right that matches your card set. You may have Infinity 37-bit cards (Infinity37), AC 4+4 32-bit cards (you may have these if you have been using an AC 4+4 controller prior to purchasing the ACX 700 or 780) (AC4Plus432), or Wiegand 26-bit cards (Wiegand26).
  • Page 734 • Normal means the ACX 700 series controller is working normally. • NoComm means that communication between the access server and the ACX 700 series controller has failed. 22-38 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 735 ACX 700 series controller that stores the doors has been reset or has otherwise lost the database, for instance, during a reload to the controller. When this Infinity Controller Programmer’s Guide 22-39 Technical Manuals Online! - http://www.tech-man.com...
  • Page 736 If the database is erased by someone resetting the controller, in this case, the figure shows that the controller then checks for a valid site code only. 22-40 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 737 • Current Mode—Displays the current mode. • Access Validation—Select the information you want the controller to check whenever a person swipes a card through a reader or punches a code on a keypad. Infinity Controller Programmer’s Guide 22-41 Technical Manuals Online! - http://www.tech-man.com...
  • Page 738 1. Area (EntryArea or ExitArea)—Type the name of the area the door accesses. Set to the name of the area. Include with it the path with the name of the Infinity CX 9000 controller (and the ACX 700 series controller if applicable).
  • Page 739 (ExitAntiPassTime)—If the individual attempts to enter the area again within the number of minutes you set under AntiPassBack Minutes, depending on how high-security the area is, you may want to simply allow Infinity Controller Programmer’s Guide 22-43 Technical Manuals Online! - http://www.tech-man.com...
  • Page 740 0 and fill in all the other pertinent informa- tion just as you have done for the entry card reader. After you have completed the entry card reader, you proceed to the exit card reader. 22-44 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 741 (*) key, instead of the pound (#) sign. Toggle on this check box to allow entry when the person indicates they are under duress. (Then be sure to set an alarm as well.) Infinity Controller Programmer’s Guide 22-45 Technical Manuals Online! - http://www.tech-man.com...
  • Page 742 This action may or may not indicate duress, based on the selection above it. 6. Press the DETAILS2 button to see the status of the entry reader or keypad. 22-46 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 743 • AntiPassback Minutes—Set to number of minutes a person’s card remains invalid immediately after the person goes through this door. • Reader Options—Select the conditions you want the control system to allow access under. Infinity Controller Programmer’s Guide 22-47 Technical Manuals Online! - http://www.tech-man.com...
  • Page 744 1. Last Person Entered (LastPersonEnterd or LastPersonExited)—Displays the name of the last person who entered through the door. 2. Time Entered (TimeEntered or TimeExited)—Displays the time the last person entered through the door. 22-48 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 745 If you do not have an exit card reader or keypad, you have fin- ished setting up this door. You can repeat the door procedures for each door or use SAVE AS to create multiple doors and modify each one. Infinity Controller Programmer’s Guide 22-49 Technical Manuals Online! - http://www.tech-man.com...
  • Page 746 • Last Invalid Person—Displays the name of the last person who attempted to enter but was not allowed access. • Last Invalid Time—Displays the time that the last person attempted to enter who was not allowed access. 22-50 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 747 SAVE AS to create multiple doors and modify each one. When you have finished setting up all doors, you are ready to proceed to set up people—each called a “person.” Infinity Controller Programmer’s Guide 22-51 Technical Manuals Online! - http://www.tech-man.com...
  • Page 748 Now that you have completed setting up areas and doors, you are ready to learn about points. Proceed to the next chapter to learn about points. 22-52 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 749 If you want to set up a glassbreak sensor or other supervised Sensors as Points input and control it through a Andover Controls Plain English program, go to Chapter 4 and follow the instructions there for setting the sensor up as a point. You can set up any supervised input as a point even if you have already set it up as part of the door.
  • Page 750 Areas and Doors 22-54 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 751 This chapter tells you how to set up people or “persons.” A “person” is someone who accesses areas when you are using Infinity CX as an access control system. • Setting Up Persons Who Can Access Each Area • Setting Person Attributes •...
  • Page 752 2. Verify the name of the controller from the network map. This controller should be the access server you set up earlier. If the correct name does not appear in the Controller text box, press the DELETE LINE/TEXT key 23-2 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 753 The decision is yours. When you are ready, press the EXECUTE key to proceed. The Person window opens. To fill in the text boxes in that window, proceed to the next section. Infinity Controller Programmer’s Guide 23-3 Technical Manuals Online! - http://www.tech-man.com...
  • Page 754 3. Department Number (DepartmentCode)—The number assigned to the person’s department. For instance, if Engineering is Department 2, then you enter 2 here. You 23-4 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 755 7. Entry Egress—(Optional.) This attribute displays Set Entry and Egress whether or not the person’s last entry was an entry/egress violation. Displays X if it was. Infinity Controller Programmer’s Guide 23-5 Technical Manuals Online! - http://www.tech-man.com...
  • Page 756 Disabled and press the space bar. Be sure to select Enabled for a new person. 10. Press the CARD INFO button to proceed to the Card Information window. 23-6 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 757 • Entry Egress—Displays X if the person’s last entry was an entry/egress violation. • Duress—Displays X if the person’s last entry was under duress (being forced into area by an unauthorized person). Infinity Controller Programmer’s Guide 23-7 Technical Manuals Online! - http://www.tech-man.com...
  • Page 758 AC4Plus432, Wiegand26, ABA1, or ABA2. Select PINOnly where no card reader is involved, but a keypad instead. 2. Card Number—Type the person’s card number as encoded on the person’s access card. Do not exceed the 23-8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 759 Personnel highest card number. The highest card number is based on the card type: • Infinity 37—0 to 524287 • AC4+4 32—0 to 16383 • Wiegand 26—0 to 65535 3. Site Code—Type the person’s site code. This number is encoded in the person’s access card and is the same for a set of cards.
  • Page 760 2. First Name—(Optional.) Type up to 16 characters, including spaces, for the person’s first name. 3. Middle Initial—(Optional.) Type the person’s middle initial, if applicable. 23-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 761 • Last Name, First Name, Middle Initial—Person’s real name rather than “person item” name. • SSN—Social Security number. • Department, Employee Number. • Activation Date—Date you enter person in controller. • Office Location and Office Phone. Infinity Controller Programmer’s Guide 23-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 762 Use <INSERT> to Add an Area Use <ENTER> to Edit an Area Use <DELETE> to Delete an Area Use <EXIT> to Exit Form Figure 23-7 shows the a list of available areas that opens. 23-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 763 Current Areas list. Notice that the areas that appear in the list have two pieces of information to the right of them—TRUE or FALSE and ENABLED or DISABLED. Infinity Controller Programmer’s Guide 23-13 Technical Manuals Online! - http://www.tech-man.com...
  • Page 764 Area. 4. Schedule—(Optional.) Type the full path to the occupancy point of the schedule you want to have control this person’s access to the area. 23-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 765 ACX 700 series controller to retrieve names and access codes from the database on an Infinity CX 9000 or an SX 8000, store the person on the access server unit by putting the X next to Don’t Load.
  • Page 766 1. To remove an area from those the person can access, press the appropriate arrow key until the cursor lands on the area name. 2. Press the DELETE key to delete the area from the list. 23-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 767 • To copy the person onto the ACX 700 series controller, you set the Copy to ACX attribute to Load. • To deny the person access to any areas, set the State attribute to Disabled. Infinity Controller Programmer’s Guide 23-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 768 Add Person Information In this window, you fill in employee data, as follows: 1. Supervisor—(Optional.) Type up to 32 characters, including both letters and numbers, stating the name of the person’s supervisor. 23-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 769 (slashes, dashes, periods, commas, and so on) indicating the person’s date of birth. 11. Press the DETAILS3 button to proceed to the Person Information window. Infinity Controller Programmer’s Guide 23-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 770: Entering Personal Information

    1. Blood Type—(Optional.) Type up three characters, including both letters and numbers, indicating the person’s blood type. 2. Sex—(Optional.) Type one character, including both letters and numbers, indicating the person’s gender. 23-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 771 • Blood Type, Sex • Hair Color and Eye Color • Height and Weight You can also set the person’s parking sticker number, which can come in handy in controlling parking lot access. Infinity Controller Programmer’s Guide 23-21 Technical Manuals Online! - http://www.tech-man.com...
  • Page 772 Personnel 23-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 773 Appendix A Keystrokes This appendix covers the Infinity CX keystrokes for the four terminal types the product works on: • VT 100 • VT 220 • Wyse 50 • CROSSTALK The key names are listed alphabetically for easy reference. After the terminal keystrokes, four tables present the action each key takes in the different Infinity CX modes: •...
  • Page 774 DELETE TEXT DELETE TO RIGHT ESC 7 DELETE WORD ESC e Select EXECUTE Return Enter ESC 5 ESC 5 INSERT LINE ESC i Insert Here INSERT TEXT LEFT SIDE ESC h Find Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 775 BOTTOM SCREEN CANCEL WINDOW DELETE LINE/TEXT Delete DELETE TEXT DELETE TO RIGHT DELETE WORD Shift Home EXECUTE Enter Enter ESC 5 ESC 5 INSERT LINE Insert INSERT TEXT LEFT SIDE Home Home Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 776 CTRL L CTRL L QUICK BUTTON QUICK COMMAND REFRESH CTRL Z CTRL Z RESTORE TEXT ESC 5 ESC 5 ESC E Select RIGHT SIDE SAVE SHOW LIST TOP SCREEN ESC 8 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 777 PREVIOUS WORD None CTRL L QUICK BUTTON QUICK COMMAND (QUICK CMD) REFRESH CTRL Z CTRL Z RESTORE TEXT ESC 5 ESC 5 Shift Home RIGHT SIDE SAVE SHOW LIST TOP SCREEN Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 778 PAGE UP Moves the cursor up to the next menu selection. RIGHT SIDE Moves cursor to rightmost menu on the menu bar. SAVE Returns the cursor to the menu bar. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 779 Returns text in text box to what it was before you changed it. RIGHT SIDE Moves cursor to right side of text box. SAVE Saves all attributes. EXECUTE saves if not on a button that directs another action. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 780 Moves the cursor down to the next PAGE DOWN choice list selection. PAGE UP Moves the cursor up to the next choice list selection. SAVE Returns the cursor to the menu bar. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 781 Return Ends a physical line of text and brings the cursor to the beginning of the next line. INSERT LINE Inserts a blank line below the one the cursor is on. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 782 Table A-6). RIGHT SIDE Moves the cursor to the far right end of the line it is on. TOP SCREEN Moves the cursor to the top of the vis- ible screen. A-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 783 Quick Key Button Pressed ADD or SAVE AS CANCEL, CLEAR, or CHECK DETAILS DELETE LOGS or LEARN NO or NEXT PREVIOUS QUIT RETRY or RESET SAVE TRIGGERS or TEACH VIEW EXIT Infinity Controller Programmer’s Guide A-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 784 Keystrokes A-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 785: Error Messages

    Appendix B Error Messages This appendix covers the Editor window, runtime, and open- ing file messages from Andover Controls Plain English. Technical Manuals Online! - http://www.tech-man.com...
  • Page 786 Remove the reference to an attribute that does not exist for that particular item. For instance, programs have CURRENTLINE and FILESIZE; points do not. Refer to Appendix B in the Andover Controls Plain English Lan- guage Reference for more on attributes. Infinity Controller Programmer’s Guide...
  • Page 787 Remove the reference to an attribute after the variable, except in the case of an OBJECT local variable. For more information about OBJECT local variables, see the OBJECT keyword in the Andover Controls Plain English Language Reference. BREAK or CONTINUE is outside a loop or block Search the program for the word BREAK or CONTINUE.
  • Page 788 Data type is not same as field type Rewrite the record in the data file so you are not assigning a number (or string or date-time) to a field of a different type. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 789 Call your Andover Controls representative. Feature not available on this controller Check for keywords that do not run on the particular con- troller you are on. Refer to the Andover Controls Plain English Language Reference for this detail on each key- word.
  • Page 790 If you typed tilde by mistake, delete the tilde, because the controller thinks it is at the end of a line. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 791 Some attributes require an integer value (number with no decimal after it), such as the array or log SIZE attribute. Check to be sure you have not set one to a value with a dec- imal in it. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 792 Keyword you used does not function at this stage of product development. Parser stack overflow Call your Andover Controls representative. Passed too many arguments to a function Look for a situation where you have tried pass more than 15 arguments into a function like SUM, MINIMUM, MAXIMUM, or your own function.
  • Page 793 130 characters long.) Or rewrite the program so you do not fill the string with too many characters. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 794 You cannot change that attribute value Remove the statement that attempts to set an attribute that only the controller can set. Refer to Appendix B of the Andover Controls Plain English Language Reference for attributes you cannot set. B-10 Infinity Controller Programmer’s Guide...
  • Page 795 Change the name of any line that you named 0, C, or E. All three are reserved. You can send a program to line 0 to stop it, but cannot send a program to lines C or E. Infinity Controller Programmer’s Guide B-11 Technical Manuals Online! - http://www.tech-man.com...
  • Page 796: Runtime Error Messages

    Remove the reference to an attribute that does not exist for that type of item. For instance, a program does not have a SIZE attribute, but a FILESIZE attribute. Refer to Appendix B in the Andover Controls Plain English Lan- guage Reference for more on attributes. Cannot read data file Try to read again.
  • Page 797 You cannot add a string to a number, or compare a string to a date-time. See the chapter on operators in the Andover Controls Plain English Language Reference. Infinity Controller Programmer’s Guide B-13...
  • Page 798 Gave more or less arguments than allowed Open the function (or double check your manual if it is an Andover Controls Plain English function) and look at the arguments it can receive. Then alter the statement that calls the function so it sends the correct number of arguments.
  • Page 799 If you still receive this message, call your Andover Controls representative. Set a point or var to value of wrong type If you try to set a point to a value of a different type, you receive this error.
  • Page 800 You Must Define Local Try editing your file and double check each local variable. Variables If you still have this problem, call your Andover Controls representative. Used an incorrect function argument Alter the statement in the program that calls the function so that each argument is appropriate for the action the function takes.
  • Page 801 (The column number is the field number.) If the pro- gram tries to access a record or column that is not there, the program stops. Correct the statement based on the data file. Infinity Controller Programmer’s Guide B-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 802 Controller cannot open a file of this type Andover Controls has reserved certain types to become file types in the future. If you try to open a file of a type that is not yet developed, the controller will not let you open it.
  • Page 803 Edit the dump file and reload it using the LOAD keyword. Fatal, Not enough free memory Call your Andover Controls representative. Operation is not available A keyword you used inside the file does not function at this stage of product development.
  • Page 804 Messages B-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 805 Appendix C DCX Graphic Controls and Frame Styles This appendix presents a graphic of each DCX 250 control, and its control number, in numeric order. It then presents each frame style, in numeric order. Requirements for the CONTROL keyword arguments vary based on the control style.
  • Page 806 STATE. • top_scale—Optional. Automatically set to ON or one of the two values of a digital attribute, such as ENABLED for STATE. • tickmarks—Not applicable. • steps—Not applicable. • format—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 807 STATE. • top_scale—Optional. Automatically set to ON or one of the two values of a digital attribute, such as ENABLED for STATE. • tickmarks—Not applicable. • steps—Not applicable. • format—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 808 DISABLED for STATE. • top_scale—Optional. Automatically set to ON or one of the two values of a digital attribute, such as ENABLED for STATE. • tickmarks—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 809 Control and Frame Styles • steps—Not applicable. • format—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 810 DISABLED for STATE. • top_scale—Optional. Automatically set to ON or one of the two values of a digital attribute, such as ENABLED for STATE. • tickmarks—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 811 Control and Frame Styles • steps—Not applicable. • format—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 812 DISABLED for STATE. • top_scale—Optional. Automatically set to ON or one of the two values of a digital attribute, such as ENABLED for STATE. • tickmarks—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 813 Control and Frame Styles • steps—Not applicable. • format—Not applicable. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 814 • bot_scale—Required if it is not a digital knob. Automatically set to OFF or one of the two values of a digital attribute, such as DISABLED for STATE. C-10 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 815 If you set it to 0, the knob becomes analog. • format—Optional. If you do not specify a format for the numbers that label the positions on the knob, Infinity does not display the number but leaves adequate space to display four digits—####.
  • Page 816 The minimum size in line points is 80 wide if arrows are horizontal and 50 wide if vertical. • frame—Optional. • direction—Not applicable. Values always increase in clockwise direction. C-12 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 817 If you set it to 0, the gauge becomes analog. • format—Optional. If you do not specify a format for the numbers that label the positions on the gauge, Infinity does not display the number but leaves adequate space to display four digits—####.
  • Page 818 The minimum size in line points is 80 wide if arrows are horizontal and 50 wide if vertical. • frame—Optional. • direction—Not applicable. Values always increase in clockwise direction. C-14 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 819 If you set it to 0, the gauge becomes analog. • format—Optional. If you do not specify a format for the numbers that label the positions on the gauge, Infinity does not display the number but leaves adequate space to display four digits—####.
  • Page 820 • bot_scale—Required if it is not a digital control. If it is for a digital point or attribute, automatically set to OFF or one of the two values of a digital attribute, such as DISABLED for STATE. C-16 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 821 1, the correct number for a digital point or attribute. • format—Not applicable. • The value that appears in the box automatically appears in the format for the point that the control represents. Infinity Controller Programmer’s Guide C-17 Technical Manuals Online! - http://www.tech-man.com...
  • Page 822 DISABLED for STATE. • top_scale—Required if it is not a digital control. If it is for a digital point or attribute, automatically set to ON or one C-18 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 823 1, the correct number for a digital point or attribute. • format—Not applicable. • The value that appears in the box automatically appears in the format for the point that the control represents. Infinity Controller Programmer’s Guide C-19 Technical Manuals Online! - http://www.tech-man.com...
  • Page 824 • bot_scale—Required if it is not a digital control. If it is for a digital point or attribute, automatically set to OFF or one of the two values of a digital attribute, such as DISABLED for STATE. C-20 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 825 • format—Optional. If you do not specify a format for the numbers that label the positions on the knob, Infinity does not display the number but leaves adequate space to display four digits—####.
  • Page 826 • bot_scale—Required if it is not a digital control. If it is for a digital point or attribute, automatically set to OFF or one of the two values of a digital attribute, such as DISABLED for STATE. C-22 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 827 • format—Optional. If you do not specify a format for the numbers that label the positions on the knob, Infinity does not display the number but leaves adequate space to display four digits—####.
  • Page 828 Must be at least 80 line points wide and 50 line points high. • frame—Optional. • direction—Not applicable. • bot_scale—Not applicable. • top_scale—Not applicable. • tickmarks—Not applicable. • steps—Not applicable. • C-24 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 829 Control and Frame Styles • format—Not applicable. • You must specify a datetime point or the control does not appear. Infinity Controller Programmer’s Guide C-25 Technical Manuals Online! - http://www.tech-man.com...
  • Page 830 Control and Frame Styles Figure C-14. Frame Style 1 Title C-26 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 831 Control and Frame Styles Figure C-15. Frame Style 2 Title Infinity Controller Programmer’s Guide C-27 Technical Manuals Online! - http://www.tech-man.com...
  • Page 832 Control and Frame Styles Figure C-16. Frame Style 3 Title C-28 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 833 Control and Frame Styles Figure C-17. Frame Style 4 Title Infinity Controller Programmer’s Guide C-29 Technical Manuals Online! - http://www.tech-man.com...
  • Page 834 Control and Frame Styles C-30 Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 835 Infinity CX 9000/CMX 220 Series Controllers This appendix explains how you can determine the number of persons you can store on your Infinity CX 9000 series, CMX 220 series, or ACX 700 series controller if it is the access server.
  • Page 836 Persons Calculations Maximum Number of Personnel Objects per Device Andover Controls recommends that if you use a controller as Select Certain Controller the access server, you use one of those named in the table Types for AccessServer below. This table indicates the maximum number of personnel you can store on each type of controller that can be an access server.
  • Page 837 “short record.” A “long record” is one that includes any personnel attributes other than the basic attributes listed here. Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...
  • Page 838 Persons Calculations Infinity Controller Programmer’s Guide Technical Manuals Online! - http://www.tech-man.com...

Table of Contents