Pointe Controller User Guide Nematron Corporation February 2003
Nematron, OpenControl, Pointe Controller, PointeControl, Optimation, and OptiLogic are trademarks of Nematron Corporation. All other trademarks are the property of their respective holders. Information in this document is subject to change without notice and does not represent a commitment on the part of Nematron Corporation. No part of this manual may be reproduced or transmitted in any form or by any means for any purpose without the express written permission of Nematron Corporation. Document 5.60.
Pointe Controller User Guide Table of Contents Chapter 1: Introducing the Pointe Controller.................................................. 13 1.1 The Node Controller Concept ......................................................................................................14 1.2 Typical Applications ........................................................................................................................17 1.3 Architecture Options ..................................................
Table of Contents Pointe Controller User Guide 3.12 Setting Breakpoints ........................................................................................................................ 66 Chapter 4: System Design and Installation ......................................................70 4.1 Safety Guidelines............................................................................................................................. 71 4.2 Getting to Know the Pointe Controller Base ..............
Pointe Controller User Guide Table of Contents Chapter 5: Developing Controller Programs ................................................. 105 5.1 5.2 5.3 5.4 5.5 5.6 Basic Concepts in PointeControl............................................................................................... 106 5.1.1 Multiple Programming Languages........................................................................... 106 5.1.2 Memory Allocation and Access.....................................................
Table of Contents 5.7 Pointe Controller User Guide Types of Flow Chart Blocks.........................................................................................................151 5.7.1 Process Block....................................................................................................................151 5.7.2 Terminator Block............................................................................................................154 5.7.3 Condition (If/Then/Else) Block.........
Pointe Controller User Guide Table of Contents Chapter 6: Downloading to the Controller.................................................... 183 6.1 Launching the PointeControl Monitor ................................................................................... 184 6.2 Selecting and Attaching a Controller ..................................................................................... 185 6.2.1 6.3 Downloading a Project to the Controller ....................................................
Table of Contents Pointe Controller User Guide Chapter 8: Networked Operations .................................................................216 8.1 Networking via OptiLogic Remote I/O ....................................................................................217 8.2 Networking via Modbus Data Mapping.................................................................................218 8.2.1 Modbus Address.......................................................................................
Pointe Controller User Guide Table of Contents A.11.1 OL2304 Configuration Options.................................................................................. 275 A.12 OL2408 Analog Voltage Input .................................................................................................. 276 A.12.1 OL2408 Configuration Options.................................................................................. 277 A.13 OL2418 Analog Current Input...................................................
Table of Contents B.4 B.5 B.6 B.7 Pointe Controller User Guide B.3.5 String Insert .....................................................................................................................310 B.3.6 String Delete....................................................................................................................311 B.3.7 String Replace .................................................................................................................313 B.3.
Pointe Controller User Guide Table of Contents C.1.10 Falling Edge Coil (TEOC) .............................................................................................. 343 C.1.11 Falling Edge Detector (F_TRIG) .................................................................................. 344 C.1.12 Rising Edge Detector (R_TRIG)................................................................................... 345 C.1.13 Set-Dominant Bistable (SR) .................................................
Table of Contents C.5 C.6 C.7 Pointe Controller User Guide C.4.5 Less than or Equal to (LE).............................................................................................386 C.4.6 Less Than (LT) ..................................................................................................................387 Logical and Bit Shift Blocks ........................................................................................................389 C.5.1 And (AND).......................
Pointe Controller User Guide Table of Contents C.9.4 Convert to String (TO_STRG) ...................................................................................... 430 C.9.5 Truncate (TRUNC) .......................................................................................................... 432 C.9.6 Integer to Character (TO_CHR) .................................................................................. 433 C.9.7 Character to Integer (CHR_TO) ......................................
Pointe Controller User Guide Chapter 1: Introducing the Pointe Controller Chapter 1: Introducing the Pointe Controller Welcome to the Pointe Controller. Nematron’s Pointe Controller is an important part of the new generation of automation technology. The Pointe Controller extends automation capabilities, previously available only in high-end PC-based control systems, to low cost embedded control.
Chapter 1: Introducing the Pointe Controller 1.1 Pointe Controller User Guide The Node Controller Concept Deployable, localized control with a high-speed, standards-compliant interface to a larger network of devices – that’s the concept of a node controller. The Pointe Controller is part of a new generation of control devices designed to meet the needs of today’s more integrated world.
Pointe Controller User Guide Chapter 1: Introducing the Pointe Controller Real-time, open standard data sharing from production to the front office; and Direct connect operator panel interfaces available. Since the mid 1970s, PLCs have been the foundation of traditional control applications. PLCs have provided the advantages of localized control, modular configuration, and rugged industrial packaging.
Chapter 1: Introducing the Pointe Controller Pointe Controller User Guide The figure below illustrates the power of the Pointe Controller. It shows a number of Pointe Controllers connected into a larger network. Each Pointe Controller interfaces local I/O and performs local control on a real-time dedicated basis.
Pointe Controller User Guide 1.2 Chapter 1: Introducing the Pointe Controller Typical Applications Pointe Controllers can be used for a wide variety of data acquisition and control applications. The Pointe Controller’s low cost, flexible and easy to use design makes it a perfect choice for many small control applications that traditionally have used PLC type solutions.
Chapter 1: Introducing the Pointe Controller 1.3 Architecture Options 1.3.1 Stand-alone Operation Pointe Controller User Guide The general discussion of the Pointe Controller has emphasized the communications capability and capability to be deployed as a node on a network. In reality, the Pointe Controller is just as applicable to stand-alone applications that do not require remote communications. 1.3.
Pointe Controller User Guide 1.3.3 Chapter 1: Introducing the Pointe Controller Network Node As a control node in a scalable network, the Pointe Controller performs dedicated real-time local control, while maintaining communications with the designated supervisory computer. Total system deployment, configuration, project coordination, and data logging can be implemented from any authorized network workstation.
Chapter 1: Introducing the Pointe Controller 1.4 Pointe Controller User Guide Available Parts and Accessories The Pointe Controller system is designed to be extremely modular and flexible. As such, all Pointe Controller parts and accessories are sold separately. For availability and pricing, please call Nematron at 1-800-636-2876, or visit us on the Web at http://www.nematron.com/Sales and find a certified Nematron distributor near you.
Pointe Controller User Guide Chapter 1: Introducing the Pointe Controller PART # DESCRIPTION OL2208 8-point DC input. 10-30VDC (sourcing or sinking). OL2211 8-point AC input. 80-132VAC. OL2252 Counter Input, 2 channels, 0-15 KHz. OL2258 High Speed Counter. P&D, Quadrature, Up/Down Count. 0-80 KHz (0-160 KHz for Quad). Two high-speed open collector outputs. OL2304 4-channel analog voltage output, 14-bit. 0-5v, 0-10v, +/-5v, +/-10v configurable. 12-bit resolution.
Chapter 2: Initial Setup Pointe Controller User Guide Chapter 2: Initial Setup This chapter describes how to quickly set up the Pointe Controller unit, including connecting a power supply to the Pointe Controller unit, installing the PointeControl software on your PC, setting the controller’s network address, installing I/O modules in the card cage, and connecting the controller to an Ethernet network.
Pointe Controller User Guide 2.1 Chapter 2: Initial Setup Getting to Know the Pointe Controller Base The figure below shows the layout of a Pointe Controller base: The Pointe Controller base consists of a card cage containing the motherboard. The base unit has a built in Ethernet port, as well as an RS232 port. The Ethernet port is the interface to the larger system. The RS232 port is provided for general purpose communications (as defined by your application program).
Chapter 2: Initial Setup 2.2 Pointe Controller User Guide Supplying Power to the Pointe Controller The Pointe Controller unit requires a 8-30VDC, 1 Amp power supply. This can be provided either by using a wall-pluggable AC adapter (part number OL-PS1) or by connecting the unit directly to a properly rated DC grid. The connection is made at the Power Input screw terminals located at the bottom left corner of the base unit. To connect a power supply to the controller: 1.
Pointe Controller User Guide 2.3 Chapter 2: Initial Setup Installing the PointeControl Software The PointeControl software CD (part number NS-PTC) includes the control application development package and the various utilities needed to connect to and configure the Pointe Controller unit. System requirements: 200 MHz or faster Pentium processor Operating system (any one): o Microsoft Windows NT 4.
Chapter 2: Initial Setup 2.4 Pointe Controller User Guide Configuring the Controller’s Network Settings Each Pointe Controller unit has two distinct addresses: an IP address, for communicating across an Ethernet network; and a Modbus address, for communicating with serial Modbus devices such as operator panels and bar code readers. In this initial setup, we will configure only the IP address. The Pointe Controller unit comes preconfigured with a default IP address.
Pointe Controller User Guide Chapter 2: Initial Setup The PointeControl/OptiLogic Update Tool application window appears. 4. Click Automatic Base Detection. The application should immediately connect to your Pointe Controller unit. If it does not, check your serial connection and try again. If it still cannot connect, click Manual Setup and select PTC5800 from the drop-down menu.
Chapter 2: Initial Setup Pointe Controller User Guide When the application successfully connects, the following window will appear: The Read Current Settings pane displays the current address settings on the Pointe Controller unit. If you are addressing the unit for the first time, the factory default settings are displayed. 5. Under New Settings, enter the new IP address and subnet mask for the Pointe Controller unit. For example, an IP Address of “10.16.80.103” and a Sub Net Mask of “255.255.255.00”.
Pointe Controller User Guide Chapter 2: Initial Setup The secondary server is the PC to which the Pointe Controller unit will attempt to connect when it first powers on. 7. For the Node Name pane, enter the name by which the Pointe Controller unit will identify itself to PointeControl Monitor. For example, “Gundam.” NOTE: If you do not want or need to change the Node Name, you can skip this step and leave the factory default setting.
Chapter 2: Initial Setup 2.5 Pointe Controller User Guide Installing I/O Modules in the Controller Each module occupies one slot in the controller base. Each slot position is numbered as shown below. The slot number will provide a reference to your application program for selecting the appropriate module for each particular operation. Slot numbering is simply left to right, starting with slot number 0. Each slot has card guides along each side and a connector on the motherboard.
Pointe Controller User Guide 2.6 Chapter 2: Initial Setup Connecting the Controller to Your PC An Ethernet network connection is used to download finished control applications from your PC to the Pointe Controller unit. It is also used to monitor the unit's runtime performance and to share Modbus TCP data between different control devices. An RJ-45 Ethernet port is located at the left side of the Pointe Controller unit. The simplest system is a point-to-point connection.
Chapter 3: Quickstart Project Pointe Controller User Guide Chapter 3: Quickstart Project The first project we will implement with the Pointe Controller is a very simple one that involves setting up an automated timer and then adding a few different types of indicators that can be used to display the progress of the timer. To implement this project, you will need the following.
Pointe Controller User Guide 3.1 Chapter 3: Quickstart Project Starting a New Project Begin by launching the PointeControl Framework application and creating a new project: 1. From the Windows Start menu, choose Programs > PointeControl > Framework. The PointeControl Framework window will appear. 2. From the File menu, choose New Project. 3. In the New Project dialog box, enter the name of your project (e.g. “Mytest”) and click OK. Once you have done this, your new project will be opened.
Chapter 3: Quickstart Project 3.2 Pointe Controller User Guide Defining Input, Output, and Memory Tags The next thing that we’ll do is define our inputs, outputs and memory tags that we’ll need for this project. In general, you can do I/O and data memory definitions piecemeal, throughout the project development process – whenever you find you need another variable or I/O point.
Pointe Controller User Guide Chapter 3: Quickstart Project 2. Create a table entry for the first input tag (%IX1), either by clicking the Insert button or by incrementing the Size counter up to 1. 3. In the Alias field, enter the name of the input tag: InSwitch1. (You will need to click in the field before you can type in it.) Now go ahead and define the rest of the tag names for the input module, even though we’re not going to use them in this tutorial project.
Chapter 3: Quickstart Project Pointe Controller User Guide 4. Click the Copy button. The Copy Channels dialog box will appear. 5. Increment the Number of channels up to 7 and click OK. Seven more input tags will be defined in numerical order, copied from the original InSwitch. 6. Close the input tag editor window using the When asked to save changes, click Yes. 3.2.2 button in the corner.
Pointe Controller User Guide Chapter 3: Quickstart Project 3. In the Alias field, enter the name of the output tag: Myout1. You will need to click in the field before you can type in it. 4. Click the Copy button. The Copy Channels dialog box will appear. 5. Increment the Number of channels up to 7 and click OK. Seven more input tags will be defined in numerical order, copied from the original Myout. 6. Close the output tag editor window using the When asked to save changes, click Yes. 3.2.
Chapter 3: Quickstart Project 3.3 Pointe Controller User Guide Associating Tags with I/O Points At this point, we have tag-names defined. However, we haven’t configured our I/O and haven’t associated our tag-names with particular I/O points. Let’s do that now: 1. From the Project menu, choose Configure I/O. The I/O Configuration window will appear. 2. Next to Slot 1 module type, click the drop-down menu and select OL2201. This configures the OL2201 module in slot 1 of the Pointe Controller base unit.
Pointe Controller User Guide Chapter 3: Quickstart Project NOTE: Configuring slot 1 activates the I/O button to the right of the slot. 3. Click the I/O button for slot 1. The OL2201 I/O Map window will appear. At this point of our project development, we have defined input tag names and selected an input module. What we haven’t done is associate each input tag name with a particular point on the input module. That is what we will do now. 4. To the right of Input 1, click the will appear. button.
Chapter 3: Quickstart Project Pointe Controller User Guide 7. Click OK to close the OL2201 I/O Map window. Now repeat the procedure to associate the eight output tags with the OL2109 module in slot 2: 8. Next to Slot 2 module type, click the drop-down menu and select OL2109. This configures the OL2109 module in slot 2 of the Pointe Controller base unit. 9. Click the I/O button for slot 2. The OL2109 I/O Map window will appear. 10. To the right of Output 1, click the tags will appear. button.
Pointe Controller User Guide Chapter 3: Quickstart Project 12. Repeat steps 10 and 11 for each of the remaining seven outputs, associating MyOut2 to Output 2, MyOut3 to Output 3, and so on. 13. Click OK to close the OL2109 I/O Map window. 14. Click OK to close the I/O Configuration window.
Chapter 3: Quickstart Project 3.4 Pointe Controller User Guide Creating Your First Flow Chart We’re going to do our first application with a flow chart. To create a new flow chart: 1. In the project workspace window on the left, select Flow Chart. Then from the File menu, choose New. When you do this, a new flow chart will be created and added to the project tree.
Pointe Controller User Guide Chapter 3: Quickstart Project We could give our flow chart a name right now. In most cases, you would immediately name your flow chart based on the function it performs in your application. Typical names include “Gantry 1,” “IPA Tank,” “Purge Cycle,” and so on. We’re going to wait to give our program a name and use the default name “Chart1” for right now.
Chapter 3: Quickstart Project Pointe Controller User Guide 3. Double-click on the decision block to open its associated Block Properties window. The Block Properties window is where you define what the block will do. As you can see, there are a number of properties that you can configure. Caption determines the text description of the block. This is useful in documenting the project, but we shall leave it unchanged for now and come back to it later.
Pointe Controller User Guide Chapter 3: Quickstart Project When the property is changed, the Then and Else paths are switched. Timeout Value is an optional override that we won’t use here. Condition Type is an Expression (the default). We want to define our expression as “If InSwitch1 = ON”: 5. To the right of the Expression property, click the Condition window will appear. button. The Build 6. In the Arg Type list on the left, select Inputs. A list of available inputs will appear under Selection List.
Chapter 3: Quickstart Project Pointe Controller User Guide 8. Click the = button to add “=” to the condition. 9. Click the ON button to add “ON” to the condition. 10. Click OK to close the Build Condition window and enter the condition in the Expression property. 11. Close the Block Properties window.
Pointe Controller User Guide 3.5 Chapter 3: Quickstart Project Inserting a Second Decision Block So far, all we’ve done is check to see if InputSwitch1 is on. If it is on, we want to flash the first two output LEDs out of phase. To do so, we turn the first output on and the second off for a period of time, then turn the first output off and the second on for a time period. Our flow chart will use the flag that we previously defined, rightOn, to keep track of which state we are in. 1.
Chapter 3: Quickstart Project 3.6 Pointe Controller User Guide Assigning Outputs Now we are going to add the first of the two output patterns — turn off the first output LED (MyOut1) and turn on the second output LED (MyOut2). 1. Click the Process Block tool on the toolbar, and then click on the Then branch below your “rightON = TRUE” decision block. A new Process block will be inserted. 2. Open the Process block’s Block Properties window, as described previously. 3.
Pointe Controller User Guide Chapter 3: Quickstart Project 10. Move the cursor to the Expression field, either by clicking in it or by pressing the Tab key. 11. Click the OFF button to add “OFF” to the expression. 12. Click OK to close the Build Assignment window and enter the assigment in the Statement sub-property. 13. Now let’s add a second Assign command to this same Process block.
Chapter 3: Quickstart Project Pointe Controller User Guide 14. Click on and highlight the existing Command property, and then click the Insert button. A second Command property will be inserted. 15. Define the second Command property as “MyOut2 = ON,” as described previously. Now we have two Assign commands in the Process block, as shown below.
Pointe Controller User Guide Chapter 3: Quickstart Project Let’s add just one more statement to set rightOn to TRUE. This will force the decision block to take the other branch on the next scan through. In that branch, we’ll set the output states to the opposite values. That will create the flashing effect that we are looking to achieve. 16. Insert a third Command property, as described previously. 17. Define the third Command property as “rightOn = TRUE,” as described previously.
Chapter 3: Quickstart Project Pointe Controller User Guide The Process block should appear as shown below. 22. Close the Block Properties window. Looking at our flow chart, we can now see that if the toggle switch (InSwitch1) is on, then the output LEDs (MyOut1 and MyOut2) will flash back and forth. As soon as the chart reaches the end, it returns to the start and scans through again. If the toggle switch is off, then the output LEDs freeze in their last state until the switch is on again.
Pointe Controller User Guide 3.7 Chapter 3: Quickstart Project Adding a Time Delay Unfortunately, when the toggle switch is on, the output LEDs flash too rapidly for us to see. We need to put in a time delay of 500 milliseconds — just enough to slow the flashing to an observable speed. 1. Insert a new Process block after the two Process blocks that you defined earlier. NOTE: If you place the block in the wrong place, there are two ways to fix it.
Chapter 3: Quickstart Project Pointe Controller User Guide 5. In the Argument field, enter a numerical value of 500. 6. Click OK to close the Build Argument window and enter the argument in the Wait Value sub-property. 7. Close the Block Properties window. Your flow chart should now appear as shown below.
Pointe Controller User Guide 3.8 Chapter 3: Quickstart Project Checking the Chart Integrity The final step in entry, or modification, of a flow chart is an integrity check. This integrity check will automatically check the chart for errors in the flow chart function blocks. It will not tell you if your flow chart logic is correct – it will only tell you if the statements have been entered properly. To perform an integrity check, click the Check Integrity tool on the toolbar.
Chapter 3: Quickstart Project 3.9 Pointe Controller User Guide Building the Project Runtime Once all of the flow charts have been created, we are ready to build the project runtime. First, we must define the list of charts that make up the project. A project can be comprised of many flow charts and/or ladder diagrams. When a chart is created, it is not automatically added to the project list. This allows you to incrementally edit charts and keep optional charts within your development environment.
Pointe Controller User Guide Chapter 3: Quickstart Project The result should be as shown on the right. 3. Click OK to close the Chart List window. After you have configured the project’s chart list, you must define the scan parameters. Your project’s runtime operation actually occurs in a repetitive cycle of updating inputs, logic solve, updating outputs and communications. 4. From the Edit menu, choose Preferences. The Preferences window will appear.
Chapter 3: Quickstart Project Pointe Controller User Guide Controller Timeout Interval is a watchdog timer for the chart execution. If the chart logic solve is greater than this value the project will stop. Download Source when checked will send the project source code to the Pointe Controller. If this is un-checked the source will not be present in the Pointe Controller and the Pointe Control Monitor will not be able to view or debug the application.
Pointe Controller User Guide Chapter 3: Quickstart Project 3.10 Downloading and Running Your Program Downloading a finished program to the Pointe Controller unit is performed via the PointeControl Monitor. The Monitor is launched separately from the development framework, either by choosing it from the Windows Start menu (Start > Programs > PointeControl > Monitor), or by “activating” it from within the framework itself.
Chapter 3: Quickstart Project Pointe Controller User Guide Once the PointeControl Monitor window is active, you can download your project runtime to the Pointe Controller unit: 1. Click the Controller drop-down menu and select the Pointe Controller unit from the listed devices. 2. Click the Project drop-down menu and select your project runtime. If you have followed the examples given in the quickstart, your project runtime should be named “Mytest.” 3. Click the Load button.
Pointe Controller User Guide Chapter 3: Quickstart Project Controller’s Java-based processor. In most cases you can ignore these messages; they are useful only when troubleshooting a faulty download. A progress bar in the Pointe Control Monitor window shows your project runtime is downloaded to the Pointe Controller unit.
Chapter 3: Quickstart Project Pointe Controller User Guide When the download is complete, the Start button will become active. 4. Click the Start button to run the project. 5. Select the Charts tab, as shown below. The PointeControl Monitor window should show that your one chart (as configured in the Chart List) is running. The Pointe Controller unit is now executing your project as a real-time control progam.
Pointe Controller User Guide Chapter 3: Quickstart Project 3.11 Monitoring Your Program While It Runs From your PC, you can monitor logic flow, view snapshots of tag values, change tag values, set breakpoints, single-step through your program, and get performance and loading information. To monitor your program while it is running: 1. In the PointeControl Monitor window, click the Charts tab. A list of all currently running charts will be displayed. 2. In the Charts tab, double-click Chart1.
Chapter 3: Quickstart Project Pointe Controller User Guide 3. In the Chart1 monitor/debug window, click the Enable Logic Flow and Enable Debug Trace tools on the toolbar. You now have a snapshot of the program’s logic flow, highlighted in yellow and updated at a regular interval. The logic flow shown is the last 200 program blocks executed each time the monitor collects a snapshot. The snapshot is taken based on the Monitor update interval that you defined previously.
Pointe Controller User Guide Chapter 3: Quickstart Project 4. Double-click on any of the flow chart blocks (except the Start and Stop blocks). A Block Watch window for that block will appear, showing all of the tags referenced by that block. The Block Watch window shows all of the tags used in the block and the running value of each tag. NOTE: The value shown for each tag is not the real-time value of the tag as the Pointe Controller is actually executing the block.
Chapter 3: Quickstart Project Pointe Controller User Guide 3.12 Setting Breakpoints Sometimes you’ll want to check if your program gets to a particular point in your chart. You may also want to step through the execution of the program one block at a time in order to debug your logic. This is achieved by setting break points in the logic flow: 1. Make sure your program is running and Debug Trace is enabled. (See “Monitoring Your Program” above.) 2. Select a block in the flow chart.
Pointe Controller User Guide Chapter 3: Quickstart Project When you do this, an alert window will pop up on your screen, warning you that stopping the flow of a running program could cause problems (if you were actually controlling a machine) and asking you to verify that you do in fact want to insert the break point. 4. Click Yes. A break point will be set on the selected block.
Chapter 3: Quickstart Project Pointe Controller User Guide indicates that a break point is set for this block. The red diamond indicates that the program has hit the break point. Now that we have hit a break point, we can step through the program one block at a time: 5. Click the Single Step tool on the toolbar.
Pointe Controller User Guide Chapter 3: Quickstart Project 6. Continue to click the Single Step tool and watch the Pointe Controller step through your program. Each time you click the Single Step tool, the program will step to and highlight the next block in the flow. All blocks will execute as they normally would, updating tag values and changing outputs as they go. NOTE: You may wish to disable Debug Trace as you step through the program, in order to reduce screen clutter.
Chapter 4: System Design and Installation Pointe Controller User Guide Chapter 4: System Design and Installation Now that you understand the basics of the Pointe Controller, you can design a complete machine control system using it. Good system design includes defining your I/O needs, selecting the appropriate modules and panels, calculating the power budget of the system, wiring the I/O to the equipment, and observing proper safety guidelines.
Pointe Controller User Guide 4.1 Chapter 4: System Design and Installation Safety Guidelines WARNING: Providing a safe operating environment for personnel and equipment is your responsibility and should be your primary goal during system planning and installation. Automation systems can fail and may result in situations that can cause serious injury to personnel or damage to equipment. Do not rely on the automation system alone to provide a safe operating environment.
Chapter 4: System Design and Installation Pointe Controller User Guide Orderly System Shutdown The first level of protection can be provided with the Pointe Controller program by identifying machine problems. Analyze your application and identify any shutdown sequences that must be performed. Typical problems are jammed or missing parts, empty bins, etc. that do not pose a risk of personal injury or equipment damage.
Pointe Controller User Guide 4.2 Chapter 4: System Design and Installation Getting to Know the Pointe Controller Base The figure below shows the layout of a Pointe Controller base: The Pointe Controller base consists of a card cage containing the motherboard. The base unit has a built in Ethernet port, as well as an RS232 port. The Ethernet port is the interface to the larger system. The RS232 port is provided for general purpose communications (as defined by your application program).
Chapter 4: System Design and Installation 4.2.1 Pointe Controller User Guide PTC-5800 Pointe Controller Technical Description Physical (Base Unit) • DIN rail mount to 35mm DIN rail • Overall dimensions: 8.4”L x 3.25”H x 3.
Pointe Controller User Guide Chapter 4: System Design and Installation Communications, Ethernet • Type: 10Base-T Ethernet • Data Rate: 10 Mbps • Connection: RJ45 • Ethernet Protocols: TCP/IP, OptiLogic UDP/IP, Modbus TIP: For a complete description of Ethernet connections, see page 103. Communications, Serial • Baud rates: 300, 1200, 2400, 4800, 9600, 19.
Chapter 4: System Design and Installation 4.3 Pointe Controller User Guide Supplying Power to the Controller The Pointe Controller unit requires a 8-30VDC, 1 Amp power supply. This can be provided either by using a wall-pluggable AC adapter (part number OL-PS1) or by connecting the unit directly to a properly rated DC grid. The connection is made at the Power Input screw terminals located at the bottom left corner of the base unit. To connect a power supply to the controller: 1.
Pointe Controller User Guide 4.4 Chapter 4: System Design and Installation Installing the PointeControl Software The PointeControl software CD (part number NS-PTC) includes the control application development package and the various utilities needed to connect to and configure the Pointe Controller unit. System requirements: 200 MHz or faster Pentium processor Operating system (any one): o Microsoft Windows NT 4.
Chapter 4: System Design and Installation 4.5 Pointe Controller User Guide Addressing the Pointe Controller Each Pointe Controller unit has two distinct addresses: an IP address, for communicating across an Ethernet network; and a Modbus address, for communicating with serial Modbus devices such as operator panels and bar code readers. 4.5.1 IP Address The Pointe Controller unit comes preconfigured with a default IP address.
Pointe Controller User Guide Chapter 4: System Design and Installation The PointeControl/OptiLogic Update Tool application window appears. 4. Click Automatic Base Detection. The application should immediately connect to your Pointe Controller unit. If it does not, check your serial connection and try again. If it still cannot connect, click Manual Setup and select PTC5800 from the drop-down menu.
Chapter 4: System Design and Installation Pointe Controller User Guide When the application successfully connects, the following window will appear: The Read Current Settings pane displays the current address settings on the Pointe Controller unit. If you are addressing the unit for the first time, the factory default settings are displayed. 5. Under New Settings, enter the new IP address and subnet mask for the Pointe Controller unit. For example, an IP Address of “10.16.80.
Pointe Controller User Guide Chapter 4: System Design and Installation 6. For the Default Server IP Address, enter the IP address of the PC with which you are connecting to the Pointe Controller unit. For example, “10.16.80.69”. The secondary server is the PC to which the Pointe Controller unit will attempt to connect when it first powers on. 7. For the Node Name pane, enter the name by which the Pointe Controller unit will identify itself to PointeControl Monitor. For example, “Gundam.
Chapter 4: System Design and Installation 4.5.2 Pointe Controller User Guide Modbus Address The addressing that you, the system designer, must set is the address set via rotary address switches in the Pointe Controller base unit. Each controller in your system must have its own unique address. This address, a value between 00 and 97, is how the software in the master PC identifies each controller. NOTE: Addresses 98 and 99 are reserved for performing hardware resets. For more information, see page 230.
Pointe Controller User Guide 4.6 Chapter 4: System Design and Installation An Overview of OptiLogic I/O The Pointe Controller system achieves its modularity and flexibility by integrating with Optimation, Inc.’s complete line of OptiLogic I/O modules and operator panels. (Optimation is a wholly-owned subsidiary of Nematron.) OptiLogic components can be plugged together in nearly any combination. This chapter covers the currently available modules that plug into the card cage.
Chapter 4: System Design and Installation 4.6.1 Pointe Controller User Guide Digital Inputs Digital I/O modules are used to either monitor (input) or control (output) the “state” of something. “State” being on or off, active or inactive, open or closed — etc. In the “real world” digital I/O requirements come in a variety of shapes and sizes. Therefore, there are a variety of available modules designed to meet the variety of needs.
Pointe Controller User Guide Chapter 4: System Design and Installation Typical DC digital input circuits are shown below: As shown, the physical optical emitter on the input module is an LED (light emitting diode). OptiLogic DC inputs use bidirectional LEDs — i.e. Your inputs may either source or sink current. The top figure shows a sourcing input. The figure below it shows a sinking input. When inputs are connected to a “common” (most instances), inputs must be either all sourcing or all sinking.
Chapter 4: System Design and Installation Pointe Controller User Guide Digital Input Voltage Any digital input module, AC or DC, is designed to operate within an input voltage range. The input voltage directly controls the amount of current flowing through the circuit. The minimum voltage corresponds to a voltage that creates enough current to produce LED light sufficient to be sensed by the optical sensor.
Pointe Controller User Guide 4.6.2 Chapter 4: System Design and Installation Digital Outputs Digital outputs are used to turn “loads” on and off. “Loads” may be lights, motors, solenoids, or any type of on/off device found in the “real world.” Digital outputs in the OptiLogic series come in three types — relay, transistor and solid state relay. Each type has applications it is best suited for.
Chapter 4: System Design and Installation Pointe Controller User Guide When the contact is closed, the diode is reverse biased and no current flows through it. When the contact opens, current will continue to flow through the inductive load. The diode provides a path for current flow. The result that is the energy is dissipated in the inductive coil and not the relay contact. NOTE: Do not use this circuit for AC loads. Transistor Outputs An NPN transistor sinking output provides a path to ground.
Pointe Controller User Guide Chapter 4: System Design and Installation Solid State Relay Outputs Solid state relays are semiconductor switches that operate very much like mechanical relays. They have an advantage over mechanical relays by virtue of the fact that they are semiconductors. Solid state relays can be switched at relatively high frequencies and they do not wear out. However they are more expensive and there is a small voltage drop across the contact.
Chapter 4: System Design and Installation Pointe Controller User Guide via a switching power converter and a transformer. There are OptiLogic analog input modules in both categories. Neither is functionally superior to the other. The on-board power generation may save the cost of an additional external power supply.
Pointe Controller User Guide Chapter 4: System Design and Installation Accuracy Accuracy is expressed as the worst case deviation from the “ideal value” across the entire input range. For example, for a 0 to 5V input range and a 12-bit A/D module, a 2.0 volt input should yield a value equal to 1638 (0.4 x 4096). If it returns a value of 1636, and this is the worst case error across the entire range of 0 to 5V, the accuracy is 12 bits +/- 2 counts.
Chapter 4: System Design and Installation Pointe Controller User Guide In order to use single ended inputs, the ground connection must be very good. The measurement devices must also be capable of being referenced to a common ground. Differential Inputs There are cases when the individual analog inputs cannot be connected to a common ground. In those cases, a differential input A/D converter should be used.
Pointe Controller User Guide 4.7 Chapter 4: System Design and Installation Determining Your I/O Needs The Pointe Controller system offers the following ways to add I/O to the system: Local I/O – consists of I/O modules installed in the Pointe Controller unit itself. Remote I/O – consists of I/O modules installed in OptiLogic RTU bases connected to the Pointe Controller unit through the Ethernet network.
Chapter 4: System Design and Installation Pointe Controller User Guide OL2304 4 channel voltage output, 0-5V, 0-10V, +/-5V, +/-10V OL2408 8 channel 0-5VDC or 0-10VDC in OL2418 8 channel 4-20mA in Communications OL2602 4.7.
Pointe Controller User Guide Module Type Chapter 4: System Design and Installation Description Power Req.
Chapter 4: System Design and Installation 4.8 Pointe Controller User Guide Installing I/O Modules in the Controller Each Pointe Controller application will differ in the number and type of I/O modules, the operator panels used (if any) and how the devices must be distributed. The modular design of the Pointe Controller system allows you to mix and match to meet your exact application requirements.
Pointe Controller User Guide 4.8.2 Chapter 4: System Design and Installation Installing Modules Each slot has card guides along each side and a connector on the motherboard. To install an I/O module, place the module’s circuitry board in the top and bottom card guides. (Note that the board will not be tightly retained until it is approximately 3⁄4 inch into the card guide.) As you push the module into its mating connector, squeeze the ends together.
Chapter 4: System Design and Installation 4.9 Pointe Controller User Guide Mounting the Pointe Controller Pointe Controller units are intended to be mounted on a standard DIN rail. That DIN rail can be a commercial DIN rail attached to any flat surface. It can also be the DIN rail built into OptiLogic operator panels. 4.9.1 Mounting the Base on a DIN Rail A DIN rail is simply a standard “U” shaped channel which is designed to be mounted horizontally on any flat surface.
Pointe Controller User Guide Chapter 4: System Design and Installation Now, take a look at the bottom side of the controller base. It will appear as shown below: The DIN rail channel runs lengthwise across the middle of the base’s bottom side. At the top of that channel are three overhanging hooks. At the bottom of the channel there is a sliding retaining clip. The process of installing a base on a DIN rail is as follows: 1. Pull the retaining clip back from the center of the base.
Chapter 4: System Design and Installation Pointe Controller User Guide The mounting process is exactly the same as described for mounting to a DIN rail. Be sure that your orientation is right so the connectors on the base and the front panel line up. An Pointe Controller unit base attached to an OptiLogic operator panel should look like the figure below.
Pointe Controller User Guide Chapter 4: System Design and Installation 4.10 Connecting the Controller to Your Network An Ethernet network connection is used to download finished control applications from your PC to the Pointe Controller unit. It is also used to monitor the unit's runtime performance and to share Modbus TCP data between different control devices. An RJ-45 Ethernet port is located at the left side of the Pointe Controller unit.
Chapter 4: System Design and Installation Pointe Controller User Guide 4.10.2 Single Hub and Switched Connections The next level of complexity is a single hub or switch system. Hubs and switches are commonly available with anywhere from 4 to 24 connections. The multiple Ethernet ports on a hub allow physical star type network wiring. The hub is typically placed in the center of the system. Individual cables are run between the hub and each controller. Crossovers are made internal to the hub.
Pointe Controller User Guide Chapter 4: System Design and Installation 4.11 Ethernet Connection Guide Ethernet 10Base-T is a flexible, low cost method of cabling local area networks. Pointe Controller units must be connected using 10Base-T compatible products. All Ethernet 10Base-T implementation details are defined by the EIA/TIA standard 568A. This standard specifies UTP, an acronym for Unshielded Twisted Pair cable, to be between all nodes on a given 10Base-T network.
Chapter 4: System Design and Installation Pointe Controller User Guide 4.11.3 10Base-T Connections Most hardware ports on Ethernet 10Base-T equipment are wired MDI-X (meaning medium dependent interface crossover) so you can use straight-through cable for interconnecting the network devices. This allows for proper alignment of transmitter and receiver circuits according to 10Base-T networking standards. For hub-to-hub connections, a crossover type cable is commonly required.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Chapter 5: Developing Controller Programs Once you have your machine control system designed and your I/O selected and installed, you can proceed with developing the control program itself. Program development is done using the PointeControl Framework application that was installed on your PC from the PointeControl software CD.
Chapter 5: Developing Controller Programs 5.1 Pointe Controller User Guide Basic Concepts in PointeControl The PointeControl visual framework editor (VFE) provides the tools you need to design and compile machine control applications that can be run on Pointe Controller hardware products. In the framework editor, you create application projects made up of individual components — also called “objects — such as Flow Charts, Ladder Diagrams, and Logic Memory tables.
Pointe Controller User Guide 5.1.3 Chapter 5: Developing Controller Programs The Scan Cycle When a PointeControl project is executed on the controller, all of the Flow Charts, Ladder Diagrams, and I/O points that make up the project are “scanned at a specified speed and in a specified order. Inputs, charts, ladders and outputs are processed in a fixed sequence; each cycle through this sequence is called a logic scan. The general execution sequence is: 1.
Chapter 5: Developing Controller Programs 5.2 Pointe Controller User Guide The Visual Framework Editor (VFE) With the framework editor you create projects. PointeControl projects provide the instructions to implement a specific machine control sequence. You can make minor or full-scale changes as the control application undergoes periodic change or adjustment. The framework editor follows Windows NT/2000 user interface conventions to set up projects.
Pointe Controller User Guide 5.2.1 Chapter 5: Developing Controller Programs The Framework Editor toolbar The framework toolbar is located at the top of the main Framework Editor window. The buttons on the toolbar perform the following functions, from left to right: New Object Open Object These four buttons manage Flow Chart and Ladder Diagram objects in the project workspace pane.
Chapter 5: Developing Controller Programs Pointe Controller User Guide structure. You can then access each block's properties through a floating Block Properties box. NOTE: You can hide/show this pane by clicking the Project Workspace button in the toolbar. You can also adjust its size by dragging the right and bottom edges of the pane. 5.2.3 The Object Editor pane The object editor pane is a multi-function area that takes up most of the framework editor.
Pointe Controller User Guide 5.3 Chapter 5: Developing Controller Programs Managing PointeControl Projects A PointeControl project is a collection of Flow Charts, Ladder Diagrams, Logic Memory tables, I/O configurations, Modbus mappings, and assorted preferences that, when compiled, implements a specific machine control program on the Pointe Controller unit.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 2. In the Source box, select the Drive where the project you want to import is located. NOTE: The project must be located in a directory named OCProjects on that drive. (For example, A:\OCProjects.) 3. Choose the project you want to import from the Projects list. 4. Click Import to copy the project to your working directory. Export Project To export a PointeControl project from your working directory to another drive: 1.
Pointe Controller User Guide 5.4 Chapter 5: Developing Controller Programs Defining Variables in Logic Memory In PointeControl, Logic Memory is the database of all tags, variables, and data structures used in your program. Logic Memory is globally accessible, allowing all Flow Charts, Ladder Diagrams, and I/O points to communicate freely and continuously with each other using the same data in common.
Chapter 5: Developing Controller Programs Pointe Controller User Guide break double implements package throw byte else import private throws byvalue extends inner protected transient case false instanceof public true cast final int rest try catch finally interface return var char float long short void class for native static volatile const future new super while continue generic null switch Other reserved words in PointeControl: Chart, Project. 5.4.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Before you define any new tags, you should have some idea of what types and sizes are required by your control application. You can always define more tags later, but it makes for better application design to plan your tags in advance. To define new Input, Memory, or Output tags: 1. In the Project Workspace pane, double-click on Logic Memory to expand the hierarchy. 2.
Chapter 5: Developing Controller Programs Pointe Controller User Guide by Alias, it is not necessary to keep your tags in any particular address or DRV order. Diagnostics Metadata Every Input, Memory, and Output tag has associated with it three metadata registers. These registers are allocated automatically when the tag is first defined in Logic Memory, and they can be used to store diagnostic information about the tag. For more information, see Diagnostics Commands on page 316. 5.4.
Pointe Controller User Guide Chapter 5: Developing Controller Programs 6. If you want to set an initial value (i.e., the value to which the String will be set on program startup), click Modify and enter the value. 7. Repeat steps 3 through 6 as needed. 8. When finished, close the editor window. You will be prompted to save your changes. 5.4.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 3. Click in the Alias field of the empty address and enter a name for the Timer. The name must be a continuous alphanumeric string that does not begin with a number. NOTE: Aliases are case sensitive. 4. Click in the Preset field and enter timer preset (in milliseconds). 5. Repeat steps 3 and 4 as needed. 6. When finished, close the editor window. You will be prompted to save your changes. 5.4.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Wire – The tag’s wire label. Maximum of 10 characters. Must be enclosed in tildes (~xxx~). Optional, not used in PointeControl. Value – The initial value of the tag upon program start. Optional. Retain – A yes/no option to specify whether the tag should be retained in retentive memory. Optional, not used in PointeControl. String STRING—Alias—Length—Value STRING – Denotes that the line describes a String. Mandatory.
Chapter 5: Developing Controller Programs Pointe Controller User Guide Importing a Database To import a database file into a PointeControl project: 1. Format the database file as described above. 2. If a project is open in PointeControl, close it (File > Close Project). If you do not close the project, you will not be able to import to it. 3. From the File menu, choose Import Database. The Import Database dialog will appear. 4. Under File name, enter the file name of the database file to be imported.
Pointe Controller User Guide 5.5 Chapter 5: Developing Controller Programs Associating Tags with I/O points I/O points are the many input and output channels that are made available to your control application when you install OptiLogic I/O modules and operator panels in your Pointe Controller unit. Each point is associated with a tag in your project’s Logic Memory database. Your project controls these points by reading from and writing to the associated tags.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 2. From the Project menu, choose Configure I/O. The I/O Configuration window appears.
Pointe Controller User Guide Chapter 5: Developing Controller Programs 3. Starting with Slot 1 module type, click on the drop-down menu to get a list of available I/O modules.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 4. Select the model number that corresponds to the I/O module that is actually installed in the first slot in the Pointe Controller unit. In this example, an OL2201 Digital Input module is selected. 5. Continue through the rest of the slots (1 through 8), selecting the model numbers that correspond to the installed modules. If no module is installed in a given slot, then skip it.
Pointe Controller User Guide Chapter 5: Developing Controller Programs 6. To the right of Panel type, click on the drop-down to get a list of available operator panels. This list will be different from the list of I/O modules above.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 7. Select the model number that corresponds to the operator panel, if any, that is actually connected to your Pointe Controller unit. In this example, an OL3850 Operator Terminal is selected. 8. Proceed to Configuring I/O modules, or click OK to save your changes and close the window.
Pointe Controller User Guide 5.5.2 Chapter 5: Developing Controller Programs Configuring I/O modules For each I/O module that you have specified as being installed in your Pointe Controller unit, you must configure that module’s individual settings and I/O points to work with your project. The configuration options are accessed by clicking on the I/O button to the right of the module.
Chapter 5: Developing Controller Programs 5.5.3 Pointe Controller User Guide Configuring operator panels If you have specified an operator panel as being connected to your Pointe Controller unit, you must configure its individual settings and I/O points to work with your project. The configuration options are accessed by clicking on the I/O button to the right of the panel.
Pointe Controller User Guide 5.6 Chapter 5: Developing Controller Programs Building and Editing Flow Charts Flow Charts depict various types of information and control processing problems and their means of solution. Charts consist of symbols having a given signification, brief explanatory text, and connecting lines. Each symbol relates to an unambiguous and meaningful name that is consistent throughout the charts. The connecting lines show the path of execution through the chart.
Chapter 5: Developing Controller Programs Pointe Controller User Guide Flow Chart Blocks Flow charts contain distinct block types: Process, Terminator, Decision blocks, and Subcharts. Rectangles with the entry point at the top and the exit point at the bottom represent Process blocks: Each Process block contains a description of the action or actions to be taken. The same Process block can contain multiple commands, with each command executing sequentially.
Pointe Controller User Guide Chapter 5: Developing Controller Programs With Subchart blocks you can add calls to other charts: You can place multiple Subchart blocks in a single Flow Chart. 5.6.1 Creating a new Flow Chart To create a new Flow Chart: 1. In the Project Workspace pane, select Flow Chart. 2. Click the New Object tool in the Framework Editor toolbar, or choose New from the File menu. A new Flow Chart with a default name (ChartN) will be added to the project hierarchy.
Chapter 5: Developing Controller Programs 5.6.2 Pointe Controller User Guide Navigating the Flow Chart editor The Flow Chart editor window includes a work area and the tools you need to create an executable chart. With the window's special set of tools, you add and define the blocks that represent the program flow of interrelated tasks. Object-oriented flowcharting gives you freedom to easily establish your chart’s structure.
Pointe Controller User Guide Chapter 5: Developing Controller Programs 2. Click and drag the adjust pane size bar to the right. The special view pane appears as the workspace slides to the right. TIP: If the entire Flow Chart editor window moves, you have grabbed the left side of the window, not the adjust pane size bar. Move the cursor slightly to the right and try again.
Chapter 5: Developing Controller Programs Pointe Controller User Guide When you select ST Code View, a representation of the chart appears in IEC-1131 structured text source code: The editor automatically updates the code view as you make changes to the chart. When you select Hide, the special view pane no longer appears. The Flow Chart toolbar Access the Flow Chart programming tools from this bar.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Zoom In The Zoom In and Zoom Out tools expand and reduce the image of your Flow Chart in the workspace, making it easier to review large sections of the logic flow at a glance. [page 177] Zoom Out 5.6.3 Replace Text The Replace Text tool finds and replaces all instances of specified text within the current chart. [page 177] Toggle Labels The Toggle Labels tool turns on/off the display of block Captions in the editor window.
Chapter 5: Developing Controller Programs Pointe Controller User Guide the selected block appears in the window; the types of attributes listed depend on the type of block selected. The window provides editing controls and fields that allow you to specify what actions occur or what conditions are tested when the runtime system executes a block: The list buttons modify the command list in Process blocks and the argument lists in subchart Start blocks.
Pointe Controller User Guide Chapter 5: Developing Controller Programs For all blocks and commands, you enter tags and expressions through a similar dialog box. Although these dialog boxes vary slightly depending on the required response, they all contain a keypad and an area to enter an expression. The keypad allows you to build an expression using the mouse rather than the keyboard.
Chapter 5: Developing Controller Programs Pointe Controller User Guide String functions: • COMPARE(string1, string2) compares two strings, returning –1 when string1 is ‘less than’ string2, 0 when the strings are identical, and 1 when string1 is ‘greater than’ string2. • FIND(string1, string2) returns the position in string1 where string2 is first found. If string2 is not found, the return is 0. • LEN(string) returns the length of the specified string.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Expression Syntax In many instances, expressions can replace a single value or tag reference. Enter expressions as free form text; they may be arithmetic or logical in nature. All expressions produce a numeric result—either the actual result of the arithmetic calculation, or the true/false result of a logical expression, where true is 1 and false is 0.
Chapter 5: Developing Controller Programs Pointe Controller User Guide EXPRESSION TYPE OPERATORS relational a < b (less than) a <= b (less than or equal to) a > b (greater than) a >= b (greater than or equal to) a = b (equal to) a <> b (not equal to) bitwise a AND b (bitwise AND) a OR b (bitwise inclusive OR) a XOR b (bitwise exclusive OR) logical NOT a (logical NOT) Calling Subcharts The Build Argument dialog also appears when you define arguments to pass to a called subchart.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Other Build Dialogs Certain block properties present customized “build” dialogs, other than the standard Build Expression dialog. These other dialogs are described below. Build Assignment The Build Assignment dialog appears when you define an Assign command in a Process block. A statement assigns the specified Expression value to the specified Tag. You can only enter one tag reference in the Tag field.
Chapter 5: Developing Controller Programs Pointe Controller User Guide Select String Tag and Build String Argument When you select a String command in a Process block, a list of parameter types for that command appears. The first parameter, Destination String, displays a String Tag Select dialog when selected. You can enter only one tag reference as the string tag field. The second and following parameters that appear depend on the selected string command.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Build Condition The following dialog boxes appear, depending on the Condition Type you select for a decision block of If/Then, Repeat/Until, or While Loop: For a Condition Type of Expression, the Build Condition dialog appears: This dialog includes one text entry field, Condition, which must include some relational operator (e.g. =, <, >, ≠) to be evaluated.
Chapter 5: Developing Controller Programs Pointe Controller User Guide NOTE: If you select a decision block (If/Then, Repeat/Until, or While/Do), then all of the blocks contained within the decision block’s loop are also selected. These contained blocks are marked in yellow rather than green. Moving a selected block To move a selected block or group of blocks, click on it and drag it to a new location in the chart. You must place the moved blocks onto a flowline.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Deleting a selected block There are many different ways to delete a selected block or group of blocks: Click either the Cut Object tool or the Delete Object tool on the framework toolbar. Cutting a block places it on the clipboard. Deleting a block does not place it on the clipboard. Choose either Cut or Delete from the Edit menu. Cutting a block places it on the clipboard. Deleting a block does not place it on the clipboard.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 4. Double-click on the Comment block to open its Block Properties window. 5. Complete the block properties for the selected comment. 6. Close the Block Properties window. If your comments should run larger than the limits of the block, you can resize the block. Text automatically reflows according to the size and shape of the comment block. 5.6.
Pointe Controller User Guide Chapter 5: Developing Controller Programs To enable audit log processing for a Flow Chart, click the View Change History button on the chart’s toolbar: A notice appears that gives you the option of enabling audit log processing. NOTE: Once this feature is enabled, it cannot be disabled. Once enabled, you are required to enter a comment on changes made to the chart each time you close the Flow Chart editor window (and save changes).
Chapter 5: Developing Controller Programs Pointe Controller User Guide To make a Flow Chart a reusable Subchart: 1. Double-click on the chart’s Start block to open its Block Properties window. 2. Click the Chart Type property and select Subchart from the drop-down menu. The Arguments and Local Vars properties are added to the window. 3. Define the arguments and local variables to be used by the Subchart: a. Select Arguments or Local Vars.
Pointe Controller User Guide Chapter 5: Developing Controller Programs b. Click Insert to add a new argument. c. From the tag type drop-down list, select the argument type. In this example, DINT (32 Bit Signed ) is selected: For more information on configuring arguments, see “A Note on Arguments” below. d. In the variable’s text entry box (right column), enter a name to describe the tag. In this example, “totalElapsed” is entered: e.
Chapter 5: Developing Controller Programs Pointe Controller User Guide A Note on Arguments When you define an argument in the Subchart’s Start block, you are merely setting it up to receive some value or variable that will be passed from the calling Flow Chart. The actual value of that argument is defined in the Flow Chart’s Subchart block.
Pointe Controller User Guide Chapter 5: Developing Controller Programs 5.7 Types of Flow Chart Blocks 5.7.1 Process Block Process blocks define commands in your control program logic. You can add an unlimited number of the 41 available commands to a single Process block. Upon encountering a Process block, the program executes the commands in their order of appearance, from top to bottom, in the Block Properties window. PROPERTY WHAT YOU ENTER Caption User label for the block.
Chapter 5: Developing Controller Programs 152 Pointe Controller User Guide Timer Commands [page 303] String Commands [page 306] Diagnostics Commands [page 316] Serial Commands [page 321] Date/Time Commands [page 330] Operator Panel Commands [p.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Process Block Example Program flow enters the process block at the top and executes the commands as they are listed, from top to bottom. The command, Timer Stop, freezes the specified timer, timer1. The command, Timer Preset, sets the specified timer (loads Preset), timer1, to the value contained in the specified tag, test1. The command, Timer Start, restarts the specified timer, timer1.
Chapter 5: Developing Controller Programs 5.7.2 Pointe Controller User Guide Terminator Block Terminator blocks define the start and exit points of a Flow Chart. Each chart has one Start block and at least one Return block. Start blocks for subcharts contain important information about chart-specific tags (see below). Start Block Properties: PROPERTY WHAT YOU ENTER Caption User label for the block. Name Name of the Flow Chart, as it appears in the Project Workspace pane.
Pointe Controller User Guide Chapter 5: Developing Controller Programs PROPERTY WHAT YOU ENTER Run Criteria Presents Build Condition dialog to specify a condition that must be true for the program chart to execute. Run criteria are always evaluated on start of execution at the beginning of a chart. You can also elect to evaluate run criteria each time a chart returns from a yield (for example, inside a loop or wait operation) by selecting the option in the Flowchart Preferences dialog box.
Chapter 5: Developing Controller Programs 5.7.3 Pointe Controller User Guide Condition (If/Then/Else) Block A Condition block contains a Yes or No type question that directs program flow in one of two directions. When the specified condition evaluates to a non-zero value, program flow proceeds down the true branch. By default, the true branch is labeled “Then” and the false branch is labeled “Else,” to correspond to the if-then-else programming construct.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Condition Block Example This decision block determines if Input_1 is ON or OFF. If Input_1 is ON, program flow continues through the Flowline labeled Then. If Input_1 is OFF, flow continues through the flowline labeled Else. The LineLabels property specifies a Then label for the flowline followed from a true or on condition and an Else label for the flowline followed from a false or off condition.
Chapter 5: Developing Controller Programs 5.7.4 Pointe Controller User Guide Repeat/Until Loop Block The Repeat/Until Loop block represents a repetitive process, where the block checks the condition at the bottom of the loop, ensuring that the chart executes the sequence of instructions at least once. If the condition at the bottom of the loop is true, program flow continues at the next block in the chart. If the condition is false, control returns to the top of the loop.
Pointe Controller User Guide Chapter 5: Developing Controller Programs yes, program flow continues through the Flowline labeled Done. If Input_2 is less than 20, flow yields to the next chart, then returns to the flowline Repeat to again increment and check Input_2 until the required count is reached. 5.7.
Chapter 5: Developing Controller Programs Pointe Controller User Guide PROPERTY WHAT YOU ENTER Condition Type Type of Condition: Expression – Build a conditional expression using the Build Condition dialog. Diag Fault Bit Test – Select an Input, Memory, or Output tag and test to see if its Diag Fault Bit is set or clear. If the condition evaluates true, then the Do/On line is followed. If the condition evaluates false, then the Done/Off line is followed.
Pointe Controller User Guide 5.7.6 Chapter 5: Developing Controller Programs Subchart Block A Subchart block makes a call to a previously defined subchart, analogous to a call to a subroutine in a programming language. When program flow reaches a Subchart block, the chart transfers program flow to the Start block in the called subchart. Program flow continues from that point until reaching a Return block.
Chapter 5: Developing Controller Programs Pointe Controller User Guide Subchart Example This subchart block calls the function chart, Motion. Program flow enters the block at the top and jumps to the Motion chart’s start block. The subchart block passes each argument, listed in the Block Properties box (Invert becomes ON, Max_Time becomes 100, etc.) to that particular call of the Motion chart. Program flow continues through the Motion chart until reaching a return block.
Pointe Controller User Guide 5.8 Chapter 5: Developing Controller Programs Building and Editing Ladder Diagrams A Ladder Diagram is a program component written using traditional Relay Ladder Logic. The ladder is made up of sequential rungs, and each rung is made up of sequential function blocks. Ladders are executed from top to bottom, one rung at a time. 5.8.1 Creating a new Ladder Diagram To create a new Ladder Diagram: 3. In the Project Workspace pane, select Ladder Diagram. 4.
Chapter 5: Developing Controller Programs 5.8.2 Pointe Controller User Guide Navigating the Ladder Diagram editor As a resource of PointeControl, ladder diagrams appear in the resource tree of the PointeControl framework. Expanding the ladder diagrams entry in the resource tree shows the diagrams included with the project. Double clicking on one of the listed diagrams will activate the ladder editor and load the selected diagram.
Pointe Controller User Guide Chapter 5: Developing Controller Programs The workspace area is shared with a cross-reference window and a code view window in which the structured text equivalent of the ladder diagram can be viewed. The Show Cross Reference tool (see subsequent paragraphs describing the editor tools) activates the cross-reference window. Dragging the splitter bar on the left side of the editor workspace to the right reveals the code view window.
Chapter 5: Developing Controller Programs Pointe Controller User Guide The tools are, from left to right: Select Delete Relays and Coils Timer and Counter These two buttons are used to select and delete elements in the Ladder Diagram. [page 168] These nine buttons are used to access the various libraries of Ladder Diagram function blocks.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Adding a branch to an existing rung Branches may be added to rungs using the Branch Rung tool. This tool, when selected, allows you to click anywhere on a rung to select one endpoint for the branch. An arc then appears between the endpoint and the cursor position showing the path the branch will take. Now click on the rung to define the other branch endpoint. When a valid endpoint is specified the branch will be drawn.
Chapter 5: Developing Controller Programs Pointe Controller User Guide edited. As each of the configuration fields is selected the title bar of the browser updates to show the name of the field being edited. Use of the browser is optional – each of the configurator fields allows direct type-in. Validation is performed on each field and the configurator OK button is enabled only when all fields contain legal entries or blanks.
Pointe Controller User Guide Chapter 5: Developing Controller Programs Deleting elements Selected elements may be deleted using the Delete tool. Object deletion is also possible using the Edit menu or the keyboard DEL key. Be advised that element deletion is not undoable. Unlike cutting an element, the Delete action does not place a copy of the element in the clipboard. 5.8.
Chapter 5: Developing Controller Programs 5.8.7 Pointe Controller User Guide Making a Ladder Diagram a reusable Sub-Ladder Create Sub-Ladders to reuse common Ladder Diagram programming. This reuse speeds development and testing, since you only create and debug a chart once. To convert an existing Ladder Diagram into a reusable Sub-Ladder: 1. Select and open the desired Ladder Diagram from the Project Workspace pane. 2.
Pointe Controller User Guide 5.9 Chapter 5: Developing Controller Programs Types of Ladder Diagram Blocks To make it easier to select from the 79 available Ladder Diagram blocks, they are grouped into nine block types or libraries. These libraries can be accessed by selecting the corresponding tools from the Ladder Diagram toolbar: Clicking on a library toolbar button will make that library’s own toolbar appear just below the main Library Diagram toolbar.
Chapter 5: Developing Controller Programs TOOL 5.9.2 DESCRIPTION Pointe Controller User Guide FOUND ON... Rising Edge Detector Page 345 Set-Dominant Bistable Page 346 Reset-Dominant Bistable Page 348 Timer and Counter Blocks Clicking on this toolbar button activates the Timer and Counter Blocks toolbar, which allows the placement of timing and counting functions in your ladder diagram. This library includes the following blocks: TOOL 5.9.3 DESCRIPTION FOUND ON...
Pointe Controller User Guide Chapter 5: Developing Controller Programs TOOL 5.9.4 DESCRIPTION FOUND ON...
Chapter 5: Developing Controller Programs TOOL 5.9.5 DESCRIPTION Pointe Controller User Guide FOUND ON... Greater Than or Equal to Page 382 Equal to Page 383 Not Equal to Page 385 Less Than or Equal to Page 386 Less Than Page 387 Logical and Bit Shift Blocks Clicking on this toolbar button activates the Logical and Bit Shift Blocks toolbar, which allows the placement of function block objects in the ladder diagram that perform Boolean and/or bit oriented functions.
Pointe Controller User Guide Chapter 5: Developing Controller Programs This library includes the following blocks: TOOL 5.9.7 DESCRIPTION FOUND ON... Select minimum value Page 402 Select maximum value Page 403 Limit value Page 405 Select one of two values Page 406 String Blocks Clicking on this toolbar button activates the String Blocks toolbar, which allows the placement of string operations in your ladder diagram. This library includes the following blocks: TOOL DESCRIPTION FOUND ON...
Chapter 5: Developing Controller Programs 5.9.8 Pointe Controller User Guide Flow Control Blocks Clicking on this toolbar button activates the Flow Control Blocks toolbar, which allows the placement of command objects that control execution flow of the ladder diagram. These objects alter the standard left to right, top to bottom execution of the diagram. The library includes the following blocks: TOOL 5.9.9 DESCRIPTION FOUND ON...
Pointe Controller User Guide Chapter 5: Developing Controller Programs 5.10 Other Framework Editor Tools 5.10.1 Finding and replacing text Text strings within the active ladder diagram can be replaced with other strings using the Replace Text tool. This contrasts with the Replace Text in Project command that is available in the Edit menu, which replaces text throughout the project.
Chapter 5: Developing Controller Programs Pointe Controller User Guide 5.10.3 Viewing tag cross references A cross-reference of all Logic Memory tags and variables used within the active Flow Chart or Ladder Diagram can be shown or hidden using the Show Cross-Reference tool. The cross-reference appears on the left side of the editor workspace and consists of a tree of all database alias tags.
Pointe Controller User Guide Chapter 5: Developing Controller Programs 5.11 Compliing Your PointeControl Project After you have developed your project, you can compile it into a finished program and download it to your Pointe Controller unit for execution. To compile your PointeControl project for download: 1. Configure your Chart List. 2. Set your Scan Interval. 3. Build your runtime module. 4. Activate the PointeControl Monitor.
Chapter 5: Developing Controller Programs Pointe Controller User Guide NOTE: This action only removes the chart from the project’s Chart List. It does not delete the chart from the project. To delete a chart from the project, see Deleting an object from your project. 6. When you are satisfied with the configuration of the Chart List, click OK to save your changes and close the window. If you are doing a full compile of your project, then proceed to Setting your project’s scan interval. 5.11.
Pointe Controller User Guide Chapter 5: Developing Controller Programs For more information on using PointeControl Monitor, see Chapters 6 and 7. If you are doing a full compile of your project, then proceed to Checking your project's chart integrity. 5.11.3 Checking your project’s chart integrity PointeControl includes a built-in syntax checker that scans your Flow Charts and Ladder Diagrams for missing, incorrect, or undefined tags and block parameters.
Chapter 5: Developing Controller Programs Pointe Controller User Guide Java compilation errors You must fix all errors before you can try again to build the runtime module. Once the runtime module is successfully built, proceed to Activating the PointeControl Monitor. 5.11.5 Activating the PointeControl Monitor After you have built your project’s runtime module, click the Activate Monitor toolbar button to launch the PointeControl Monitor utility.
Pointe Controller User Guide Chapter 6: Downloading to the Controller Chapter 6: Downloading to the Controller When you have finished developing and compiling your control program, you must use the PointeControl Monitor application to download it to the Pointe Controller unit. PointeControl Monitor (referred to hereafter as PCM) is a Javabased utility for loading, running, monitoring, and debugging projects on Pointe Controller units.
Chapter 6: Downloading to the Controller 6.1 Pointe Controller User Guide Launching the PointeControl Monitor To launch PCM from within the PointeControl development framework, either click the Activate Monitor toolbar button or choose Activate Monitor from the Window menu. To launch PCM from the Windows Start menu, choose Start > Programs > PointeControl > M o n i t o r. When you launch PCM, the PointeControl Monitor window appears: The PointeControl Monitor window is roughly divded into two halves.
Pointe Controller User Guide 6.2 Chapter 6: Downloading to the Controller Selecting and Attaching a Controller PCM can interact with any Pointe Controller unit on the local Ethernet network. However, PCM launches in a blank state and must establish an exclusive connection with a specific controller in order for this interaction to occur. Establishing this connection is called “attaching to the controller. To select and attach a controller: 1. Click the Controller drop-down menu.
Chapter 6: Downloading to the Controller 6.2.1 Pointe Controller User Guide Detaching from a controller When PCM is attached to a specific Pointe Controller unit, it disables the Controller drop-down menu to prevent you from accidentally disrupting communications with the controller. You must explicitly detach from the currently attached controller before you can select another. To detach from a controller, click the Detach button to the right of the Controller drop-down menu.
Pointe Controller User Guide 6.3 Chapter 6: Downloading to the Controller Downloading a Project to the Controller After PCM is attached to a specific Pointe Controller unit, you can select a compiled project from your PointeControl working directory and download it to the controller. Downloading a new project will completely overwrite any existing project on the controller. To download a project to the controller: 1. Verify that PCM is attached to the target controller. 2.
Chapter 6: Downloading to the Controller 6.4 Pointe Controller User Guide Starting and Stopping a Loaded Project Once a project is loaded onto the Pointe Controller unit, it’s a very easy matter to start the project: 1. Verify that PCM is attached to the target controller and your project is loaded onto it. 2. From the Execution mode drop-down menu, select either I/O Enabled or I/O Disabled: In I/O Enabled mode, the controller will scan all I/O points and execute charts using live data.
Pointe Controller User Guide 6.4.3 Chapter 6: Downloading to the Controller Enabling and disabling I/O You can change the controller execution mode (i.e., whether real I/O scanning is enabled or disabled) any time the project is stopped – for example, if you began your debugging with I/O disabled and now want to enable it. To change the execution mode: 1. Verify that PCM is attached to the target controller and your project is loaded and running. 2. Click the Stop button. 3.
Chapter 6: Downloading to the Controller 6.5 Pointe Controller User Guide Assigning a Password to the Controller You can secure one or more Pointe Controller units against unauthorized access by assigning passwords to them. You can assign the same password to a group of controllers by first creating the password in PCM and then assigning it to each controller in the group. Once a password is assigned to a controller, you must have that password set in PCM before you can reattach the controller.
Pointe Controller User Guide 6.5.1 Chapter 6: Downloading to the Controller Overriding a password If you cannot remember a controller’s password, you can bypass it via hardware override. To override the password on a controller: 1. Power off the affected controller. 2. Change the controller’s Modbus address to “98,” using the rotary switches located on the controller’s motherboard. 3. Power on the controller. 4. Launch PCM, attach the controller, and clear the password. 5. Power off the controller. 6.
Chapter 6: Downloading to the Controller 6.6 Pointe Controller User Guide Saving a Project from the Controller If you wish to edit a project that was not developed on your own PC, you can retrieve the project’s source code from the controller and save it in your PointeControl working directory. From there, it can be opened normally in the PointeControl development framework. To save a project from the controller: 1. Verify that PCM is attached to the target controller. 2.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging Chapter 7: Monitoring and Debugging One of the powerful features of PointeControl is the ability to monitor and debug program operations while they are running on the Pointe Controller unit. This chapter is divided into two sections: Monitoring a running project – This section describes how to use PCM’s built-in tools to monitor the status and performance of the project while it is running on the Pointe Controller unit.
Chapter 7: Monitoring and Debugging 7.1 Pointe Controller User Guide Monitoring a Running Project After you have loaded and started a project on your Pointe Controller unit, you can monitor the project’s behavior using the tools included in PCM. These tools are accessible through the four tabbed panes along the bottom of the PCM window: The Charts tab lists all of the Flow Charts and Ladder Diagrams that are running in the current project.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging State – The current state (READY, RUNNING, etc) of the chart. Block (optional) – If logic flow is enabled in the debugger, then this column shows which block in the chart is currently being executed. Execution Time (optional) – If diagnostic timers are enabled in the debugger, then this column shows the total time to execute the chart. To open any chart for viewing and/or debugging, simply double-click on it.
Chapter 7: Monitoring and Debugging Pointe Controller User Guide 2. Select the classes and types of tags for which you want to search by clicking the corresponding checkboxes. For example, to search for all Input Bit and Output Bit tags, click the Inputs, Outputs, and Bits checkboxes: 3. Click the Search results tab. The tags that match the selected types will be listed.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging Showing tag details Once you have your search results, you can double-click on any listed tag (or right-click and choose Show Details) to open a new window that shows detailed information about the tag: From this window you can also force the tag to a new value – but for more information on that, see “Forcing new tag values” on page 212.
Chapter 7: Monitoring and Debugging Pointe Controller User Guide Just as in the Search results tab, you can double-click on any listed tag to open a new window that shows detailed information about the tag. After you have built your Watch Window, you can save its configuration as a .WWD file in your project’s working directory. You can do this either by choosing File > Save or by closing the window and clicking Yes when prompted.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging another application such as MS Word or Notepad. If you choose Save As, then you will be prompted to save the selection as a text file. If no specific messages are selected, then the entire backlog will be copied/saved. You can also clear the log by right-clicking and choosing Clear.
Chapter 7: Monitoring and Debugging Code Pointe Controller User Guide Name Description 17 TNT_WRITE_ERR CRA error - unable to perform write 18 TNT_READWRITE_ERR CRA error - unable to perform read/write (query) 19 TNT_CRA_NAMES_ERR CRA error - unable to retrieve names 20 TNT_INV_DEFINITION Invalid structure definition 21 TNT_INV_REFERENCE Invalid structure reference 22 TNT_NOT_AVAILABLE Data is not available at this time 23 TNT_CRA_GETNAMES_ERR CRA error - unable to access directory
Pointe Controller User Guide 7.1.4 Chapter 7: Monitoring and Debugging The Controller Log Tab The Controller Log tab shows the activity log of the currently attached controller. Logged activities include project loads and unloads, project starts and stops, password group changes, and so on. The 25 most recent messages are retained in the controller’s flash memory. For more information on interpreting controller log messages, see Chapter 9, “Troubleshooting,” starting on page 227.
Chapter 7: Monitoring and Debugging 7.2 Pointe Controller User Guide Checking System Performance You can check the system performance of an attached Pointe Controller unit by opening the Performance Metrics window: From the View menu, choose System Performance. The Performance Metrics window will appear. The Performance Metrics window offers three tabs: Scanning, Loading, and Errors. 7.2.
Pointe Controller User Guide 7.2.2 Chapter 7: Monitoring and Debugging Loading The Loading tab shows how much load each PointeControl task is putting on the controller’s processor. Each task’s load is expressed as a percentage of the processor’s total available resources: Chart/Ladder execution is the load to process the Flow Charts and Ladder Diagrams that make up the currently running project. Debug interface is the load to interface with the Monitor’s debugging tools.
Chapter 7: Monitoring and Debugging 7.2.3 Pointe Controller User Guide Errors The Errors tab shows the current status of the I/O modules, operator panel, and OptiLogic RTUs connected to the controller, as well as the total number of communications errors encountered by each device since the current project was started. Status is the current operating condition of the given module. Errors is the current “streak of consecutive errors. Peak is the longest streak encountered since the project was started.
Pointe Controller User Guide 7.3 Chapter 7: Monitoring and Debugging Viewing and Debugging Charts You can open any chart for viewing and debugging by double-clicking on the chart in the Charts tab. The chart will be opened into a new Debugger window: The Debugger window displays a real-time view of the selected chart’s activity and provides tools to interactively control the program flow. The Debugger window highlights the currently active block.
Chapter 7: Monitoring and Debugging 7.3.1 Pointe Controller User Guide The Debugger Window The Debugger window displays a real-time view of the selected chart’s activity and provides tools to interactively control the program flow. The currently active block is always highlighted; as the program flows, different blocks are highlighted as they become active. A toolbar containing icons for each of the tools available to the debugger appears below the title bar.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging To view the activity of a particular block in the chart displayed in the Debugger window, double-click on that block. A Block Watch Window for that block will be displayed. The window lists all of the Logic Memory tags, strings, and timers that are read or updated by the selected block. The value of each tag is dynamically updated as the value changes within the program flow. 7.3.
Chapter 7: Monitoring and Debugging Pointe Controller User Guide restored in the Debugger window, with magnification and scroll position intact. NOTE: The Open Subchart tool is enabled only when a calling block (Subchart block in Flow Charts, CALL function block in Ladder Diagrams) is selected. The Close Subchart tool is enabled only when the subchart is open in the Debugger window. 7.3.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging block is executed, and the information can be displayed either as a visible path in the debugger window (Show Debug Trace) or as tabular data (View Debug Trace). Up to 1000 steps (records) can be saved in a circular memory buffer; if more than 1000 steps are recorded, the trace overwrites from the beginning of the buffer. The buffer is reset for each new scan of the chart.
Chapter 7: Monitoring and Debugging 7.3.6 Pointe Controller User Guide Inserting Breakpoints in a Chart Breakpoints may be set and cleared on selected blocks using the Insert/Remove Breakpoint tool. Selection of a block enables the tool. Clicking the tool toggles the breakpoint status of the block. NOTE: Breakpoints can be inserted only when Logic Flow is enabled. When a breakpoint is set, the block is shown with a red background.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging within the executing OpenControl project. Selecting the tool activates the Breakpoint List dialog. This dialog will float on top of all OpenControl runtime windows, so selecting another debugger window or the OC Monitor will not hide the breakpoint list.
Chapter 7: Monitoring and Debugging Pointe Controller User Guide The numbers indicate the order in which the contacts are executed. As is shown, the ordering is from innermost branch to outermost branch. The main branch is followed until a merge point, at which the preceding split point is found and its branch followed. Run to Cursor A third option is to execute all the way up to a specific block in the chart, by selecting the desired block and clicking the Run to Cursor tool.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging Input, Output, and Memory tags To force a new value for an Input, Output, or Memory tag: 1. Open the tag by double-clicking on it in the Browser tab, in the main Watch Window, or in an individual Block Watch Window. The tag’s detail window will be displayed.
Chapter 7: Monitoring and Debugging Pointe Controller User Guide 2. Click the Toggle Force State button. This will lock the tag against updates that may be made by the normal execution of your project. 3. Enter the New value and press return. The tag will be immediately changed from its previous value to the new value. To remove the force, simply click the Toggle Force State button again. The value will then be overwritten by the normal execution of the project.
Pointe Controller User Guide Chapter 7: Monitoring and Debugging NOTE: You can enter a new value without toggling the tag’s force state, but then the tag can be overwritten. Strings and Timers Strings and timers differ from tags only in that you do not need to click the Toggle Force State button before entering a new value. (In fact, there is no such button in the string and timer windows.) Whatever value you enter will be accepted immediately by the project.
Chapter 8: Networked Operations Pointe Controller User Guide Chapter 8: Networked Operations In addition to operating as a stand-alone machine controller, the Pointe Controller unit can also be integrated into a networked control system. It can serve as supervisory node, administering up to four remote I/O terminals, or it can be configured as a Modbus slave device in a larger Modbus network. TIP: The information provided in this chapter is also available via the PointeControl Framework online help.
Pointe Controller User Guide 8.1 Chapter 8: Networked Operations Networking via OptiLogic Remote I/O As a Master Controller for distributed control solutions, the Pointe Controller is capable of interfacing with up to four OptiLogic I/O terminals via Ethernet. This reduces wiring cost of the I/O devices back to the controller, while providing high speed I/O control from the controller.
Chapter 8: Networked Operations 8.2 Pointe Controller User Guide Networking via Modbus Data Mapping As a control node in a scalable network, the Pointe Controller performs dedicated real-time local control, while maintaining communications with the designated supervisory computer. Total system deployment, configuration, project coordination, and data logging can be implemented from any authorized network workstation.
Pointe Controller User Guide 8.2.1 Chapter 8: Networked Operations Modbus Address The addressing that you, the system designer, must set is the address set via rotary address switches in the Pointe Controller base unit. Every Modbus device in your system must have its own unique address. This address, a value between 00 and 97, is how the Modbus master identifies each device. NOTE: Addresses 98 and 99 are reserved for performing hardware resets. For more information, see page 230.
Chapter 8: Networked Operations 8.2.2 Pointe Controller User Guide Types of Modbus data PointeControl allows mapping to four different Modbus data types: Coils, Discretes, Analogs, and Registers.
Pointe Controller User Guide Chapter 8: Networked Operations Coils (0000109999) Discretes (1000119999) Analogs (3000139999) Registers (4000149999) read/write read only read only read/write %QD (32 Bit Signed) X X %QF (32 Bit Real) X X Strings X X Timers X WARNING: Always be careful when mapping directly to Output variables.
Chapter 8: Networked Operations Pointe Controller User Guide 4. To enable Modbus communication via the RS232 serial port: a. Click the Serial checkbox. The Serial port configuration settings become enabled. b. Configure the serial port as needed for your control application. (The default values of 9600 baud, 8 data bits, 1 stop bit and no parity are recommended.) 5. Proceed to Mapping variables to Modbus addresses, or click OK to save your changes and close the Modbus Driver Configuration window.
Pointe Controller User Guide Chapter 8: Networked Operations 2. Click on the tab corresponding to the Modbus data type — Coils, Discretes, Analogs, or Registers — that you want to map. In this example, Coils is selected: 3. Specify the number of addresses that you want to map in this Modbus data type: click in the Number of field, enter the number, and press the Tab key. Addressing always starts at the low end of the available range.
Chapter 8: Networked Operations Pointe Controller User Guide 4. Double-click on an address you want to map. A pop-up window appears listing all of the currently defined Logic Memory variables that can be mapped to that Modbus data type. For more information on which Logic Memory variables can be mapped to which Modbus data types, see “Types of Modbus data” on page 219. 5. Select the variable you want to map from the pop-up window. The variable is mapped to the address.
Pointe Controller User Guide Chapter 8: Networked Operations 7. Return to step 2 to map another data type, or click OK to save your changes and close the Modbus Driver Configuration window. Packing individual bits into a Register Under the Register data type, you can “pack up to 16 individual Bit-type variables into a single address. This is done by expanding the address into 16 sub-addresses and mapping the bits to each sub-address. Each sub-address is denoted by a “:n suffix on the address.
Chapter 8: Networked Operations Pointe Controller User Guide 3. Double-click on the chosen sub-address and select the bit to be mapped from the pop-up window. 4. Continue mapping each sub-address until finished. To unpack a Register – that is, to delete the individual mappings and convert the Register back to a full 16-bit address – right-click on the Register address and choose Undo packing from the menu.
Pointe Controller User Guide Chapter 9: Troubleshooting Chapter 9: Troubleshooting This chapter provides some basic tips for troubleshooting the Pointe Controller system. More information will be added in future revisions. In the meantime, if you have any problems, please contact Nematron Technical Support at 1-800-6362876, or email us at support@nematron.com.
Chapter 9: Troubleshooting 9.1 Pointe Controller User Guide LED Boot Indicators The first thing to look at when the controller is installed, connected to a hub or PC and everything is powered up, is the diagnostic LEDs: The first thing that happens when the controller is powered up is that is checks its operating program. This process takes a couple of seconds. If the operating program does not check out, the RS232 TX (transmit) LED will flash at a rate of about 1 flash per second.
Pointe Controller User Guide Chapter 9: Troubleshooting There are two LEDs, one red and one green, next to the Pointe Controller base unit’s RJ-11 connector.
Chapter 9: Troubleshooting 9.2 Pointe Controller User Guide Hardware Reset In some cases, it may be necessary to perform a full hardware reset on the Pointe Controller unit. This will bypass any password set on the controller, reset the IP address and node name settings to factory defaults, and erase any control program currently saved in flash memory. The reset is performed by powering off the controller, turning the Modbus address switches to “99,” and powering on the controller.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Appendix A: OptiLogic Technical Specifications This appendix provides complete technical descriptions and configuration instructions for all of the OptiLogic I/O modules and operator panels that can be used with the Pointe Controller system.
Appendix A: OptiLogic Technical Specifications A.1 Pointe Controller User Guide OL2104 Relay Output Module The OL2104 Relay Output Module provides four (4) optically isolated mechanical relay outputs that can be used for switching a variety of AC and DC loads. Individual LED indicators provide visual feedback of output state. Technical Specifications 232 Card Cage Power Required 250 mA Output Type Mechanical relay Outputs 4 Status Indicators Logic Side LED Contact resistence 0.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Connection Diagram Terminal 8 Out 3 C 7 Out 3 NO 6 Out 2 C 5 Out 2 NO 4 Out 1 C 3 Out 1 NO 2 Out 0 C 1 Out 0 NO A.1.1 OL2104 Configuration Options The OL2104 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide NOTE: You can leave any or all Outputs unconfigured, but if you do, those I/O points will not be available to your project. Failsafe tab If, during runtime, your project fails to respond for a given timeout interval, then the Pointe Controller unit will automatically set all Output points to preconfigured failsafes.
Pointe Controller User Guide A.2 Appendix A: OptiLogic Technical Specifications OL2108 Relay Output Module The OL2108 Relay Output Module provides eight (8) optically isolated mechanical relay outputs that can be used for switching a variety of AC and DC loads. Individual LED indicators provide visual feedback of output state. Technical Specifications Card Cage Power Required 375 mA Output Type Mechanical relay Outputs 8 Status Indicators Logic Side LED Contact resistence 0.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Connection Diagram Terminal 10 Out 7 9 Out 6 8 Out 5 7 Out 4 6 Out 3 5 Out 2 4 Out 1 3 Ou1 0 2 Common Out 4-7 1 Common Out 0-3 A.2.1 OL2108 Configuration Options The OL2108 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Each Output point, from 0 through 7, is associated with a single Output Bit tag (%QX). to the right and select an Output Bit tag To configure an Output, click the from the pop-up menu. Each tag can be used only once. NOTE: You can leave any or all Outputs unconfigured, but if you do, those I/O points will not be available to your project.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide When you have finished configuring the module, click OK to save your changes and close the window.
Pointe Controller User Guide A.3 Appendix A: OptiLogic Technical Specifications OL2109 DC Sinking Output Module The OL2109 DC Sinking Output Module provides eight (8) optically isolated transistor outputs that can be used for switching small DC loads. Individual LED indicators provide visual feedback of output state.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Connection Diagram Terminal 10 Out 7 9 Out 6 8 Out 5 7 Out 4 6 Out 3 5 Out 2 4 Out 1 3 Ou1 0 2 Common 1 Common A.3.1 OL2109 Configuration Options The OL2109 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Each Output point, from 0 through 7, is associated with a single Output Bit tag (%QX). to the right and select an Output Bit tag To configure an Output, click the from the pop-up menu. Each tag can be used only once. NOTE: You can leave any or all Outputs unconfigured, but if you do, those I/O points will not be available to your project.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide When you have finished configuring the module, click OK to save your changes and close the window.
Pointe Controller User Guide A.4 Appendix A: OptiLogic Technical Specifications OL2111 AC Solid State Relay Module The OL2111 AC Solid-state Relay Module provides eight (8) solid-state relay outputs. This module is ideally suited for switching small AC loads. As a solid-state device, switch wear will not be a factor. Each output is optocoupled for system isolation. Individual LED indicators provide visual feedback indicating the state that each relay is being driven.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Connection Diagram Terminal 10 Out 7 9 Out 6 8 Out 5 7 Out 4 6 Out 3 5 Out 2 4 Out 1 3 Ou1 0 2 Common 1 Common A.4.1 OL2111 Configuration Options The OL2111 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Each Output point, from 0 through 7, is associated with a single Output Bit tag (%QX). to the right and select an Output Bit tag To configure an Output, click the from the pop-up menu. Each tag can be used only once. NOTE: You can leave any or all Outputs unconfigured, but if you do, those I/O points will not be available to your project.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide When you have finished configuring the module, click OK to save your changes and close the window.
Pointe Controller User Guide A.5 Appendix A: OptiLogic Technical Specifications OL2201 Digital Input Simulator Module The OL2201 Digital Input Simulator Module is designed to be an aid to program development. Use the OL2201 to simulate real world inputs during your design and debug process. The OL2201 enables the program developer to cause a change in input status at will to simulate a system action. In doing so, you are able to see the program’s response.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.5.1 OL2201 Configuration Options The OL2201 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.) Selecting an OL2201 module and clicking the I/O button opens the OL2201 I/O Map dialog window… Configuring the OL2201 module is very simple: each Input point, from 0 through 7, is associated with a single Input Bit tag (%IX).
Pointe Controller User Guide A.6 Appendix A: OptiLogic Technical Specifications OL2205 AC/DC Input Module The OL2205 Digital Input module senses up to four (4) AC or DC input signals. All inputs are individually optocoupled for isolation. Inputs are also individually isolated from each other by separate terminal connections. Filtering is provided for zero crossover. Individual LED indicators provide visual feedback of current status.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Connection Diagram Terminal A.6.1 8 In 3 7 In 3 6 In 2 5 In 2 4 In 1 3 In 1 2 In 0 1 In 0 OL2205 Configuration Options The OL2205 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications When you have finished configuring the module, click OK to save your changes and close the window.
Appendix A: OptiLogic Technical Specifications A.7 Pointe Controller User Guide OL2208 DC Digital Input Module The OL2208 DC Digital Input module can be used in either sourcing or sinking application. (All eight inputs must be used in the same manner.) Each input is optocoupled to provide system isolation. Individual LED indicators provide a visual feedback of current status.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Connection Diagram The OL2208 DC Digital Input module can be used in either sourcing or sinking application. All eight inputs must be used in the same manner.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.7.1 OL2208 Configuration Options The OL2208 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.) Selecting an OL2208 module and clicking the I/O button opens the OL2208 I/O Map dialog window… Configuring the OL2208 module is very simple: each Input point, from 0 through 7, is associated with a single Input Bit tag (%IX).
Pointe Controller User Guide A.8 Appendix A: OptiLogic Technical Specifications OL2211 AC Digital Input Module The OL2211 AC Digital input module senses up to eight (8) AC input signals. All inputs are individually optocoupled for isolation. Filtering is provided for zero crossover. Individual LED indicators provide visual feedback of current status.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Connection Diagram Terminal 10 In 7 9 In 6 8 In 5 7 In 4 6 In 3 5 In 2 4 In 1 3 In 0 2 Common 1 Common A.8.1 OL2211 Configuration Options The OL2211 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications NOTE: You can leave any or all Inputs unconfigured, but if you do, those I/O points will not be available to your project. When you have finished configuring the module, click OK to save your changes and close the window.
Appendix A: OptiLogic Technical Specifications A.9 Pointe Controller User Guide OL2252 Dual Pulse Counter The OL2252 module provides two independent high speed pulse counter inputs. Each input counter will accurately count pulse inputs up to 15KHz. Inputs may be sourcing or sinking type. There are a number of operating options available with the OL2252. The six remaining inputs can be used as predefined control signals or as general purpose inputs. These options are detailed below.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications The count can be reset to 0 at any time. Again there is both a reset message that can be sent from the PC and an optional hardware reset signal. Whether the hardware “reset” and “enable” are used is determined by how the module is configured in the PointeControl development framework (see below).
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Type 1 Subtype 2 Connection Diagram Terminal 260 10 Input 2 9 Input 1 8 Enable 2 7 Enable 1 6 Reset 2 5 Reset 1 4 Pulse 2 3 Pulse 1 2 Common 1 Common
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications A.9.1 OL2252 Configuration Options The OL2252 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.) Selecting an OL2252 module and clicking the I/O button opens the OL2252 I/O Map dialog window… Inputs tab Each Input point, from 0 through 7, is associated with a single Input Bit tag (%IX).
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Channel tabs The first six Inputs on the OL2252 module are grouped into two channels, which correspond with and control the two pulse counters on the module. (The last two Inputs – 6 and 7 – are generic DC inputs.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications NOTE: If you use the Hardware Enable option, then you must also have the Enable bit set (see below). If you do not, the channel cannot count. Hardware Reset – Option to use value received on the Hardware Reset input (Input 2 for Channel 1, Input 3 for Channel 2) to determine when the channel resets the counter to 0.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.10 OL2258 High Speed Pulse Counter The OL2258 High Speed Counter Module provides for direct pulse counting for a variety of high speed pulse interface applications. Typical applications include motion control, metering and velocity measurement. The OL2258 contains on-board intelligence necessary for processing and counting pulse information as well as automatically triggering control outputs.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Quadrature Encoder Input The counting process for quadrature type encoding is determined by the phase angle between input A and input B. If A leads B, the counter increments. If B leads A, the counter decrements. The count is incremented or decremented on each pulse transition as shown below. Up/Down Count For this type of configuration, the count increments on pulses input to “A” and decrements on pulses input to “B”.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Technical Specifications 266 Card Cage Power Required 400 mA Inputs (all) 4 Pulse Inputs 2 Status Indicators Logic Side LED Counting Modes Pulse & Direction, Up/Down Count, Quadrature Count Value 32 Bit Signed Frequency Data 16 Bit Signed (configurable for 1 sec or 200 msec) Input Signal Type Sinking, sourcing, or differential Input Impedence 2.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Connection Diagram Terminals 10 Out 2 Open collector output 2 9 Out 1 Open collector output 1 8 Common 7 LS Limit Switch input (optional) 6 Z2 Z input (optional) 5 Z1 4 B2 3 B1 2 A2 1 A1 Common for LS and two outputs Pulse input B (quadrature) / Direction input (pulse & direction) / Down pulse (up/down count) Pulse input A (quadrature) / Pulse input (pulse & direction) / Up pulse (up/down count) The OL225
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.10.1 OL2258 Configuration Options The OL2258 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.) Selecting an OL2258 module and clicking the I/O button opens the OL2258 I/O Map dialog window… Inputs tab Each of the four inputs on the OL2258 module is written to a separate bit.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications To configure Input LS, click the to the right and select a tag from the pop-up menu. Each tag can be used only once. NOTE: These inputs do not necessarily need to be mapped to tags in Logic Memory for the pulse counter itself to function. The counter will still count pulses and write out the counter value, as configured in the Counter tab (below).
Appendix A: OptiLogic Technical Specifications o Over 30 KHz – The maximum pulse frequency will be greater than or equal to 30 KHz. To configure Frequency Selection, click the frequency option from the pop-up menu. Pointe Controller User Guide to the right and select a Counter Value – Tag to which the current value of the pulse counter will be written. Mapped to a 32-bit Signed Input tag (%ID). to the right and select a tag from To configure Counter Value, click the the pop-up menu.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications o If Enabled, then Counter Value will be forced to Preset Value when Input LS becomes ON. to the right and select an option To configure LS Preset, click the (Disabled or Enabled) from the pop-up menu. Force Preset – Bit to force Counter Value to Preset Value. Whenever the bit is set to 1, the value is forced. Mapped to an Output Bit tag (%QX).
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide To configure Output Status, click the to the right and select a tag from the pop-up menu. Each tag can be used only once. Max Value – The maximum value of the range in which the output will be ON. When the counter value is above this maximum, the output will be OFF. Mapped to any 32-bit Signed tag (%IX, %MX, or %QX). To configure Max Value, click the to the right and select a tag from the pop-up menu.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications A.11 OL2304 Analog Voltage Output Module The OL2304 Analog Voltage Output Module provides four (4) output channels that are range configurable, on a channel by channel basis, to any of four common output ranges: 0-5 V, 0-10 V, +/-5 V, or +/-10 V. The voltage range for each channel can be configured through your PointeControl project rather than using physical jumpers.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide External Power Required none Output Current +/-5 mA Short Circuit Current +/-15 mA Offset Calibration Error +/- 32 counts @ 0-5V +/- 16 counts @ 0-10V +/- 16 counts @ +/-5V +/- 8 counts @ +/-10V Nonlinearity +/- 1 count Terminal Strip Plug In (removable) Terminal Screws Slotted (0.1” blade max.) Max. terminal wire gauge 18 AWG (use copper conductors) Terminal block torque 2.2 lb-in Required Temp.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications A.11.1 OL2304 Configuration Options The OL2304 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.) Selecting an OL2304 module and clicking the I/O button opens the OL2304 I/O Map dialog window… Each of the four output channels on the OL2304 module can be configured separately.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.12 OL2408 Analog Voltage Input The OL2408 Analog Voltage Input Module provides eight (8) voltage sensors. Each sensor reads the current input voltage, scales it, and writes the scaled value to a Logic Memory tag. The value has 14-bit resolution and is scaled from 0 to 16383 (0x0 to 0x3FFF); i.e., the minimum voltage is equal to 0, the maximum voltage is equal to 16383, and all other voltages are scaled in between.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Subtype 1 Connection Diagram Terminal 10 Channel 8 9 Channel 7 8 Channel 6 7 Channel 5 6 Channel 4 5 Channel 3 4 Channel 2 3 Channel 1 2 Common 1 Common A.12.1 OL2408 Configuration Options The OL2408 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Channel n – Tag to which the scaled value of the input voltage is written. Mapped to a 16-bit Unsigned Input tag (%IUW). to the right and select a tag from the pop-up To configure a Channel, click the menu. Each tag can be used only once. NOTE: You can leave any or all Channels unconfigured, but if you do, those I/O points will not be available to your project.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications A.13 OL2418 Analog Current Input The OL2418 Analog Current Input Module provides eight (8) amperage sensors. Each sensor reads the current input amperage, scales it, and writes the scaled value to a Logic Memory tag. The value has 14-bit resolution and is scaled from 0 to 16383 (0x0 to 0x3FFF); i.e., the minimum amperage is equal to 0, the maximum amperage is equal to 16383, and all other amperages are scaled in between.
Appendix A: OptiLogic Technical Specifications Subtype Pointe Controller User Guide 2 Connection Diagram Terminal 10 Channel 8 9 Channel 7 8 Channel 6 7 Channel 5 6 Channel 4 5 Channel 3 4 Channel 2 3 Channel 1 2 Common 1 Common A.13.1 OL2418 Configuration Options The OL2418 module is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Channel n – Tag to which the scaled value of the input amperage is written. Mapped to a 16-bit Unsigned Input tag (%IUW). to the right and select a tag from the pop-up To configure a Channel, click the menu. Each tag can be used only once. NOTE: You can leave any or all Channels unconfigured, but if you do, those I/O points will not be available to your project.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.14 OL2602 Dual Serial Port Module The OL2602 Dual Serial Port Module provides two (2) standard RS232 serial ports – in addition to the built-in port on the Pointe Controller unit itself – that can be used to connect to and communicate with a wide variety of device networks and control hardware.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Terminal block torque 2.2 lb-in Required Temp. rating of field installed conductors 60°C / 75°C Weight 1.0 oz (29g) Type 112 Subtype 2 A.14.1 OL2602 Configuration Options This module cannot be configured through the Configure I/O dialog. To configure and use this module, see Serial Commands on page 321.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.15 OL3406 Pushbutton/Indicator Panel The OL3406 Pushbutton/Indicator Panel has four user-definable pushbuttons and six white indicator bars. The buttons can be configured for either momentary or alternate-action operation. The button LEDs normally reflect button on/off status. The momentary buttons can also be configured for LED separation (direct on/off control).
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications This tab configures the six white indicator bars on the OL3406 panel. Indicator n – Bit that turns the indicator on/off. When the bit becomes ON, the indicator is turned on. When the bit becomes OFF, the indicator is turned OFF. Mapped to an Output Bit tag (%QX). to the right and select a tag from To configure an Indicator, click the the pop-up menu. Each tag can be used only once.
Appendix A: OptiLogic Technical Specifications o Pointe Controller User Guide If Enabled, then each button LED can be turned on/off independently using the LED parameter (below). to the right and select an option To configure LED Separation, click the (Disabled or Enabled) from the pop-up menu. NOTE: This configuration applies to a button only if the button is also set Momentary (see below). Button n – Each pushbutton can be configured separately, using its own Button sub-tab.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications When you have finished configuring the panel, click OK to save your changes and close the window.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.16 OL3420 Operator Terminal The OL3420 Operator Terminal has four user-definable pushbuttons and a 2 line x 20 character LCD display. The buttons can be configured for either momentary or alternate-action operation. The button LEDs normally reflect button on/off status. The momentary buttons can also be configured for LED separation (direct on/off control). Every button LED can be turned on, off, or flashed. A.16.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications o If Disabled (default), then each button’s LED directly reflects the current ON/OFF state of the button. o If Enabled, then each button LED can be turned on/off independently using the LED parameter (below). to the right and select an option To configure LED Separation, click the (Disabled or Enabled) from the pop-up menu. NOTE: This configuration applies to a button only if the button is also set Momentary (see below).
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide NOTE: You can leave any or all Buttons unconfigured, but if you do, those I/O points will not be available to your project. Messages tab This tab controls to two lines of the LCD on the OL3420 panel. The lines on the panel are numbered 1 and 2, from top to bottom. Each line is mapped to a separate 20-character String variable. to the right and select a String variable from the To configure a Line, click the pop-up menu.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications A.17 OL3440 Display Panel The OL3440 Display Panel is a 4 line x 20 character LCD display. You can send text to any line. A.17.1 OL3440 Configuration Options The OL3440 panel is configured through the Configure I/O menu command in the PointeControl development framework. (For more information on Configure I/O, see page 118.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide A.18 OL3850 Keypad Terminal The OL3850 Keypad Terminal has a 2 line x 20 character LCD display, a numeric keypad w/ up and down arrows, five user-definable pushbuttons, and three colored indicator bars. The buttons can be configured for either momentary or alternate-action operation. The button LEDs normally reflect button on/off status. The momentary buttons can also be configured for LED separation (direct on/off control).
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Indicator n – Bit that turns the indicator on/off. When the bit becomes ON, the indicator is turned on. When the bit becomes OFF, the indicator is turned OFF. Mapped to an Output Bit tag (%QX). to the right and select a tag from To configure an Indicator, click the the pop-up menu. Each tag can be used only once. Indicator n Flash – Bit that quickly flashes the indicator. (The indicator itself must already be on.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide Button n – Each pushbutton can be configured separately, using its own Button sub-tab. The buttons on the panel are numbered 1 through 5, from left to right. All five sub-tabs have the same parameters: Type – Option to change the responsiveness of the button. o If Momentary (default), then the button is ON only so long as it is pressed and held by the operator.
Pointe Controller User Guide Appendix A: OptiLogic Technical Specifications Messages tab This tab controls to two lines of the LCD on the OL3850 panel. The lines on the panel are numbered 1 and 2, from top to bottom. Each line is mapped to a separate 20-character String variable. to the right and select a String variable from the To configure a Line, click the pop-up menu. Each variable can be used only once.
Appendix A: OptiLogic Technical Specifications Pointe Controller User Guide This tab is used to configure two variables that are required to enter data through the numeric keypad on the OL3850 panel. Data Value – When the user inputs a numeric value and presses the ENTER key on the keypad, the value is saved to Data Value. Mapped to a 32-bit Real Input tag (%IF). to the right and select a tag from To configure Data Value, click the the pop-up menu. Each tag can be used only once.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference Appendix B: Flow Chart Command Reference This appendix provides complete descriptions and configuration instructions for all of the Flow Chart process commands that are available in the PointeControl development framework. (For more information on building Flow Charts, see page 129.) TIP: The information provided in this appendix is also available via the PointeControl Framework online help.
Appendix B: Flow Chart Command Reference B.1 Pointe Controller User Guide General Commands General commands (in a Process block) are used to set and clear Logic Memory tags, to enable and disable Flow Charts, and to insert a timed delay in the chart execution. B.1.1 Turn On and Turn Off These commands can be selected from the General commands list. When used in a Flow Chart, the Turn On and Turn Off commands set a specified Bit tag to 1 or 0, respectively.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference Parameters for this command include: Statement – The statement which specifies the tag to be set and describes the value to written. The value of may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed. To configure the Statement parameter, click the standard Build Assignment dialog. button to open a B.1.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide B.1.4 Clear This command can be selected from the General commands list. When used in a Flow Chart, the Clear command resets a specified tag to 0. Parameters for this command include: Tag – The tag to be reset to 0 by the command. Any Input, Memory, or Output tag can be specified. Strings and Timers cannot be specified. To configure the Tag parameter, click the Select Tag dialog. button to open a standard B.1.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference To configure the Chart parameter, click the from the drop-down menu. button and select a chart B.1.6 Get Tag Name This command can be selected from the General commands list. When used in a Flow Chart, the Get Tag Name command retrieves the name (alias) of a specified tag and saves it to a string. Parameters for this command include: Source Tag – The tag from which the name is retrieved.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide B.1.7 Wait This command can be selected from the General commands list. When used in a Flow Chart, the Wait command inserts a delay of specified duration into the execution of the chart. Parameters for this command include: Wait Value – The number of specified time units in the delay. (Wait Value is combined with Units below to get the actual duration. For example, 3 Seconds or 3000 Milliseconds.
Pointe Controller User Guide B.2 Appendix B: Flow Chart Command Reference Timer Commands Timer commands (in a Process block) are used to start, stop, and reset Timers. (For more information on defining Timers in Logic memory, see page 117.) B.2.1 Timer Start and Timer Stop These commands can be selected from the Timer commands list. When used in a Flow Chart, the Timer Start and Timer Stop commands start and stop a specified Timer.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide When used in a Flow Chart, the Timer Reset command resets the specified Timer to 0 msecs. Parameters for this command include: Timer – The Timer to be reset by the command. To configure the Timer parameter, click the Build Timer ID dialog. button to open a standard B.2.3 Timer Preset This command can be selected from the Timer commands list.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference To configure the Units parameter, click the from the drop-down menu. button and select a unit NOTE: Although other time units can be selected when using this command, the Timer itself still counts in milliseconds during runtime. (The Preset value that is entered is recalculated in milliseconds.
Appendix B: Flow Chart Command Reference B.3 Pointe Controller User Guide String Commands String commands (in a Process block) are used to manipulate strings and String tags. NOTE: All String outputs are NULL-terminated. B.3.1 String Copy This command can be selected from the String commands list. When used in a Flow Chart, the String Copy commands directly copies one String into another.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference B.3.2 String Concat This command can be selected from the String commands list. When used in a Flow Chart, the String Concat command appends one string to the end of another. Parameters for this command include: Destination String – The string onto which the Source String will be appended. Also, the String tag to which the output will be written. (Essentially, old Destination String + Source String = new Destination String.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide B.3.3 String Left and String Right These commands can be selected from the String commands list. When used in a Flow Chart, the String Left and String Right commands extract a sub-string of a specified length from a given string. The String Left command extracts from the left side of the string. The String Right command extracts from the right side of the string.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference B.3.4 String Mid This command can be selected from the String commands list. When used in a Flow Chart, the String Mid command extracts a sub-string, of a specified length and starting from a specified position, from a given string. Parameters for this command include: Destination String – The String tag to which the extracted sub-string will be written.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide Start Position – The starting position from which the sub-string will be extracted. The first character of the Source String is equivalent to a Start Position of 1. The value of Start Position may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed. To configure the Start Position parameter, click the standard Build Argument dialog.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference NOTE: Source String is not modified by the execution of this command. String to Insert – The string that will be inserted into the Source String. The value of String to Insert may be a String tag, a literal string enclosed in single quotes (‘ ’), or some other logical expression that is evaluated every time the block is executed. To configure the Source String parameter, click the standard Build String Argument dialog.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide NOTE: If the defined length of the Destination String is not long enough to receive the result of the command, then the output will be truncated. No error will be generated. Source String – The string from which the specified characters will be deleted. The value of Source String may be a String tag, a literal string enclosed in single quotes (‘ ’), or some other logical expression that is evaluated every time the block is executed.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference B.3.7 String Replace This command can be selected from the String commands list. When used in a Flow Chart, the String Replace command replaces a specified number of characters in a given string with the contents of another string. The result is written to a separate String tag. This is different from the String Insert command above; the specified characters are completely overwritten rather than simply displaced.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide To configure the Source String parameter, click the standard Build String Argument dialog. button to open a Number Chars – The number of characters to be replaced in the Source String. The value of Number Chars may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference NOTE: If the defined length of the Destination String is not long enough to receive the result of the command, then the output will be truncated. No error will be generated. Integer Value – The integer value to be formatted. The value of Integer Value may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed.
Appendix B: Flow Chart Command Reference B.4 Pointe Controller User Guide Diagnostics Commands Diagnostics commands (in a Process block) are used to read from and write to the diagnostic items that are associated with each Input, Memory, and Output tag. About Diagnostic Items Every Input, Memory, and Output tag has associated with it three metadata registers, plus a fourth register for Input and Output tags only.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference For all other errors, please contact Nematron Technical Support. NOTE: The Pointe Controller unit updates a given tag’s Error Status Bit and Diag Status Code only when a new error is encountered at the tag’s associated I/O point. As such, the values currently stored in the items should always be handled as merely the last error encountered, not as an ongoing error condition.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide To configure the Destination Tag parameter, click the standard Select Tag dialog. button to open a B.4.2 Diag Set Tag Status This command can be selected from the Diagnostics commands list. When used in a Flow Chart, the Diag Set Tag Status command assigns a new value to any diagnostic item on a specified tag.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference To configure the Diag Fault Level parameter, click the to open a standard Build Argument dialog. o button If Diag Status Code is selected, then the third parameter is New Status Code. You can define your own status codes in your diagnostic routines, but PointeControl does automatically record I/O errors (see above).
Appendix B: Flow Chart Command Reference Pointe Controller User Guide To configure the Diag Item parameter, click the item from the drop-down menu.
Pointe Controller User Guide B.5 Appendix B: Flow Chart Command Reference Serial Commands The Serial commands are used to initiate serial communications through the Pointe Controller I/O system. NOTE: Read/Write commands do not normally block or wait. Read gets all bytes which have been buffered on the port; write queues the byte(s) for output. The command does not wait until the characters are physically transmitted.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide NOTE: This command also enables (opens) the specified port. Parameters for this command include: COM Port – Specify which serial communications port to configure. For more information on how the ports are numbered, see page 321. The value of COM Port may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference B.5.2 Serial Enable Port and Serial Disable Port These commands can be selected from the Serial commands list. When used in a Flow Chart, the Serial Enable Port and Serial Disable Port commands open and close the specified COM port, respectively. Parameters for these commands include: COM Port – Specify which serial communications port to enable (open) or disable (close).
Appendix B: Flow Chart Command Reference Pointe Controller User Guide B.5.3 Serial Read Byte This command can be selected from the Serial commands list. When used in a Flow Chart, the Serial Read Byte command reads a single byte/character from the specified COM port and saves it to a Logic Memory tag. NOTE: If you need to convert the read byte into an ASCII character, you can use the Integer to Character ladder block.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference B.5.4 Serial Write Byte This command can be selected from the Serial commands list. When used in a Flow Chart, the Serial Write Byte command writes a single byte/character (as defined in the Build Argument dialog) to the specified COM port. NOTE: String characters are automatically converted into their equivalent ASCII values. Parameters for this command include: COM Port – Specify which serial communications port to write to.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide To configure the Status Tag parameter, click the standard Select Tag dialog. button to open a B.5.5 Serial Read MultiBytes This command can be selected from the Serial commands list. When used in a Flow Chart, the Serial Read MultiBytes command reads a string from the specified COM port and saves it to a String variable in Logic Memory.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference The value of Status Tag may be any 16-bit Unsigned tag (%IUW, %MUW, or %QUW). To configure the Status Tag parameter, click the standard Select Tag dialog. button to open a B.5.6 Serial Write MultiBytes This command can be selected from the Serial commands list. When used in a Flow Chart, the Serial Write MultiBytes command writes a string (as defined in the Build String Argument dialog) to the specified COM port.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide The value of Status Tag may be any 16-bit Unsigned tag (%IUW, %MUW, or %QUW). To configure the Status Tag parameter, click the standard Select Tag dialog. button to open a B.5.7 Serial Get Comm Errors This command can be selected from the Serial commands list. When used in a Flow Chart, the Serial Get Comm Errors command simply checks the specified COM port for communication errors.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference VALUE NAME DESCRIPTION 0x0000 (0) n/a No error; good communication 0x0001 (1) PARITY_ERROR OptiLogic parity error 0x0002 (2) FRAMING_ERROR OptiLogic framing error 0x0004 (4) OVERRUN_ERROR OptiLogic overrun error 0x0010 (16) READ_ERROR Serial read error 0x0020 (32) WRITE_ERROR Serial write error 0x0040 (64) BAD_CONFIG_ERROR Invalid configuration error 0x0080 (128) BAD_PORT_ERROR Non-existent serial port error 0
Appendix B: Flow Chart Command Reference B.6 Pointe Controller User Guide Date/Time Commands Date/Time commands (in a Process block) are used to retrieve the system time on the Pointe Controller unit. NOTE: The controller’s internal clock is updated whenever a compiled project is downloaded from your PC to the controller. The time is taken from your PC’s system time. B.6.1 Date/Time Get This command can be selected from the Date/Time commands list.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference B.6.2 Date/Time Format This command can be selected from the Date/Time commands list. When used in a Flow Chart, the Date/Time Format command formats a given time as a string and writes the result to a String tag. The format of the string is . Parameters for this command include: Date/Time Type – The time to be formatted, either the current system time or some user-specified time.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide To configure the Destination String parameter, click the open a standard Select String Tag dialog. button to NOTE: If the defined length of the Destination String is not long enough to receive the result of the command, then the output will be truncated. No error will be generated. B.6.3 Get Elapsed Time This command can be selected from the Date/Time commands list.
Pointe Controller User Guide B.7 Appendix B: Flow Chart Command Reference Operator Panel Commands Operator Panel commands (in a Process block) are used to control the OL3406, OL3420, and OL3850 operator panels. You must have one of these panels connected to your Pointe Controller unit and properly configured in order to use these commands. For more information, see “Configuring operator panels” on page 128.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide place holders for the data entry field. A typical message may be ‘Enter value: ^^^^^^^’, allowing up to seven digits to be entered. The value of Message may be a String tag, a literal string enclosed in single quotes (‘ ’), or some other logical expression that is evaluated every time the block is executed. To configure the Message parameter, click the standard Build String Argument dialog.
Pointe Controller User Guide Appendix B: Flow Chart Command Reference NOTE: This command works only with the OL3850 operator panel. Parameters for this command include: Message Line – Which line of the operator panel that will be used to display the message. The top line is 1, the bottom line is 2. The value of Message Line may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed.
Appendix B: Flow Chart Command Reference Pointe Controller User Guide To configure the Initial Value parameter, click the standard Build Argument dialog. button to open a Decimal Digits – The number of decimal places to which the Initial Value is displayed. Integers are padded, reals are truncated. The value of Decimal Digits may be an Input/Memory/Output tag, a literal numeric value, or some other logical expression that is evaluated every time the block is executed.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Appendix C: Ladder Diagram Block Reference This appendix provides complete descriptions and configuration instructions for all of the Ladder Diagram function blocks that are available in the PointeControl development framework. (For more information on building Ladder Diagrams, see page 163.) TIP: The information provided in this appendix is also available via the PointeControl Framework online help.
Appendix C: Ladder Diagram Block Reference C.1 Pointe Controller User Guide Relays and Coils C.1.1 Normally Open Contact (XIC) When used in a Ladder Diagram, this block acts as a relay that controls the passing of the rung state from the left to the right. The state is passed only if the value of the associated Bit tag is true or 1.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Functional Description When the input state from the left becomes on, the value of the associated Bit tag is checked. If the tag is false or 0, then the output state to the right is turned on. If the tag is true or 1, then the output state is kept off. The relay is checked every time the ladder is scanned, so long as the input state remains on.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Once the block is inserted, you can double-click on it to configure it. Functional Description When the value of the associated Bit tag transitions from 1 to 0, the input state from the left is momentarily passed through the the output state to the right. The state is passed only once, on the first scan immediately following the transition.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.1.6 Negated Output Coil (NEGOC) When used in a Ladder Diagram, this block acts as a coil that sets an associated Bit tag to the inverse of the state of the rung. tool (from the Relays and Coils toolbar) and click on a ladder rung Select the to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide When the input state from the left becomes on, the associated Bit tag is set to 1. The tag is maintained, or “latched, at 1 until it is explicitly reset to 0 by an external action (either an I/O change or another PointeControl block). The tag is not changed when the input state becomes off. The coil is checked every time the ladder is scanned, so long as the input state remains on.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.1.9 Rising Edge Coil (LEOC) When used in a Ladder Diagram, this block acts as a coil that momentarily sets an associated Bit tag to 1 when the rung state changes from 0 to 1. tool (from the Relays and Coils toolbar) and click on a ladder rung Select the to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference Any Memory Bit (%MX) or Output Bit (%QX) tag may be associated with the block. C.1.11 Falling Edge Detector (F_TRIG) When used in a Ladder Diagram, the F_TRIG block waits for an input bit to change from 1 to 0 and triggers an output bit when it does.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Param Name Config Var Type CLK Clock req %IX %MX %QX T_DONE Output req %IX %MX %QX Q Description The input value. The output value that is triggered when the input value transitions from 1 to 0. C.1.12 Rising Edge Detector (R_TRIG) When used in a Ladder Diagram, the R_TRIG block waits for an input bit to change from 0 to 1 and triggers an output bit when it does.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. CLK Clock req %IX %MX %QX T_DONE Output req %IX %MX %QX Q Description The input value.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Therefore, the block function is evaluated according to the following table: SET 0 1 0 1 RESET 0 0 1 1 existing value 1 0 1 OUTPUT The block function is executed every time the ladder is scanned, so long as EN remains on.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.1.14 Reset-Dominant Bistable (RS) When used in a Ladder Diagram, the SR block switches an output bit between 0 and 1 depending on the values of two input bits. The block is “reset-dominant, meaning that a decision to reset the output bit to 0 will override a decision to set the output bit to 1.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. Set req %IX %MX %QX T_DONE The “set” input. R1 Reset req %IX %MX %QX T_DONE Numeric The “reset” input. This will override the “set” input.
Appendix C: Ladder Diagram Block Reference C.2 Pointe Controller User Guide Timer and Counter Blocks C.2.1 Timer, Pulse (TP) When used in a Ladder Diagram, the TP block turns on the output state for a fixed-width pulse. Select the tool (from the Timers and Counters Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Param Name Config Var Type Description PT Preset Time opt %IUD %QUD %MUD Numeric The length of the pulse, in msecs. If no Preset Time is defined, then the preset value of Timer variable is used instead. ET Elapsed Time opt %QUD %MUD The time elapsed since the Input State became on, in msecs. In most instances, the Elapsed Time equals the current value of the Timer variable. C.2.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description IN Input State no - The state of the rung (off/on) received from the left. Q Output State no - The state of the rung (off/on) passed to the right. TIMER Timer req Timer The Timer variable on which the function is based.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference The Elapsed Time output (ET) shows the time passed since IN became on; in other words, it shows the current value of the Timer itself. When the Timer reaches PT, ET remains equal to PT until it is reset. When the Timer is reset to 0, ET is reset to 0.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed and the following conditions are evaluated in order: 1. If the Reset input (R) is true, then the Counter Value output (CV) is reset to 0. 2.
Pointe Controller User Guide Param CV Appendix C: Ladder Diagram Block Reference Name Counter Value Config Var Type req %QUD %MUD Description The current value of the counter. C.2.5 Counter, Down (CTD) When used in a Ladder Diagram, the CTD block decrements a counter by 1. It also sets a “done bit when the counter reaches 0.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. CD Count Down req %IX %QX %MX T_DONE The enable bit which must be set in order for the counter to decrement.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Once the block is inserted, you can double-click on it to configure it. Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed and the following conditions are evaluated in order: 1.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: 358 Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. CU Count Up req %IX %QX %MX T_DONE The enable bit which must be set in order for the counter to increment.
Pointe Controller User Guide C.3 Appendix C: Ladder Diagram Block Reference Math Blocks C.3.1 Add (ADD) When used in a Ladder Diagram, the ADD block finds the sum of two inputs and sends the result to output. Select the tool (from the Math Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type Description IN1 Input Value 1 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The first input value. IN2 Input Value 2 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The second input value. OUT Output Value req any Input any Output any Memory The result of adding the two input values together.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then OUT remains at its last calculated value until EN becomes on and the block function is executed again. Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.3.3 Divide (DIV) When used in a Ladder Diagram, the DIV block divides one input by another and sends the result to output. tool (from the Math Blocks toolbar) and click on a ladder rung to Select the insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Param Name Config Var Type Description IN2 Input Value 2 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The second input value. OUT Output Value req any Input any Output any Memory The result of dividing the first input value by the second input value. NOTE: This function does not check for bit register overflow.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then OUT remains at its last calculated value until EN becomes on and the block function is executed again. Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Once the block is inserted, you can double-click on it to configure it. Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.3.6 Modulus (MOD) When used in a Ladder Diagram, the MOD block finds the remainder from dividing one input value by another input value and sends the result to output. tool (from the Math Blocks toolbar) and click on a ladder rung to Select the insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Param Name Config Var Type Description IN2 Input Value 2 req any integer* T_DONE T_VALUE T_PREVAL Numeric The second input value, which is divided into the first input value. OUT Output Value req any integer* The result of calculating the square root of the input value. * Any Input, Output, or Memory tag except 32-bit Real (F) or Bit (X). For more information, see “Defining Input, Output, Memory tags” on page 114.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value, in radians. If a Numeric value is entered, it must be real / floating.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value, in radians. If a Numeric value is entered, it must be real / floating.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value, in radians. If a Numeric value is entered, it must be real / floating.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value. If a Numeric value is entered, it must be real / floating.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value. If a Numeric value is entered, it must be real / floating.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value. If a Numeric value is entered, it must be real / floating.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req signed only* T_DONE T_VALUE T_PREVAL Numeric The input value.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req real only* Numeric The input value. If a Numeric value is manually entered, it must be real / floating.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then OUT remains at its last calculated value until EN becomes on and the block function is executed again. Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed: the Input Value 1 (IN1) is raised to the power of the Input Value 2 (IN2) and the result is placed in the Output Value (OUT).
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.3.17 Natural Exponential (EXP) When used in a Ladder Diagram, the EXP block find the natural exponential of the input and sends the result to output. tool (from the Math Blocks toolbar) and click on a ladder rung to Select the insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference NOTE: This function does not check for bit register overflow. If overflow occurs, the value “1.#INF00” (infinite) is placed in the output. C.3.18 Expression (EXPR) As it is currently implemented, the EXPR block simply assigns the value of the input to the output. In future releases this function will allow expressions to be defined and executed as part of the diagram.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type IN Input Value req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Literal Numeric The input value. Output Value req any Input any Output any Memory The result of assigning the input value. OUT Description NOTE: This function does not check for bit register overflow.
Pointe Controller User Guide C.4 Appendix C: Ladder Diagram Block Reference Comparison Blocks C.4.1 Greater Than (GT) When used in a Ladder Diagram, the GT block checks to see if one input is greater than another and uses the result — false or true — to set the output rung state. Select the tool (from the Comparison Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type Description IN1 Input Value 1 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL The first input value. The function checks to see if this value is greater than the second input value. IN2 Input Value 2 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The second input value. C.4.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. Q Output no - The result — false or true — of comparing the two input values. The result becomes the state of the rung (off/on) passed to the right.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide The result placed in Q determines the state of the rung passed to the right: a “true result turns the rung on and a “false result turns the rung off. The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then Q is immediately turned off regardless of the values of IN1 and IN2.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.4.4 Not Equal to (NE) When used in a Ladder Diagram, the NE block checks to see if one input is not equal to another and uses the result — false or true — to set the output rung state. tool (from the Comparison Blocks toolbar) and click on a ladder Select the rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type Description IN1 Input Value 1 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL The first input value. The function checks to see if this value is not equal to the second input value. IN2 Input Value 2 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The second input value. C.4.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. Q Output no - The result — false or true — of comparing the two input values. The result becomes the state of the rung (off/on) passed to the right.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide The result placed in Q determines the state of the rung passed to the right: a “true result turns the rung on and a “false result turns the rung off. The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then Q is immediately turned off regardless of the values of IN1 and IN2.
Pointe Controller User Guide C.5 Appendix C: Ladder Diagram Block Reference Logical and Bit Shift Blocks C.5.1 And (AND) When used in a Ladder Diagram, the AND function block performs a bit-for-bit “and comparison between two inputs and sends the result to output. Select the tool (from the Logical and Bit Shift Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN1 Input Value 1 req any integer* T_DONE T_VALUE T_PREVAL The first input value.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.5.2 Or (OR) When used in a Ladder Diagram, the OR block performs a bit-for-bit “or comparison between two inputs and sends the result to output. tool (from the Logical and Bit Shift Blocks toolbar) and click on a Select the ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN1 Input Value 1 req any integer* T_DONE T_VALUE T_PREVAL The first input value.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.5.3 Exclusive Or (XOR) When used in a Ladder Diagram, the XOR block performs a bit-for-bit “exclusive or comparison between two inputs and sends the result to output. tool (from the Logical and Bit Shift Blocks toolbar) and click on a Select the ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN1 Input Value 1 req any integer* T_DONE T_VALUE T_PREVAL The first input value. IN2 Input Value 2 req any integer* T_DONE T_VALUE T_PREVAL Numeric The second input value.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed: a bit-for-bit logical inversion is made upon the Input Values (IN) and the result is placed in the Output Value (OUT).
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.5.5 Shift bits Left (SHL) When used in a Ladder Diagram, the SHL block shifts the bits of the input a specified number of places to the left and sends the result to output. tool (from the Logical and Bit Shift Blocks toolbar) and click on a Select the ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Param Name Config Var Type IN Input Value req any integer* T_DONE T_VALUE T_PREVAL The input value. N Number of Places req unsigned** T_DONE T_VALUE T_PREVAL Numeric The number of places to be shifted. Output Value req any integer* The result of shifting the input value n places to the left. OUT Description * Any Input, Output, or Memory tag except 32-bit Real (F) or Bit (X).
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Therefore, a 16-bit example of SHL would be: IN: 1010010101011101 N: 5 OUT: 0000010100101010 The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then OUT remains at its last calculated value until EN becomes on and the block function is executed again.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.5.7 Rotate bits Left (ROL) When used in a Ladder Diagram, the ROL block rotates the bits of the input a specified number of places to the left and sends the result to output. tool (from the Logical and Bit Shift Blocks toolbar) and click on a Select the ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type IN Input Value req any integer* T_DONE T_VALUE T_PREVAL The input value. N Number of Places req unsigned** T_DONE T_VALUE T_PREVAL Numeric The number of places to be rotated. Output Value req any integer* The result of rotating the input value n places to the left. OUT Description * Any Input, Output, or Memory tag except 32-bit Real (F) or Bit (X).
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Therefore, a 16-bit example of ROR would be: IN: 1010010101011101 N: 5 OUT: 1110110100101010 The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then OUT remains at its last calculated value until EN becomes on and the block function is executed again.
Appendix C: Ladder Diagram Block Reference C.6 Pointe Controller User Guide Selection Blocks C.6.1 Select minimum value (MIN) When used in a Ladder Diagram, the MIN block finds the smaller of two inputs and sends the result to output. Select the tool (from the Selection Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Param Name Config Var Type Description IN1 Input Value 1 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The first input value. IN2 Input Value 2 req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The second input value. OUT Output Value req any Input any Output any Memory The result of finding the smaller of the two input values.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide The block function is executed every time the ladder is scanned, so long as EN remains on. If EN becomes off, then OUT remains at its last calculated value until EN becomes on and the block function is executed again. Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.6.3 Limit value (LIM) When used in a Ladder Diagram, the LIM block limits an input to a specified range. tool (from the Selection Blocks toolbar) and click on a ladder rung Select the to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type Description IN Input Value req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The input value. MIN Minimum Value req any Input any Output any Memory T_DONE T_VALUE T_PREVAL Numeric The minimum value against which the input value is compared.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Functional Description This block always passes the Select input state (SEL) through to the Enable Out output state (ENO) without change; when SEL becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. The block function is executed every time the ladder is scanned, regardless of whether SEL is on or off. The state of SEL determines which Input Value (IN0 or IN1) is selected and placed in the Output Value (OUT).
Appendix C: Ladder Diagram Block Reference C.7 Pointe Controller User Guide String Blocks C.7.1 Set string (SET) When used in a Ladder Diagram, the SET block copies a string (variable or literal) from an input to an output. Select the tool (from the String Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference NOTE: If the defined Element Length of the String variable configured to OUT is smaller than the result of the function, then the result is truncated to fit. No overflow error is generated. C.7.2 Find string length (LEN) When used in a Ladder Diagram, the LEN block finds the character length of a string (variable or literal) and send it to output.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide * Any Input, Output, or Memory tag except 32-bit Real (F) or Bit (X). For more information, see “Defining Input, Output, Memory tags” on page 114. C.7.3 Extract sub-string from left (LEFT) When used in a Ladder Diagram, the LEFT block extracts a sub-string of specified length from the left end of a string (variable or literal) and sends the result to an output.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input String req String Literal The input string. Literals must be enclosed in single quotes (‘ ’).
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed: a sub-string of up to specified Length (LEN) is extracted from the Input String (IN) and placed in the Output String (OUT).
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.7.5 Extract sub-string from middle (MID) When used in a Ladder Diagram, the MID block extracts a sub-string of specified length from the middle of a string (variable or literal) and sends the result to an output. Select the tool (from the String Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input String req String Literal The input string. Literals must be enclosed in single quotes (‘ ’).
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed: the Input Strings 1 and 2 (IN1 and IN2) are concatenated and the resulting string is placed in the Output String (OUT). For example: IN1: ‘Hello world.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.7.7 Compare strings (CMP) When used in a Ladder Diagram, the CMP block compares two strings (variable or literal) and send the result to an output. tool (from the String Blocks toolbar) and click on a ladder rung to Select the insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN1 Input String 1 req String Literal The first input string. Literals must be enclosed in single quotes (‘ ’).
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide When EN becomes on, the block function is executed: the Input String 2 (IN2) is inserted into the Input String 1 (IN1) at the specified Position (POS). The resulting string is placed in the Output String (OUT). For example: IN1: ‘Hello world.’ IN2: ‘This is PointeControl.’ POS: 9 OUT: ‘Hello woThis is PointeControl.rld.’ NOTE: If there are fewer than POS characters in IN1, then IN1 and IN2 are simply concatenated.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.7.9 Delete sub-string (DEL) When used in a Ladder Diagram, the DEL block deletes a sub-string of specified length from the middle of a string (variable or literal) and sends the resulting string to an output. Select the tool (from the String Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input String req String Literal The input string. Literals must be enclosed in single quotes (‘ ’).
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.7.10 Replace sub-string (REPL) When used in a Ladder Diagram, the REPL block replaces part of an input string with a specified number of characters from another input string, starting at a specified position. The resulting string is sent to output. tool (from the String Blocks toolbar) and click on a ladder rung to Select the insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN1 Input String 1 req String Literal The input string into which the substring is inserted. Literals must be enclosed in single quotes (‘ ’).
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.7.11 Find sub-string (FIND) When used in a Ladder Diagram, the FIND block finds the first occurance, if any, of a sub-string within a given string. The position of the sub-string is sent to output. tool (from the String Blocks toolbar) and click on a ladder rung to Select the insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type Description EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN1 Input String 1 req String Literal The input string to be searched. Literals must be enclosed in single quotes.
Pointe Controller User Guide C.8 Appendix C: Ladder Diagram Block Reference Flow Control Blocks C.8.1 Call sub-ladder diagram (CALL) When used in a Ladder Diagram, this block executes a specified Sub-Ladder. Select the tool (from the Flow Control Blocks toolbar) and click on a ladder rung to insert the following block: Once the block is inserted, you can double-click on it to configure it. NOTE: This block is configured differently than other Ladder Diagram blocks. See “Configuration Reference” below.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide All valid Sub-Ladders in the current project will be listed in the dialog. A selection may be made from the list or entered directly into the LD Name field. The OK button will be enabled when a valid selection has been made or entered. Click it to save your selection and close the dialog. C.8.
Pointe Controller User Guide C.9 Appendix C: Ladder Diagram Block Reference Miscellaneous Blocks C.9.1 Convert to Boolean (TO_BOOL) When used in a Ladder Diagram, the TO_BOOL block converts any input value into an equivalent boolean (bit) tag. All non-zero inputs are converted to 1, while zero inputs are converted to 0. tool (from the Miscellaneous Blocks toolbar) and click on a ladder Select the rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Param Name Config Var Type IN Input Value req any Input any Memory any Output Numeric String Output Value req %MX %QX OUT Description The input value. The result of converting the input value into an equivalent boolean (bit) tag. C.9.2 Convert to Integer (TO_INT) When used in a Ladder Diagram, the TO_INT block converts any input value into an equivalent integer.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req any Input any Memory any Output Numeric String The input value.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide When EN becomes on, the block function is executed: the Input Value (IN) is converted into an equivalent floating point and the result is sent to the Output Value (OUT). NOTE: When IN is a String, conversion to a numeric representation is attempted. If the conversion succeeds, then OUT is set to 1. If the conversion fails, then OUT is set to 0. The block function is executed every time the ladder is scanned, so long as EN remains on.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference Functional Description This block always passes the Enable input state (EN) through to the Enable Out output state (ENO) without change; when EN becomes on, ENO is turned on, and when EN becomes off, ENO is turned off. When EN becomes on, the block function is executed: the Input Value (IN) is converted into an equivalent string and the result is sent to the Output Value (OUT).
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.9.5 Truncate (TRUNC) When used in a Ladder Diagram, the TRUNC block truncates a floating-point input value and discards its fractional (decimal) part. This is effectively the same as rounding the value down to the nearest integer, although the value always remains a floating-point number.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.9.6 Integer to Character (TO_CHR) When used in a Ladder Diagram, the TO_CHR block converts a decimal value into the equivalent ASCII character. tool (from the Miscellaneous Blocks toolbar) and click on a ladder Select the rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.9.7 Character to Integer (CHR_TO) When used in a Ladder Diagram, the CHR_TO block converts the first character of a string into the equivalent ASCII decimal value. tool (from the Miscellaneous Blocks toolbar) and click on a ladder Select the rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference C.9.8 Integer to BCD (TO_BCD) When used in a Ladder Diagram, the TO_BCD block converts a regular integer value into an equivalent binary coded decimal (BCD). tool (from the Miscellaneous Blocks toolbar) and click on a ladder Select the rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide Configuration Reference The parameters of this block are described in the following table: Param Name Config Var Type EN Enable no - The state of the rung (off/on) received from the left. ENO Enable Out no - The state of the rung (off/on) passed to the right. IN Input Value req unsigned* Output Value req any integer** OUT Description The input value.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference When EN becomes on, the block function is executed: each 4-bit “nibble of the Input Value (IN) is separately converted into a base-10 digit, and then the digits are concatenated into a single integer which is placed in the Output Value (OUT). For example, a BCD of 0101001100011001 would be converted in the following manner: NIBBLE DIGIT 0101 0011 0001 1001 5 3 1 9 The resulting integer is 5319.
Appendix C: Ladder Diagram Block Reference Pointe Controller User Guide C.9.10 Move (MOVE) When used in a Ladder Diagram, the MOVE block directly copies the value from a source variable to a destination variable. tool (from the Miscellaneous Blocks toolbar) and click on a ladder Select the rung to insert the following block: Once the block is inserted, you can double-click on it to configure it.
Pointe Controller User Guide Appendix C: Ladder Diagram Block Reference NOTE: This function does not check for bit register overflow. You can assign any variables you wish, but mixing variable sizes – for example, a 32-bit input and an 8-bit output – may result in unusable output.