Advantech HMINavi Designer Software User Manual Help

(Edition 4.0)

Website: http://www.advantech.com

Email: info@advantech.com

© Advantech Co., Ltd.


Introduction

Welcome to HMINavi Designer
The configuration software for Advantech WebOP series HMI products.

Thank you for purchasing HMINavi Designer. This manual describes HMINavi Designer operation procedures and details about each feature.

Notes

  1. All programs and documentation included with HMINavi Designer are the copyright of Advantech Co., Ltd, and are licensed to the user under the Software License Agreement. Any violation of the conditions described in the Software License Agreement is prohibited under Taiwanese and international laws.
  2. Advantech Co., Ltd makes every attempt to provide the user with functionality and usability of the Product and accuracy of its documentation. However, if you should find any errors or omissions in this manual, please contact Advantech Co., Ltd.
  3. Regardless of the above provisions, Advantech Co., Ltd shall not be held responsible for any damages or third party claims resulting from the use of this product.
  4. Difference may occur between the descriptions found in this manual and the actual functioning of this product. For the latest information, please refer to the provided data files (i.e. readme.txt files, etc) or other Advantech Technologies Incorporation documentation.
  5. Information recorded in or displayed by this product may include content related to intangible assets or intellectual properties owned by Advantech Co., Ltd or by a third-party. However, this does not imply that Advantech Co., Ltd grants the user or other third-parties any license or permits to use such assets or properties.

Precautions

  1. Do not use the touch panel switch as an emergency stop switch. For safety reasons, it is required that all industrial machinery and systems must be equipped with a mechanical, manually-operated emergency stop switch.
  2. Do not use the touch panel switch that could result in human injury or equipment damage. Failure with the touch panel, the processing unit, and the cables that make the output stuck at ON or OFF could result in a serious accident.


Documentation Conventions

Product-related Abbreviations and Terminology

This manual uses the following terminology.

Terminology | Description
The Software | Indicates HMINavi Designer, the integrated development tool for HMI products
The HMI Runtime | Indicates HMINavi Runtime, a software running on the Windows based devices.
Application | The screen application created by the Software on the PC.
Target Panel | The HMI (Human-Machine Interface) units where the screen application is downloaded to and displayed from or the computer that runs the HMI Runtime.
The HMI unit(s) | All WebOP Series HMI products
T series | WebOP-200T series HMI products
K series | WebOP-200K series HMI products
Controller | Indicates controller, such as programmable logic controllers (PLCs), motion controllers, thermal controllers, inverters, and so on.

This manual uses the following abbreviations.

Abbreviations | Corresponding Target Panel
WebOP | All WebOP Series HMI products


Technical Support Information

Advantech Taiwan (Headquarters)
No.1, Alley 20, Lane 26, Rueiguang Road, Neihu District, Taipei 114519, Taiwan
Toll Free: 0800-777-111
Phone: 886-2-2792-7818
Email us

Advantech America
1320 Kemper Meadow Dr., Suite 500, Cincinnati, OH 45240, USA
Toll Free: 1-800-205-7940
Phone: 1-800-205-7940
E-mail: rma.aci@advantech.com

Advantech Europe
Kolberger Strasse 7, 40599 Düsseldorf, Germany
Toll Free: 00-800-2426-8081
Phone: 00800 24 26 80 81 (toll free)
E-mail: customerservice.aeu@advantech.com

Advantech China (Industrial Automation Group)
6th Street No. 7 Shang Di Zone,
Hai-Dian District
100085 Beijing, China
Toll Free: 800-810-0345
Phone: 86-10-6298-4346
E-mail: feng.tao@advantech.com.cn


System Requirements

The following hardware and software are required to use HMINavi Designer.

Free hard disk space

HMINavi Designer, once installed, takes around 600 MB of hard disk space. The installation procedure (only at installation time) requires twice as much (i.e. 1200MB).

RAM working memory

The memory requirements are as required by the OS. However a minimum of 1024MB RAM is recommended for decent performance when the user is having large projects with high color bitmaps.

Minimum OS requirements:

Windows Vista™
Windows 7™
Windows 10™


Software Installation

Installing Advantech HMINavi Designer

To install the software, you may do the following:

  1. Close all other programs.
  2. Select and click setup.exe in the CD or Advantech HMINavi Designer’s installation folder.
  3. Follow the on screen prompts.
  4. The default location for the software is " C:\Program Files\Advantech\Advantech HMINavi Designer”. You also have the option to change the software to a different location on your hard drive.

The installation procedure will create a program group within Windows™. A software icon [image] will be added to your desktop. The software also appears on the Windows™ start menu under Start > All Programs > Advantech Automation > Advantech HMINavi Designer

Technical Support

For questions about Advantech HMINavi Designer, contact your local sales representative or mail to info@advantech.com.

How to Report a Bug

The software development team is proud to present a high quality program with minimal bugs. Despite their best efforts, however, bugs do occasionally appear. Should you notice a problem with the software that you think may be a bug, please report it to your local sales representative or mail it to info@advantech.com.

Please include as much information as possible, including a description of the irregularity, the type of PC and panel that you have, any other software that was running when the problem occurred, and the sequence of steps that led to the problem.

Software License

This is a legal agreement between you (either an individual or a single entity) and Advantech for Advantech HMINavi Designer, which includes computer software and may include associated media, printed materials, and 'on-line' electronic documentation.

By installing, copying, downloading, accessing, or otherwise using Advantech HMINavi Designer, you agree to be bound by the terms of this License. If you do not agree to the terms of this agreement, do not install or use Advantech HMINavi Designer. Advantech HMINavi Designer is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. Advantech HMINavi Designer is licensed, not sold.

Grant of License

With this License Advantech grants you the non-exclusive right to use Advantech HMINavi Designer in accordance with the following terms:

You may install, use, access, display, run, or otherwise interact with ('RUN') one copy of the Advantech HMINavi Designer on a single computer, workstation ('COMPUTER'). The primary user of the COMPUTER on which the Advantech HMINavi Designer is installed may make a second copy for his or her exclusive use on a portable computer.

You may also store or install a copy of the Advantech HMINavi Designer on a storage device, such as a network server, used only to RUN the Advantech HMINavi Designer on your other COMPUTERS over an internal network; however, you must acquire and dedicate a license for each separate COMPUTER on which the Advantech HMINavi Designer is RUN from the storage device. A license for the Advantech HMINavi Designer may not be shared or used concurrently on different COMPUTERS.

Transfer of License

The initial licensee of the Advantech HMINavi Designer may make a one-time permanent transfer of this License and the Advantech HMINavi Designer only directly to an end user. This transfer must include all of the Advantech HMINavi Designer (including all component parts, the media and printed materials and this License). The transferee of such one-time transfer must agree to comply with the terms of this License, including the obligation not to further transfer this License and the Advantech HMINavi Designer.

Limitations

You may not reverse engineer, decompile, or disassemble the Advantech HMINavi Designer, except and only the extent that such activity is expressly permitted by applicable law notwithstanding this limitation.

The Advantech HMINavi Designer is licensed as a single product, its component parts may not be separated for use on more than one COMPUTER.

Copyright

All title and copyrights in and to the Advantech HMINavi Designer (including but not limited to any images, photographs, animations, video, audio, music and text incorporated into the Advantech HMINavi Designer), the accompanying printed materials, and any copies of the Advantech HMINavi Designer are owned by Advantech or its suppliers. If this Advantech HMINavi Designer contains documentation which is provided only in electronic form, you may print one copy of such electronic documentation. You may not copy the printed materials accompanying the Advantech HMINavi Designer.

Intellectual Property

The Intellectual Property of the Advantech HMINavi Designer (including but not limited to any images, photographs, animations, video, audio, music and text incorporated into the Advantech HMINavi Designer) is owned by Advantech International.

Disclaimer (Limited Warranty)

The Advantech HMINavi Designer is provided 'as is' and without warranty of any kind, express, implied or otherwise, including without limitation, any warranty of merchantability or fitness for a particular purpose.

In no event shall Advantech be liable for any special, incidental, indirect or consequential damages of any kind, or any damages whatsoever resulting from loss of use, data or profits, whether or not advised of e possibility of damage, and on any theory of liability, arising out of or in connection with the use of the Advantech HMINavi Designer.


The Features of the Software

(A) Word's Bit Usage:

No. | Operation | Objects
01 | Touch operation control | Screen objects
02 | Visibility | Screen objects
03 | Write Address | Bit Button, Toggle Switch
04 | Monitor Address | Bit Button, Bit Lamp, Toggle Switch, Picture Display, Message Display, GIF Display
05 | Read Trigger, Clear Trigger | Line Chart, Scatter Chart, Path Display
06 | Color control bit | Line, Rectangle, Circle, Ellipse, Polyline, Polygon


The Range Limitation of the Software

(A) The limitation of one project:

No. | Item | Maximum
01 | Number of panel applications | 128
02 | Number of languages | 10
03 | Number of font templates per language | 20

(B) The limitation of one panel application:

No. | Item | Maximum
01 | Number of tags | No Limitation
02 | Number of macros | No Limitation
03 | Number of objects in one screen | No Limitation
04 | Number of communication links | 4/16
05 | Regular user memory ($U) | 131072 words
06 | Battery backed user memory ($N) | 131072 words
07 | Number of screens | 7999
08 | Number of passwords | User Password: 8 Developer Password: 1 Runtime users/passwords: 32
09 | Number of Discrete Alarm Blocks | 64
10 | Number of Analog Alarm Blocks | 64
11 | Number of Recipe Blocks | 16
12 | Recipe Size | 8192 words
13 | Number of recipes per Recipe Block | 65535
14 | Number of Data Loggers | 16
15 | Sample Size (Each Block) | 1023 words
16 | Number of Samples (Each Block) | 4194304
17 | Number of Schedules | 80
18 | Number of files in one folder | 4096 Note: You need to arrange the files that are beyond the limit in a new folder. To create a new folder every day or every month by the software, please see Section 3.1.4 Specifying Default Folder for File IO for details.

(C) The maximal size of an application:

The maximal size of an application that can be downloaded to the HMI unit is increased. The following tables show the maximal sizes of K series and T series HMI units. Note that the actual allowable size will be less than the listed maximal size more or less, because an application also needs extra memory space for temporary storage and data processing at run time.

T Series:

Display Size | Maximal Size
7" | 50 MB
10" | 48 MB
12“，15" | 47 MB

K Series:

Display Size | Maximal Size
4.3", 7" | 50 MB
8" | 49 MB
10" | 48 MB
12“，15" | 47 MB


1.1 Project Development Steps

Project Development Steps


1.2.1 Main Menus

Main Menus

There are 11 drop down menus you can select in the main menu: File, Edit, View, Screen, Draw, Object, Project, Panel, Tools, Window, Help.


1.2.1.1 File Menu

File Menu

Icon | Menu Item | Shortcut | Description
 | New | Ctrl+N | Create a new project.
 | Open... | Ctrl+O | Open an existing project.
 | Close |  | Close the current project.
 | Save | Ctrl+S | Save the current project.
 | Save As... |  | Save the current project with a new name.
 | <Recently opened filename> |  | Open the referred project.
 | Exit |  | Exit the software.


1.2.1.2 Edit Menu

Edit Menu

Icon | Menu Item | Pop-up Menu Item | Shortcut | Description
 | Undo |  | Ctrl+Z | Undo the last action.
 | Redo |  | Ctrl+Y | Redo the previously undone action.
 | Cut |  | Ctrl+X | Cut the selection and put it on the Clipboard.
 | Copy |  | Ctrl+C | Copy the selection and put it on the Clipboard.
 | Paste |  | Ctrl+V | Place the Clipboard contents on the current screen.
 | Delete |  | Del | Delete the selection.
 | Duplicate... |  |  | Duplicate the selected object.
 | Find and Replace | Find... |  | Find the specified text.
 |  | Replace... |  | Replace specific text with different text.
 |  | Find Macro... |  | Find the specified macro used in the current panel application.
 | Show Grid |  |  | Show or hide the grid.
 | Snap to Grid |  |  | Select or deselect the option of aligning objects to the grid points.
 | Grid Settings... |  |  | Opens the Grid Settings dialog box.
 | Select All |  | Ctrl+A | Select entire objects of the active screen.
 | Group |  |  | Group the selection.
 | Ungroup |  |  | Ungroup the selected group.
 | Pin |  |  | Pin the selection, so it cannot be moved.
 | Unpin |  |  | Unpin the selection, so it can be moved again.
 | Auto Text Resizing |  |  | Select or deselect the option of automatic text resizing.
 | Align | Left |  | Align the left sides of selected objects to the left side of the reference object. All the objects move horizontally so their left sides are in line with the left side of the reference object.
 |  | Vertical Center |  | Align the vertical centers of selected objects to the vertical center of the reference object. All the objects move horizontally so their vertical centers are in line with the vertical center of the reference object.
 |  | Right |  | Align the right sides of selected objects to the right side of the reference object. All the objects move horizontally so their right sides are in line with the right side of the reference object.
 |  | Top |  | Align the tops of the selected objects to the top of the reference object. All the objects move vertically so their tops are in line with the top of the reference object.
 |  | Horizontal Center |  | Align the horizontal centers of selected objects to the horizontal center of the reference object. All the objects move vertically so their horizontal centers are in line with the horizontal center of the reference object.
 |  | Bottom |  | Align the bottoms of selected objects to the bottom of the reference object. All the objects move vertically so their bottoms are in line with the bottom of the reference object.
 |  | To Grid |  | Select or deselect the option of aligning objects to the grid points.
 | Space Evenly | Across |  | Even the horizontal spacing between the selected objects.
 |  | Down |  | Even the vertical spacing between the selected objects.
 |  | Above All |  | Even the horizontal and vertical spacing between the selected objects.
 | Make Same Size | Width |  | Make the selected objects have the same width as the reference object.
 |  | Height |  | Make the selected objects have the same height as the reference object.
 |  | Both |  | Make the selected objects have the same width and height as the reference object.
 | Nudge | Left |  | Nudge the selection left. When the Snap to Grid option is not selected, all objects of the selection move one pixel left. When the Snap to Grid option is selected, each object of the selection moves left to where its upper-left corner aligns to the nearest grid point.
 |  | Right |  | Nudge the selection right. When the Snap to Grid option is not selected, all objects of the selection move one pixel right. When the Snap to Grid option is selected, each object of the selection moves right to where its upper-left corner aligns to the nearest grid point.
 |  | Up |  | Nudge the selection up. When the Snap to Grid option is not selected, all objects of the selection move one pixel up. When the Snap to Grid option is selected, each object of the selection moves up to where its upper-left corner aligns to the nearest grid point.
 |  | Down |  | Nudge the selection down. When the Snap to Grid option is not selected, all objects of the selection move one pixel down. When the Snap to Grid option is selected, each object of the selection moves down to where its upper-left corner aligns to the nearest grid point.
 | Layer | Bring to Top |  | Bring the selection to the top.
 |  | Bring Forward |  | Bring the selected object one layer up.
 |  | Send Backward |  | Send the selected object one layer down.
 |  | Send to Bottom |  | Send the selection to the bottom.
 | Set Order |  |  | Start the order setting process for the objects of the active screen.
 | Object Properties... |  |  | Open the property sheet of the selected object.
 | Save as Default |  |  | Save the selected object as the default object for the type of that object. Default objects are saved in the Objects category of the object library.
 | Save to Object Library... |  |  | Save the selected object to the object library.
 | Save as Global Object… |  |  | Save the selected object as the global object which is saved in the Global category of the object library. Global Objects can be used for the Global Object Containers.

Note:
1. To add an object to the selection, use [Shift+Click].

2. To select a reference object from the selection, use [Ctrl+Click] or [Click].


1.2.1.3 View Menu

View Menu

Icon | Menu Item | Pop-up Menu Item | Description
 | Address | Write/Monitor | Display the Write address and Monitor address defined for each object of all the opened screens.
 |  | Write | Display the Write address defined for each object of all the opened screens.
 |  | Monitor | Display the Monitor address defined for each object of all the opened screens.
 |  | Read | Display the Read address defined for each object of all the opened screens.
 |  | Notification | Display the Notification address defined for each object of all the opened screens.
 |  | Touch Operation Control | Display the address of the Touch Operation Control bit defined for each object of all the opened screens.
 |  | Visibility Control | Display the address of the Visibility Control bit defined for each object of all the opened screens.
 | Show Tips |  | Select or deselect the option to display tip for the toolbar icon or the object where the cursor stays.
 | Zoom | 25% | Display screens in 25% of their normal sizes.
 |  | 50% | Display screens in 50% of their normal sizes.
 |  | 70% | Display screens in 75% of their normal sizes.
 |  | 80% | Display screens in 80% of their normal sizes
 |  | 90% | Display screens in 90% of their normal sizes
 |  | 100% | Display screens in 100% of their normal sizes.
 |  | 150% | Display screens in 150% of their normal sizes.
 |  | 200% | Display screens in 200% of their normal sizes.
 |  | 300% | Display screens in 300% of their normal sizes.
 | Normal Size |  | Display screens in normal size.
 | Project Manager |  | Show or hide Project Manager.
 | Screen Manager |  | Show or hide Screen Manager.
 | Screen Overview |  | Show or hide Screen Overview.
 | Link Overview |  | Show or hide Link Overview.
 | Object Library |  | Show or hide Object Library.
 | Macro Command Properties |  | Show or hide Macro Command Properties window.
 | Object List |  | Show or hide Object List.
 | I/O List |  | Show or hide I/O List.
 | Standard Toolbar |  | Show or hide Standard toolbar.
 | Object Toolbar |  | Show or hide Object toolbar.
 | Draw Toolbar |  | Show or hide Draw toolbar.
 | Text Toolbar |  | Show or hide Text toolbar.
 | Edit Toolbar |  | Show or hide Edit toolbar.
 | Address Toolbar |  | Show or hide Address toolbar.
 | Picture Toolbar |  | Show or hide Picture toolbar.
 | Status Bar |  | Show or hide Status bar.
 | Semi-transparent Object Dialog View |  | Select or deselect the option of displaying the object property dialog box in semi-transparent mode. A semi-transparent dialog box allows you to see the objects underlying the dialog box.
 | <Language name> |  | Display the text of objects in the selected language.


1.2.1.4 Screen Menu

Screen Menu

Icon | Menu Item | Description
 | New Screen... | Create a new screen for the current panel application.
 | Open Screen... | Open an existing screen of the current panel application.
 | Close Screen | Close the current screen.
 | Close All Screens | Close all the opened screens.
 | Cut Screen | Cut the current screen and put it on the Clipboard.
 | Copy Screen | Copy the current screen and put it on the Clipboard.
 | Paste Screen | Insert the screen on the Clipboard to the current panel application.
 | Delete Screen | Delete the current screen.
 | Stretch Screen... | Stretch the current screen.
 | Export Screen... | Export the current screen to a SNF file.
 | Import Screen... | Import a screen from a SNF file for the current panel application.
 | Save Current Screen as Picture... | Save the current screen to a picture file (BMP or JPG format).
 | Save Screens as Pictures... | Open the Save Screens as Pictures dialog box. You can save each of the selected screens to a picture file (BMP or JPG format) using the dialog box.
 | Join Protection | Add the screen into the protection list.
 | Quit Protection | Remove the screen from the protection list.
 | Enable Protection | Enable the protection of all the screens in the protection list.
 | Disable Protection | Disable the protection of all the screens in the protection list.
 | Screen Properties | Open the screen property dialog box for the current screen.


1.2.1.5 Draw Menu

Draw Menu

Icon | Menu Item | Description
 | Dot | Get ready to place a copy of the default dot on a screen.
 | Line | Get ready to place a copy of the default line on a screen.
 | Horizontal Line | Get ready to place a copy of the default horizontal line on a screen.
 | Vertical Line | Get ready to place a copy of the default vertical line on a screen.
 | Polyline | Get ready to draw a polyline on a screen.
 | Rectangle | Get ready to place a copy of the default rectangle on a screen.
 | Round Rectangle | Get ready to place a copy of the default round rectangle on a screen.
 | Clipped Rectangle | Get ready to place a copy of the default clipped rectangle on a screen.
 | Circle | Get ready to place a copy of the default circle on a screen.
 | Ellipse | Get ready to place a copy of the default ellipse on a screen.
 | Arc | Get ready to place a copy of the default arc on a screen.
 | Pie | Get ready to place a copy of the default pie shape on a screen.
 | Polygon | Get ready to draw a polygon on a screen.
 | Text | Get ready to place a copy of the default text object on a screen.
 | Picture | Get ready to place a copy of the default picture object on a screen.
 | Scale | Get ready to place a copy of the default scale on a screen.
 | Table | Get ready to place a copy of the default table on a screen.


1.2.1.6 Object Menu

Object Menu

Icon | Menu Item | Pop-up Menu Item | Description
 | Bit Button |  | Get ready to place a copy of the default bit button on a screen.
 | Toggle Switch |  | Get ready to place a copy of the default toggle switch on a screen.
 | Screen Button |  | Get ready to place a copy of the default screen button on a screen.
 | Function Button |  | Get ready to place a copy of the default function button on a screen.
 | Slide Switch |  | Get ready to place a copy of the default slide switch on a screen.
 | More buttons | Word Button | Get ready to place a copy of the default word button on a screen.
 |  | Multistate Switch | Get ready to place a copy of the default multistate Switch on a screen.
 |  | Radio Button Group | Get ready to place a copy of the default radio button group on a screen.
 |  | Keypad Button | Get ready to place a copy of the default keypad button on a screen.
 |  | Scroll Button Group | Get ready to place a copy of the default scroll button group on a screen.
 |  | Scroll Bar | Get ready to place a copy of the default scroll bar on a screen.
 |  | Step Button | Get ready to place a copy of the default step button on a screen.
 |  | Page Selector | Get ready to place a copy of the default page selector on a screen.
 | Numeric Entry |  | Get ready to place a copy of the default numeric entry on a screen.
 | Numeric Display |  | Get ready to place a copy of the default numeric display on a screen.
 | Advanced Numeric Display |  | Get ready to place a copy of the default advanced numeric display on a screen.
 | Character Entry |  | Get ready to place a copy of the default ASCII string entry on a screen.
 | Character Display |  | Get ready to place a copy of the default ASCII string display on a screen.
 | Bit Lamp |  | Get ready to place a copy of the default bit lamp on a screen.
 | Multistate Lamp |  | Get ready to place a copy of the default multistate lamp on a screen.
 | Message Display |  | Get ready to place a copy of the default message display on a screen.
 | Time/Date | Time Display | Get ready to place a copy of the default time display on a screen.
 |  | Date Display | Get ready to place a copy of the default date display on a screen.
 |  | Day-of-week Display | Get ready to place a copy of the default day-of-week display on a screen.
 | Meter |  | Get ready to place a copy of the default meter on a screen.
 | Dynamic Graphic | Dynamic Line | Get ready to place a copy of the default dynamic line on a screen.
 |  | Dynamic Circle | Get ready to place a copy of the default dynamic circle on a screen.
 |  | Dynamic Rectangle | Get ready to place a copy of the default dynamic rectangle on a screen.
 |  | GIF Display | Get ready to place a copy of the default GIF display on a screen.
 |  | Picture Display | Get ready to place a copy of the default picture display on a screen.
 |  | Animated Graphic | Get ready to place a copy of the default animated graphic on a screen.
 |  | Path Display | Get ready to place a copy of the default path display on a screen.
 | Pipeline |  | Get ready to place a copy of the default pipeline on a screen.
 | Graph/Chart | Bar Graph | Get ready to place a copy of the default bar graph on a screen.
 |  | Line Chart | Get ready to place a copy of the default line chart on a screen.
 |  | Circular Bar Graph | Get ready to place a copy of the default circular bar graph on a screen.
 |  | Scatter Chart | Get ready to place a copy of the default scatter chart on a screen.
 |  | Rotation Indicator | Get ready to place a copy of the default rotation indicator on a screen.
 | Alarm Display |  | Get ready to place a copy of the default alarm display on a screen.
 | Historic Display | Historic Data Table | Get ready to place a copy of the default historic data table on a screen.
 |  | Historic Event Table | Get ready to place a copy of the default historic event table on a screen.
 |  | Historic Trend Graph | Get ready to place a copy of the default historic trend graph on a screen.
 |  | Single Record Line Chart | Get ready to place a copy of the default single record line chart on a screen.
 |  | Historic Scatter Chart | Get ready to place a copy of the default historic scatter chart on a screen.
 |  | Historic Radar Chart | Get ready to place a copy of the default historic radar chart on a screen.
 |  | Operation Log Display | Get ready to place a copy of the default operation log display on a screen.
 | Recipe Selector |  | Get ready to place a copy of the default recipe selector on a screen.
 | Recipe Table |  | Get ready to place a copy of the default recipe table on a screen.
 | Sublink Table |  | Get ready to place a copy of the default sublink table on a screen.
 | Schedule Setting Table |  | Get ready to place a copy of the default schedule setting table on a screen.
 | Window Screen Display |  | Get ready to place a copy of the default screen window on a screen.
 | Global Object Container |  | Get ready to place a copy of the default global object container on a screen.
 | Camera View |  | Get ready to place a copy of the default USB camera view on a screen.


1.2.1.7 Project Menu

Project Menu

Icon | Menu Item |  | Pop-up Menu Item | Description
 | Information and Protection... |  |  | Open the Project Information & Protection dialog box. This dialog box shows the basic information of your project and allows you to define how to protect it.
 | Languages... |  |  | Open the Languages dialog box. You can specify up to 10 languages for your project to support with this dialog box.
 | Font Templates... |  |  | Open the Font Templates dialog box. With this dialog box, you can specify up to 20 fonts as the frequently used fonts for each language.
 | Picture Database... |  |  | Open the Picture Database (dialog box). You can import pictures and organize them for your project in this dialog box.
 | Sound Database... |  |  | Open the Sound Database (dialog box). You can import sounds for your project in this dialog box.
 | Text Database... |  |  | Open the Text Database (dockable window). With Text Database, you can import text, export text, and edit text for your project.
 | Global Tags... |  |  | Open the Global Tags window. You can define the global tags in this window.
 | Global Macros | Native Scripts | Add... | Create a new native script.
 |  |  | Edit | Select a native script to edit.
 |  |  | Delete | Select a native script to delete.
 |  | VB Scripts | Add... | Create a new VB script.
 |  |  | Edit | Select a VB script to edit.
 |  |  | Delete | Select a VB script to delete.
 | Add New Panel Application... |  |  | Create a new panel application.
 | Import Panel Application... |  |  | Import a panel application from a PLF file.
 | Delete Panel Application... |  |  | Select a panel application to delete.


1.2.1.8 Panel Menu

Panel Menu

Icon | Menu Item |  | Pop-up Menu Item | Description
 | Current Panel Application |  | <Panel application name> | Select a panel application as the current application.
 | Link |  | Add... | Add a new communication link to the current application.
 |  |  | Properties | Select a communication link to open its property sheet.
 |  |  | Delete | Select a communication link to delete.
 |  |  | Driver List... | Open communication driver list dialog box which lists all the supported communication drivers. In the dialog box, you can export the driver list to the .csv file.
 | Tags... |  |  | Open the Tags window of the current application. You can define tags for the application in this window.
 | Sound Table... |  |  | Open the Sound Table (dialog box). You can collect sounds for the current application in this dialog box.
 | General Setup... |  |  | Open the Panel General Setup dialog box. You can define the general settings for the current application in this dialog box.
 | Command and Status... |  |  | Open the Command & Status dialog box. You can define the command block and the status words for the current application in this dialog box.
 | Clock... |  |  | Open the Clock dialog box. You can define the clock operations for the current application in this dialog box.
 | Passwords... |  |  | Open the Passwords dialog box. You can define passwords and related settings for the application in this dialog box.
 | Discrete Alarm Block |  | Add | Add a new discrete alarm block to the current application.
 |  |  | Properties | Select a discrete alarm block to open its property sheet.
 |  |  | Delete | Select a discrete alarm block to delete.
 | Analog Alarm Block |  | Add | Add a new analog alarm block to the current application.
 |  |  | Properties | Select an analog alarm block to open its property sheet.
 |  |  | Delete | Select an analog alarm block to delete.
 | Export Alarm Blocks... |  |  | Open the Export Alarm Blocks dialog box. You can export the selected alarm blocks to a CSV file or a XML file.
 | Import Alarm Blocks... |  |  | Import an alarm block from a CSV file or a XML file or an ALM file.
 | Recipe Block |  | Add | Add a new recipe block to the current application.
 |  |  | Properties | Select a recipe block to open its property sheet.
 |  |  | Delete | Select a recipe block to delete.
 |  |  | Export... | Open the Export Recipes dialog box. You can export the selected recipes to a RBF file.
 |  |  | Import... | Import a recipe from a RBF file.
 | Data Logger |  | Add | Add a new data logger to the current application.
 |  |  | Properties | Select a data logger to open its property sheet.
 |  |  | Delete | Select a data logger to delete.
 |  |  | Export... | Open the Export Data Loggers dialog box. You can export the selected data loggers to a DLF file.
 |  |  | Import... | Import a data logger from a DLF file.
 | Operation Logging... |  |  | Open the Operation Logging dialog box. You can define the settings of operation logging for the current application in this dialog box.
 | Schedule... |  | Properties | Open the Schedule dialog box. You can define schedules and related settings for the application in this dialog box.
 |  |  | Export... | Export the schedule to a SCF file.
 |  |  | Import... | Import a schedule from a SCF file.
 | Macro | Native Scripts | Add... | Add a new native script to the current application.
 |  |  | Edit | Select a native script of the current application to edit.
 |  |  | Delete | Select a native script of the current application to delete.
 |  | VB Scripts | Add... | Add a new VB script to the current application.
 |  |  | Edit | Select a VB script of the current application to edit.
 |  |  | Delete | Select a VB script of the current application to delete.
 | Compile.... |  |  | Compile the current application to build the runtime data. You can download the runtime data to the target panel. With the runtime data the target panel can perform exactly what you programmed for the application.
 | Build Panel Runtime Package (PRP)... |  |  | Build the panel runtime package (PRP) file for the current application. The PRP file contains the runtime data and the system programs. You can update the target panel without the project file by downloading the PRP file to it. The target panel can also update itself by loading the PRP file from a USB mass storage device.
 | Build ROM Image... |  |  | Build the ROM image file for the current application. The ROM image file contains the runtime data and the system programs. The target panel can update itself by loading the ROM image file from a micro SD card.
 | Download... |  |  | Download data to the target panel.
 | Upload... |  |  | Upload data from the target panel.
 | Export Panel Application... |  |  | Export the current panel application to a PLF file.


1.2.1.9 Tools Menu

Tools Menu

Icon | Menu Item | Pop-up Menu Item |  | Description
 | Language Selection | Auto |  | When this item is selected:
 |  |  |  | Default Language for the Windows | Language Used for the U/I of the software
 |  |  |  | Simplified Chinese | Simplified Chinese
 |  |  |  | Traditional Chinese | Traditional Chinese
 |  |  |  | Others | English
 |  | English |  | Select English as the language for the U/I of the software.
 |  | Chinese (Simplified) |  | Select simplified Chinese as the language for the U/I of the software.
 |  | Chinese (Traditional) |  | Select traditional Chinese as the language for the U/I of the software.
 | Run Offline Simulation |  |  | Run offline simulation for the current application.
 | Run Online Simulation |  |  | Run online simulation for the current application.
 | Transparent Communication | COM Port | Set... | Open the Set Transparent Communication dialog box.
 |  |  | Start | Start the transparent communication.
 |  |  | End | End the transparent communication.
 |  | Ethernet | Set... | Open the Set Transparent Communication dialog box.
 | Update OS0 through BIOS |  |  | Update the system program OS0 of the target panel through its BIOS. This operation is useful when the system programs of the target panel were destroyed.
 | Export Text... |  |  | Export the text of the current application to a PTX file.
 | Import Text... |  |  | Import the text in a PTX file for the selected application.
 | TextEditor |  |  | Run the TextEditor program to edit the text of a PTX file.


1.2.1.10 Window Menu

Window Menu

Icon | Menu Item | Description
 | Cascade | Arrange windows so they overlap.
 | Tile Vertical | Arrange windows as non-overlapping vertical tiles.
 | Tile Horizontal | Arrange windows as non-overlapping horizontal tiles.
 | Arrange Icon | Arrange icons at the bottom of the window.
 | Restore | Restore the windows to their original sizes and positions.
 | Maximize | Maximize the windows.
 | Opened Window List | Display a list of opened windows titles. You may click the window title to bring the corresponding window to the top.
 | Windows… | Open the Windows dialog box to activate or save or close the selected window.


1.2.1.11 Help Sub-menu

Help Sub-menu

Icon | Menu Item | Description
 | Search | Use search to find the content you need.
 | Contents | Browse the table of contents which including reference documentation, sample codes, technical articles and more for developers using the software. It is in HTML format and contains over 500 topics and 1000 pictures.
 | Index | Use index to jump to some of the most popular functions or features of the software.
 | About... | Open the About… dialog box. You can see the version number of the software in this dialog box.
 | Release Notes | Browse the changes or enhancement made to the features of the software.


1.2.2.1 Main Toolbar

Standard Toolbar

Icon | Tool Tip | Description
 | New | Create a new project.
 | Open | Open an existing project.
 | Save | Save the current project.
 | Cut | Cut the selection and put it on the Clipboard.
 | Copy | Copy the selection and put it on the Clipboard.
 | Paste | Place the Clipboard contents on the current screen.
 | Undo | Undo the last action.
 | Redo | Redo the previously undone action.
 | New Screen... | Create a new screen for the current panel application.
 | Screen Properties | Open the screen property dialog box for the current screen.
 | Previous Screen | Open the previous screen in terms of screen number.
 | Next Screen | Open the next screen in terms of screen number.
 | Zoom In | Make the screen view one step bigger.
 | Zoom Out | Make the screen view one step smaller.
 | Normal Size | Display screens in normal size.
 | Off (State 0) | Show the Off state of all the objects on the current screen.
 | On (State 1) | Show the On state of all the objects on the current screen.
 | State | Select a state for the selected object to show.
 | Compile | Compile the current application to build the runtime data. You can download the runtime data to the target panel. With the runtime data, the target panel performs exactly like how the application was programmed.
 | Download | Download data to the target panel.
 | Download Immediately | Download data using the existing settings to the target panel immediately.
 | Run Offline Simulation | Run offline simulation for the current application.
 | About | Open the About dialog box.


1.2.2.2 Object Toolbar

Object Toolbar

Icon | Tool tip | Description
 | Bit Button | Get ready to place a copy of the default bit button on a screen.
 | Word Button | Get ready to place a copy of the default word button on a screen.
 | Screen Button | Get ready to place a copy of the default screen button on a screen.
 | Page Selector | Get ready to place a copy of the default page selector on a screen.
 | Function Button | Get ready to place a copy of the default function button on a screen.
 | Keypad Button | Get ready to place a copy of the default keypad button on a screen.
 | Scroll Button Group | Get ready to place a copy of the default scroll button group on a screen.
 | Scroll Bar | Get ready to place a copy of the default scroll bar on a screen.
 | Radio Button Group | Get ready to place a copy of the default radio button group on a screen.
 | Step Button | Get ready to place a copy of the default step button on a screen.
 | Toggle Switch | Get ready to place a copy of the default toggle switch on a screen.
 | Multistate Switch | Get ready to place a copy of the default multistate switch on a screen.
 | Slide Switch | Get ready to place a copy of the default slide switch on a screen.
 | Numeric Entry | Get ready to place a copy of the default numeric entry on a screen.
 | ASCII String Entry | Get ready to place a copy of the default ASCII string entry on a screen.
 | Advanced Numeric Display | Get ready to place a copy of the default advanced numeric display on a screen.
 | Bit Lamp | Get ready to place a copy of the default bit lamp on a screen.
 | Multistate Lamp | Get ready to place a copy of the default multistate lamp on a screen.
 | Numeric Display | Get ready to place a copy of the default numeric display on a screen.
 | ASCII String Display | Get ready to place a copy of the default ASCII string display on a screen.
 | Message Display | Get ready to place a copy of the default message display on a screen.
 | Meter | Get ready to place a copy of the default meter on a screen.
 | Time Display | Get ready to place a copy of the default time display on a screen.
 | Date Display | Get ready to place a copy of the default date display on a screen.
 | Day-of-week Display | Get ready to place a copy of the default day-of-week display on a screen.
 | Dynamic Circle | Get ready to place a copy of the default dynamic circle on a screen.
 | Dynamic Rectangle | Get ready to place a copy of the default dynamic rectangle on a screen.
 | GIF Display | Get ready to place a copy of the default GIF display on a screen.
 | Picture Display | Get ready to place a copy of the default picture display on a screen.
 | Animated Graphic | Get ready to place a copy of the default animated graphic on a screen.
 | Path Display | Get ready to place a copy of the default path display on a screen.
 | Pipeline | Get ready to place a copy of the default pipeline on a screen.
 | Bar Graph | Get ready to place a copy of the default bar graph on a screen.
 | Line Chart | Get ready to place a copy of the default line chart on a screen.
 | Circular Bar Graph | Get ready to place a copy of the default circular bar graph on a screen.
 | Scatter Chart | Get ready to place a copy of the default scatter chart on a screen.
 | Rotation Indicator | Get ready to place a copy of the default rotation indicator on a screen.
 | Alarm Display | Get ready to place a copy of the default alarm display on a screen.
 | Historic Data Table | Get ready to place a copy of the default historic data table on a screen.
 | Historic Event Table | Get ready to place a copy of the default historic event table on a screen.
 | Historic Trend Graph | Get ready to place a copy of the default historic trend graph on a screen.
 | Operation Log Display | Get ready to place a copy of the default operation log display on a screen.
 | Single Record Line Chart | Get ready to place a copy of the default single record line chart on a screen.
 | Historic Scatter Chart | Get ready to place a copy of the default historic scatter chart on a screen.
 | Historic Radar Chart | Get ready to place a copy of the default historic radar chart on a screen.
 | Recipe Selector | Get ready to place a copy of the default recipe selector on a screen.
 | Recipe Table | Get ready to place a copy of the default recipe table on a screen.
 | Sublink Table | Get ready to place a copy of the default sublink table on a screen.
 | Schedule Setting Table | Get ready to place a copy of the default schedule setting table on a screen.
 | Window Screen Display | Get ready to place a copy of the default screen window on a screen.
 | USB Camera View | Get ready to place a copy of the default USB camera view on a screen.


1.2.2.3 Draw Toolbar

Draw Toolbar

Icon | Tool Tip | Description
 | Dot | Get ready to place a copy of the default dot on a screen.
 | Line | Get ready to place a copy of the default line on a screen.
 | Horizontal Line | Get ready to place a copy of the default horizontal line on a screen.
 | Vertical Line | Get ready to place a copy of the default vertical line on a screen.
 | Polyline | Get ready to draw a polyline on a screen.
 | Rectangle | Get ready to place a copy of the default rectangle on a screen.
 | Round Rectangle | Get ready to place a copy of the default round rectangle on a screen.
 | Clipped Rectangle | Get ready to place a copy of the default clipped rectangle on a screen.
 | Polygon | Get ready to draw a polygon on a screen.
 | Circle | Get ready to place a copy of the default circle on a screen.
 | Ellipse | Get ready to place a copy of the default ellipse on a screen.
 | Arc | Get ready to place a copy of the default arc on a screen.
 | Pie | Get ready to place a copy of the default pie shape on a screen.
 | Table | Get ready to place a copy of the default table on a screen.
 | Scale | Get ready to place a copy of the default scale on a screen.
 | Text | Get ready to place a copy of the default text object on a screen.
 | Picture | Get ready to place a copy of the default picture object on a screen.
 | Dot Style | Select a dot style for the selected dot.
 | Line Style | Select a line style for the selected shape.
 | Border Color | Select a color for the border of the selected shape.
 | BG Color | Select a color for the background of the selected solid shape.
 | Pattern Style | Select a pattern for the selected solid shape.
 | FG/Pattern Color | Select a color for the pattern of the selected solid shape.


1.2.2.4 Text Toolbar

Text Toolbar

Icon | Tool Tip | Description
 | Text Type | Select the type of text you are working on.
 |  | Text Type | Description
 |  | Inner Text | Text displayed inside of an object.
 |  | External Text | Text of the external label of an object.
 | Language | Select a language that you are defining the text for.
 | Font | Select a font for the text.
 | Size | Select a font size for the text.
 | Text | Edit the text. Click [image] to select the text from text database.
 | Text | Select the text from the text database. Click [image] to edit text.
 | Text Color | Select a color for the text.
 | Background Color | Select a color for the background of the object.
 | Center Position | Position the text at the center within the object.
 | Horizontal Position | Change the horizontal position of the text within the object.
 | Vertical Position | Change the vertical position of the text within the object.
 | Align Left | Align the text to the left of the text body.
 | Center | Align the text to the center of the text body.
 | Align Right | Align the text to the right of the text body.
 | External Label Position | Change the position of the external label.


1.2.2.5 Edit Toolbar

Edit Toolbar

Icon | Tool Tip | Description
 | Left | Align the left sides of selected objects to the left side of the reference object. All the objects move horizontally so their left sides are in line with the left side of the reference object.
 | Vertical Center | Align the vertical centers of selected objects to the vertical center of the reference object. All the objects move horizontally so their vertical centers are in line with the vertical center of the reference object.
 | Right | Align the right sides of selected objects to the right side of the reference object. All the objects move horizontally so their right sides are in line with the right side of the reference object.
 | Top | Align the tops of the selected objects to the top of the reference object. All the objects move vertically so their tops are in line with the top of the reference object.
 | Horizontal Center | Align the horizontal centers of selected objects to the horizontal center of the reference object. All the objects move vertically so their horizontal centers are in line with the horizontal center of the reference object.
 | Bottom | Align the bottoms of selected objects to the bottom of the reference object. All the objects move vertically so their bottoms are in line with the bottom of the reference object.
 | To Grid | Select or deselect the option of aligning objects to the grid points.
 | Make Same Width | Make the selected objects have the same width as the reference object.
 | Make Same Height | Make the selected objects have the same height as the reference object.
 | Make Same Size | Make the selected objects have the same width and height as the reference object.
 | Nudge Left | Nudge the selection left. When the Snap to Grid option is not selected, all objects of the selection move one pixel left. When the Snap to Grid option is selected, each object of the selection moves left to where its upper-left corner aligns to the nearest grid point.
 | Nudge Right | Nudge the selection right. When the Snap to Grid option is not selected, all objects of the selection move one pixel right. When the Snap to Grid option is selected, each object of the selection moves right to where its upper-left corner aligns to the nearest grid point.
 | Nudge Up | Nudge the selection up. When the Snap to Grid option is not selected, all objects of the selection move one pixel up. When the Snap to Grid option is selected, each object of the selection moves up to where its upper-left corner aligns to the nearest grid point.
 | Nudge Down | Nudge the selection down. When the Snap to Grid option is not selected, all objects of the selection move one pixel down. When the Snap to Grid option is selected, each object of the selection moves down to where its upper-left corner aligns to the nearest grid point.
 | Bring to Top | Bring the selection to the top.
 | Bring Forward | Bring the selected object one layer up.
 | Send Backward | Send the selected object one layer down.
 | Send to Bottom | Send the selection to the bottom.
 | Group | Group the selection.
 | Ungroup | Ungroup the selected group.
 | Pin | Pin the selection, so it cannot be moved.
 | Unpin | Unpin the selection, so it can be moved again.
 | Auto Text Resizing | Select or deselect the option of automatic text resizing.


1.2.2.6 Address Toolbar

Address Toolbar

Icon | Tool Tip | Description
 | Write Address | Specifies the Write address of the selected object.
 | Read Address | Specifies the Read address of the selected object.
 | Monitor Address | Specifies the Monitor address of the selected object.


1.2.2.7 Picture Toolbar

Picture Toolbar

Icon | Tool Tip | Description
 | Picture Name | Specifies the picture name. You can select an imported picture here using the drop-down list.
 | Import from File | Select a picture from a picture file.
 | Select/Import from Library | Select a picture from the software provided picture library.
 | Transparent | Select or deselect the option that parts of the picture are transparent. The transparent parts are pixels having the specified transparent color.
 | Transparent Color | Select a color as the transparent color.
 | Flip/Rotate | Select a method to rotate/flip the picture.
 | Tone | Select or deselect the option that the picture is toned with the specified toning color.
 | Toning Color | Select a color as the toning color.
 | Fit to Object | Stretch the picture so it has the same size as the object.
 | Center | Position the picture at the center location within the object.
 | Horizontal Position | Change the horizontal position of the picture within the object.
 | Vertical Position | Change the vertical position of the picture within the object.
 | Background Color | Select a color for the background of the object.


1.2.2.8 Status Bar

Status Bar


1.2.3 Project Manager

Project Manager

The Project Manager is a dockable window with a project tree. You can manage your project with it easily. To open the Project Manager, check the Project Manager menu item in the View menu. The following is an example of the Project Manager. In this example, the project My Project has two panel applications: MyAP_1 and MyAp_2.

Project Node ( )

The label of the Project node is the project name. You can do the following with the Project node:

1) Double-click it to open the Project Information & Protection dialog box.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Add Panel Application... | Create a new panel application.
Import Panel Application... | Import a panel application from a PLF file.
Information | Open the Project Information & Protection dialog box.
Toggle All | Expand all the collapsed lists of sub-nodes and collapse all the expanded lists of sub-nodes.

Global Node ( )

The Global node has seven sub-nodes. You can do the following with the Global node:
1) Double-click it to expand or collapse the list of its sub-nodes.

Languages Node ( )

You can do the following with the Languages node:
1) Double-click it to open the Languages dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Languages dialog box.

Font Templates Node ( )

You can do the following with the Font Templates node:
1) Double-click it to open the Font Templates dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Font Templates dialog box.

Picture Database Node ( )

You can do the following with the Picture Database node:
1) Double-click it to open the Picture Database dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Picture Database dialog box.

Sound Database Node ( )

You can do the following with the Sound Database node:
1) Double-click it to open the Sound Database dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Sound Database dialog box.

Text Database Node ( )

You can do the following with the Text Database node:
1) Double-click it to open the Text Database dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Open | Open the Text Database window.

Global Tags Node ( )

You can do the following with the Global Tags node:
1) Double-click it to open the Global Tags window.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Open | Open the Global Tags window.

Global Macros Node ( )

The Global Macros node has two sub-nodes: Native Scripts Node and VB Scripts Node. You can do the following with the Global Macros node:
1) Double-click it to expand or collapse the list of its sub-nodes.

Global Native Scripts Node ( )

The Global Native Scripts node can have many Global Native Script sub-nodes. Each Global Native Script node is associated with a global native script of the project.
You can do the following with the Global Native Scripts node:
1) Double-click it to expand or collapse the list of its sub-nodes.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Add Script... | Create a new global native script.
Import Script | Import a global native script from an MCR file or a TXT file.

Global Native Script Node ( )

Each Global Native Script node is associated with a global Native Script of the project. You can do the following with the Global Native Script node:
1) Double-click it to open the editing window of the associated native script.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Open | Open the editing window of the associated script.
Close | Close the editing window of the associated script.
Rename | Rename the associated script.
Delete | Delete the associated script.
Export Script... | Export the associated script to an MCR file or a TXT file.
Join Protection | Protect a script and add it into the protection list.
Quit Protection | Unprotect a script and remove it from the protection list.
Enable Protection | Resumes the protection of all the previously protected scripts in the protection list.
Disable Protection | Unprotect all the protected scripts in the protection list.

Panel Application Node ( )

The label of a Panel Application node is the associated application name. You can do the following with the Panel Application node:
1) Double-click it to open the General Setup dialog box.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Rename | Rename the panel application.
Delete | Delete the panel application.
General Setup | Open the General Setup dialog box.
Export Panel Application... | Export the panel application to a PLF file.
Toggle All | Expand all the collapsed lists of sub-nodes and collapse all the expanded lists of sub-nodes.
Move Up | Move the panel application up if it is not on the top of panel application list.
Move Down | Move the panel application down if it is not on the bottom of panel application list.

Links Node ( )

The Links node has one Internal Memory sub-node and can have up to 16 Link sub-nodes. You can do the following with the Links node:
1) Double-click it to expand or collapse the list of its sub-nodes.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Add Link... | Create a new communication link.
Driver Link... | Open communication driver list dialog box which lists all the supported communication drivers. In the dialog box, you can export the driver list to the .csv file.

Internal Memory Node ( )

You can do the following with the Internal Memory node:
1) Double-click it to open the Internal Memory dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Internal Memory dialog box.

Link Node ( )

A Link node is associated with a communication link. You can do the following with the Link node:
1) Double-click it to open the Link Properties dialog box of the associated communication link.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Rename | Rename the associated communication link.
Delete | Delete the associated communication link.
Properties... | Open the Link Properties dialog box of the associated communication link.

Tags Node ( )

You can do the following with the Tags node:
1) Double-click it to open the Tags window.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Open | Open the Tags window.

Sound Table Node ( )

You can do the following with the Sound Table node:
1) Double-click it to open the Sound Table dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Sound Table dialog box.

Setup Node ( )

The Setup node has four sub-nodes. You can do the following with the Setup node:
1) Double-click it to expand or collapse the list of its sub-nodes.

General Setup Node ( )

You can do the following with the General Setup node:
1) Double-click it to open the General Setup dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the General Setup dialog box.

Command & Status Node ( )

You can do the following with the Command & Status node:
1) Double-click it to open the Command & Status dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Command & Status dialog box.

Clock Node ( )

You can do the following with the Clock node:
1) Double-click it to open the Clock dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Clock dialog box.

Passwords Node ( )

You can do the following with the Passwords node:
1) Double-click it to open the Passwords dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Passwords dialog box.

Screens Node ( )

The Screens node can have many Screen sub-nodes. Each Screen sub-nodes is associated with a screen of the panel application. You can do the following with the Screens node:
1) Double-click it to expand or collapse the list of its sub-nodes.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
New Screen... | Create a new screen.
Import Screen... | Import a screen from an SNF file.
Sort by Name | Sort the list of Screen sub-nodes by the screen name.
Sort by Number | Sort the list of Screen sub-nodes by the screen number.
Close All Screens | Close all opened screens.
Save Screens as Pictures... | Open the Save Screens as Pictures dialog box. You can save each of the selected screens to a picture file using the dialog box.

Screen sub-Node ( )

Each Screen sub-Node is associated with a screen of the panel application. You can do the following with the Screen sub-node:
1) Double-click it to open the associated screen if the screen is not opened yet.
2) Double-click it to open the property sheet of the associated screen if the screen is already opened.
3) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Open | Open the associated screen.
Delete | Delete the associated screen.
Properties | Open the property sheet of the associated screen.
Export Screen... | Export the associated screen to an SNF file.
Join Protection | Protect a screen and add it into the protection list.
Quit Protection | Unprotect a screen and remove it from the protection list.
Enable Protection | Resumes the protection of all the previously protected screens in the protection list.
Disable Protection | Unprotect all the protected screens in the protection list.

Alarms Node ( )

The Alarms node can have many Discrete Alarm Block sub-nodes and Analog Alarm Block sub-nodes. You can do the following with the Alarms node:
1) Double-click it to open the Alarm Properties dialog box.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Add Discrete Alarm Block | Create a new discrete alarm block.
Add Analog Alarm Block | Create a new analog alarm block.
Properties | Open the Alarm Properties dialog box.
Export Alarm Blocks... | Open the Export Alarm Blocks dialog box to export the associated alarm block or all alarm blocks to a CSV file or XML file.
Import Alarm Blocks... | Import an alarm block from an ALM file or a CSV file or a XML file.

Discrete Alarm Block Node ( )

A Discrete Alarm Block node is associated with a discrete alarm block of the panel application. You can do the following with the Discrete Alarm Block node:
1) Double-click it to open the Discrete Alarm Block dialog box of the associated alarm block.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Delete | Delete the associated discrete alarm block.
Properties | Open the Discrete Alarm Block dialog box of the associated discrete alarm block.

Analog Alarm Block Node ( )

An Analog Alarm Block node is associated with an analog alarm block of the panel application. You can do the following with the Analog Alarm Block node:
1) Double-click it to open the Analog Alarm Block dialog box of the associated alarm block.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Delete | Delete the associated analog alarm block.
Properties | Open the Analog Alarm Block dialog box of the associated analog alarm block.

Recipes Node ( )

The Recipes node can have many Recipe Block sub-nodes. Each Recipe Block sub-node is associated with a recipe block of the panel application. You can do the following with the Recipes node:
1) Double-click it to expand or collapse the list of its sub-nodes.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Add Recipe Block | Create a new recipe block.
Export... | Open the Export Recipes dialog box. You can export the selected recipes to a RBF file.
Import... | Import a recipe from a RBF file.

Recipe Block Node ( )

A Recipe Block node is associated with a recipe block of the panel application. You can do the following with the Recipe Block node:
1) Double-click it to open the Recipe Block dialog box of the associated recipe block.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Delete | Delete the associated recipe block.
Properties | Open the Recipe Block dialog box of the associated recipe block.

Data Loggers Node ( )

The Data Loggers node can have many Data Logger sub-nodes. Each Data Logger sub-node is associated with a data logger of the panel application. You can do the following with the Data Loggers node:
1) Double-click it to expand or collapse the list of its sub-nodes.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Add Data Logger | Create a new data logger.
Export... | Open the Export Data Loggers dialog box. You can export the selected data loggers to a DLF file.
Import... | Import a data logger from a DLF file.

Data Logger Node ( )

A Data Logger node is associated with a data logger of the panel application. You can do the following with the Data Logger node:
1) Double-click it to open the Data Logger dialog box of the associated recipe block.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Delete | Delete the associated data logger.
Properties | Open the Data Logger dialog box of the associated data logger.

Operation Logging Node ( )

You can do the following with the Operation Logging node:
1) Double-click it to open the Operation Logging dialog box.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Properties... | Open the Operation Logging dialog box.

Schedule Node ( )

You can do the following with the Schedule node:
1) Double-click it to open the Schedule dialog box.
2) Right-click it to get a pop-up menu with the following menu item:

Menu Item | Description
Properties... | Open the Schedule dialog box.
Export... | Export the schedule to a SCF file.
Import... | Import a schedule from a SCF file.

Macros Node ( )

The Macros node has two sub-nodes: Native Scripts Node and VB Scripts Node. You can do the following with the Macros node:
1) Double-click it to expand or collapse the list of its sub-nodes.

Native Scripts Node ( )

The Native Scripts node can have many Native Script sub-nodes. Each Native Script sub-node is associated with a native script of the panel application. You can do the following with the Native Scripts node:
1) Double-click it to expand or collapse the list of its sub-nodes.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Add Script... | Create a new script.
Import Script | Import a macro from an MCR file or a TXT file.

Native Script Node ( )

Each Native Script node is associated with a Native Script of the panel application. You can do the following with the Native Script node:
1) Double-click it to open the editing window of the associated script.
2) Right-click it to get a pop-up menu with the following menu items:

Menu Item | Description
Open | Open the editing window of the associated macro.
Close | Close the editing window of the associated macro.
Rename | Rename the associated macro.
Delete | Delete the associated macro.
Export Script | Export the associated macro to an MCR file or a TXT file.
Join Protection | Protect a script and add it into the protection list.
Quit Protection | Unprotect a script and remove it from the protection list.
Enable Protection | Resumes the protection of all the previously protected scripts in the protection list.
Disable Protection | Unprotect all the protected scripts in the protection list.


1.2.4 Screen Manager

Screen Manager

The Screen Manager is a dockable window. You can manage the screens of your project with it easily. To open the Screen Manager, check the Screen Manager menu item in the View menu. The following is an example of the Screen Manager that lists the screens of the application EV-104 of the project.

The following is an example of the Screen Manager that shows the screens in thumbnail view.

You can right-click the Screen Manager to get the pop-up menu with the following menu items:

Icon | Menu Item | Description
 | New Screen... | Create a new screen for the current panel application.
 | Open Screen... | Open the selected screen.
 | Cut Screen | Cut the selected screen and put it on the Clipboard.
 | Copy Screen | Copy the selected screen and put it on the Clipboard.
 | Paste Screen | Insert the screen on the Clipboard to the current panel application.
 | Delete Screen | Delete the selected screen.
 | Export Screen... | Export the selected screen to a file.
 | Import Screen... | Import a screen from a file for the current panel application.
 | Join Protection | Add the screen into the protection list.
 | Quit Protection | Remove the screen from the protection list.
 | Disable Protection | Enable the protection of all the screens in the protection list.
 | Enable Protection | Disable the protection of all the screens in the protection list.
 | Screen Properties | Open the screen property dialog box of the selected screen.


1.2.5.1 Object Pop-up Menu

Object Pop-up Menu

For all objects

Icon | Menu Item | Shortcut | Description
 | Cut | Ctrl+X | Cut the selection and put it on the Clipboard.
 | Copy | Ctrl+C | Copy the selection and put it on the Clipboard.
 | Paste | Ctrl+V | Place the Clipboard contents on the current screen.
 | Delete | Del | Delete the selection.
 | Pin |  | Pin the selection so it cannot be moved.
 | Unpin |  | Unpin the selection so it can be moved again.
 | Duplicate... |  | Duplicate the selected object.
 | Bring to Top |  | Bring the selection to the top.
 | Bring Forward |  | Bring the selected object one layer up.
 | Send Backward |  | Send the selected object one layer down.
 | Send to Bottom |  | Send the selection to the bottom.
 | Object Properties… |  | Open the property sheet of the selected object.
 | Save as Default |  | Save the selected object as the default object for that type of object. Default objects are saved in the Objects category of the object library.
 | Save to Object Library… |  | Save the selected object to the object library.
 | Save as Global Object… |  | Save the selected object as the global object in the Global category of the object library. Global Objects can be used for the Global Object Containers.
 | Save Current Screen as Picture… |  | Save the current screen to a picture file.
 | Screen Properties |  | Open the screen property dialog box for the current screen.

For polylines and polygons

Menu Item | Description
Insert Point | Add a point at the specified position.
Delete Point | Delete a selected point.

For pipelines

Menu Item | Description
Insert Connector | Add a connector at the specified position. If the specified position is on the vertical pipe segment, you can add left, right or cross connector. If the specified position is on the horizontal pipe segment, you can add up, down or cross connector.
Delete Pipe Segment | Delete a selected connector and its pipe segments.


1.2.5.2 Screen Pop-up Menu

Screen Pop-up Menu

Icon | Menu Item | Description
 | Close Screen | Close the current screen.
 | Cut Screen | Cut the current screen and put it on the Clipboard.
 | Copy Screen | Copy the current screen and put it on the Clipboard.
 | Paste Screen | Insert the screen on the Clipboard to the current panel application.
 | Delete Screen | Delete the current screen.
 | Save Current Screen as Picture... | Save the current screen to a picture file.
 | Screen Properties | Open the screen property dialog box for the current screen.


2.1 Project Information and Protection

Project Information and Protection

You can get project information and set up passwords to protect your project, password table, and global macros by using the Project information & Protection
dialog box. To open the dialog box, you can do one of the following:
1) In the Project Manager tool window, double-click the Project node ( [image]).
2) In the menu bar, click Project to bring up the Project sub-menu. Then, click Information & Protection….
The following is an example of the Project Information and Protection dialog box.

The following table describes how to read or use each of the items in the dialog box.

Item

Description
Project Name | The name of the project. It is also the file name of the project.
Author | The author of the project.
Created Time/date | The time and date when the project was created.
Last Saved Time/date | The last time and date when the project was saved.
Version | The version number of the Software that was used to save the project last time.
Developer Password Click it to bring up the Edit Developer Password dialog box and specify the developer password.
The developer password must be an unsigned integer and can have up to 9 digits. The default developer password is 000000000 (nine 0s) for new projects and new panels. When the runtime data of an application is downloaded to a panel, the panel compares its developer password with the developer password of the application. If the passwords match, the panel accepts the download operation immediately. If the passwords are different, the panel prompts for the entry of the developer password of the application. This ensures that one has the right to use the runtime data. After the entry of the application's developer password, the panel accepts the download operation and takes the developer password of the application as its own developer password.
Automatic File Recovery Click it to bring up the File Recovery Settings dialog box and specify the save interval for automatic file recovery (max 60 minutes) and days to keep the backup (Max 30 days).

The Automatic File Recovery is a feature that automatically creates backup data for unsaved project files. If the software crashes or the power is lost or your solution is closed unexpectedly, this backup data can be used to recreate the unsaved files, mini-missing the loss of work. On reopening the Software, an option is given to recover the file or discard the backup data for the file.

Backup File Location: You should not normally need to view backup files directly. If you do need to see them, they can be found in the Documents and Settings\Administrator folder. Open this folder and the subfolder named the same as the version of the Software you are using. This contains a "Backup" directory that holds the backup data, organized by project name.
Note: Do not use the feature as a substitute for regularly saving your work by clicking Save [image] on the Standard toolbar.
Protection Settings | Item | The items that can be protected which include Project File, Password Tables, Macros, Screens and HMI Runtime.
Protection

 Check or uncheck this option to enable or disable the protection of the corresponding item. You need to enter the specified password to open the corresponding item when this option is checked.

 You can protect the macros of a project in either one of the following two ways:

1) Read Prohibited - The macros are not viewable.

2) Read Only - The macros are viewable but not editable.

Note: To disable the protection, you need to enter the original password in the following dialog box to proceed.
Use Developer Password Available when the Protection option is checked. Check this option if you want to use the developer password as the protection.

Note: To switch between using develop password and using assigned password, you need to enter the original password in the Enter Password dialog box to proceed.
Use Assigned Password Available when the Use Developer Password option is unchecked. Click it to bring up the Edit Password dialog box and specify the password.

Note: The assigned password can have up to 12 characters and it is case sensitive.
Tool | Reserved feature not implemented yet.
Note | You can type a note for the project.
OK | Click it to close the dialog box and accept all changes.
Cancel | Click it to close the dialog box and discard all changes.
Click it to open the help document for more details about the dialog and how to use it.
Click it to close the dialog box and discard all changes.


2.2 Global Settings

Global Settings

Global settings are the settings that can be used by all panel applications in the same project. They are accessible and modifiable throughout the project. Global settings help a designer to construct a project that is flexible and easy to update. Designers can make changes to the overall design of the panel application by revising the global settings directly.

You can modify the Global settings in the corresponding dialog box. To open the dialog box, double-click the related node under the Global node in the Project Manager tool window. Alternatively, click Project to access the Project sub-menu in the menu bar, and then click the related command in the Project sub-menu.

The global settings contain the following items.

■ Languages
Described in Section 2.2.1.

■ Font Templates
Described in Section 2.2.2.

■ Picture Database
Described in Section 2.2.3.

■ Sound Database
Described in Section 2.2.4.

■ Text Database
Described in Section 2.2.5.

■ Global Tags
Described in Section 2.3.

■ Global Macros
Described in Chapter 15.


2.2.1 Languages

Languages

This section describes how to set up the languages for the project using the Languages dialog box. Each panel application in the project can have up to 10 languages for the screen texts. The following is an example of the Languages dialog box.

The following table describes each property in the Languages dialog box.

Property | Description
Number of languages | Specifies how many languages the project will have.
Language | The index of the language.
Name | Specifies a name for a language. The name must be unique within the project.
Character Set | Specifies the character set for a language to determine how to translate the bytes in the text into characters on the screen.
Import... | Click it to import the languages settings from a LNG file.
Export... | Click it to export the languages settings to a LNG file.
OK | Click it to close the dialog box and accepts all changes.
Cancel | Click it to close the dialog box and discard all changes.
 | Click it to open the help document for more details about the dialog and how to use it.
 | Click it to close the dialog box and discard all changes.


2.2.2 Font Templates

Font Templates

The following is an example of the Font Templates dialog box.

The following table describes how to read or use each of the items in the dialog box.

Item |  |  | Description
Language |  |  | Specifies the language to apply the font settings to.
Use the templates of the first language for all other languages |  |  | Check this option if you want to use the templates of the first language for all other languages.
Template List |  |  | Lists the font templates of the selected language. You can select a font template here as the current template.
Current Template | Name |  | The name of the current template.
 |  |  | Click it to update the selected template using the new settings. You can also click it to change the windows font of multiple templates at one time. To select multiple templates, click the row in the template list and use Ctrl + Click to add a row to the selection.
 | Windows Font |  | Specifies the Windows font for the current template.
 | Font Style |  | Specifies the font style for the current template.
 | Size |  | Specifies the size for the current template.
 | Effects | Underline | Specifies if the Underline feature is selected for the current template.
 |  | Strikeout | Specifies if the Strikeout feature is selected for the current template.
 | Sample |  | Shows the font sample of the current template.
Import... |  |  | Click it to import the font templates from an FTF file.
Export... |  |  | Click it to export the font templates to an FTF file.
OK |  |  | Click it to close the dialog box and accepts all changes.
Cancel |  |  | Click it to close the dialog box and discard all changes.
 |  |  | Click it to open the help document for more details about the dialog and how to use it.
 |  |  | Click it to close the dialog box and discard all changes.


2.2.3 Picture Database

Picture Database

The picture database contains all the pictures used by the project. The picture database is empty when the project is initially created.


2.2.3.1 Importing and Exporting Pictures

Importing and Exporting Pictures

■ Importing Pictures
You need to import a picture before you can use it for the project. There are 5 ways to import pictures:
1) Use the Picture Database dialog box to import one picture at a time from a picture file. The types of importable picture files include: BMP, JPG(JPEG), GIF, WMF, SVG(Scalable Vector Graphics) and PNG.
2) Use the Picture Database dialog box to import many pictures at a time from a picture database (PDB) file.
3) Use the Picture Database dialog box to import one or many pictures at a time by dragging the pictures files from Windows Explorer to the Picture Database list.
4) Click the icon [image] to select and import a picture file when you specify a picture in a dialog box or a property sheet.
5) Click the icon [image] to select and import a picture in a picture database file when you specify a picture in a dialog box or a property sheet.

■ Exporting Pictures
You can export the pictures of the project so other projects can use those pictures by importing them. There are 2 ways to export pictures:
1) Use the Picture Database dialog box to export one picture at a time to a picture file.
2) Use the Picture Database dialog box to export many pictures at a time to a picture database (PDB) file.


2.2.3.2 Picture Groups

Picture Groups

The picture database can contain picture groups.

A picture group is a collection of pictures. Each picture in a picture group represents one state. When a picture group is displayed as the picture shape of an object, the picture that corresponds to the current object state is shown. This is the main benefit of using a picture group as the object shape because it can show each object state with a different picture.

When a picture group is used as the shape for buttons or switches, you may want it to look differently when it is pressed. In order to support the pressed look, a picture group needs two pictures for each state: one picture for the normal (released) look, and another picture is for the pressed look.
For example, a 3-state multi-state switch needs a picture group that contains 6 pictures as its picture shape if the pressed look is required.

The following is an example of a picture group supporting 3 states and the pressed look.

Picture Group | State | Pictures
 | 0 (Normal/Released) |
 | 0 (Pressed) |
 | 1 (Normal/Released) |
 | 1 (Pressed) |
 | 2 (Normal/Released) |
 | 2 (Pressed) |


2.2.3.3 Picture Database Dialog Box

Picture Database Dialog Box

The following is an example of the Picture Database dialog box.

The following table describes how to read or use each of the items in the dialog box.

Item | Description
Pictures | Lists the pictures and picture groups of the project. You can select a picture or a picture group as the current selection. You can also make multiple selections. View Shows the current selection. If the selection is a picture group, the first picture of the group will be shown.
Add Group | Adds one picture group to the picture database.
Add Item | Imports a picture from a picture file and adds the picture to the current picture group.
Add From... | Imports pictures from a picture database (PDB) file and adds those pictures to the current picture group.
Move Up | Moves the selection down in the list.
Move Down | Moves the selection up in the list.
Delete | Delete the selection.
View | Shows the selected picture and its properties such as file type, width x height in pixels and bit depth.
Color Conversion | Select Dithering or Nearest Color as the color conversion method. If the color resolution of a picture is not compatible with the target panel, the application compiler will use the specified method to convert the picture data so it can be displayed without too much color distortion at runtime.
Support Pressed Look | Available when the selection is a picture group. Check this item so the current picture group supports the pressed look. When a picture group supports the pressed look, it needs two pictures for each state; one picture is for the normal (released) look and another picture is for the pressed look.
Transparent | Check this item to enable the transparent feature of the selection; if the selection is a picture, the picture will be transparent for the specified transparent color; if the selection is a picture group, all the pictures of the picture group will be transparent for the specified transparent color. Note that this feature is effective only when a picture or a picture group is shown as the picture shape for an object. It is a common practice to make a picture transparent for a certain color so the picture can be shown as a non-rectangle shape. The following are some examples:
 | Original Picture | Transparent Color | Picture Shown
Transparent Color | Available when the Transparent item is checked. Select a color for the transparent color.
Rename | Click this button to rename the current picture or the current picture group.
Rotate/Flip | Rotates or flips the current picture and saves it as another picture in the picture database. You can select one of the following 7 methods in the above dialog box for the Rotate/Flip operation.
 | Method | Description
 | Rotate 90° | Rotates the picture clockwise by 90 degrees.
 | Rotate 180° | Rotates the picture clockwise by 180 degrees.
 | Rotate 270° | Rotates the picture clockwise by 270 degrees.
 | Flip X | Flips the picture over the X axis.
 | Rotate 90° & Flip X | Rotates the picture clockwise by 90 degrees and flips it over the X Axis.
 | Flip Y | Flips the picture over the Y axis.
 | Rotate 90° & Flip Y | Rotates the picture clockwise by 90 degrees and flips it over the Y Axis.
OK | Closes the dialog box and accepts all changes to the picture database.
Cancel | Closes the dialog box and discards all changes to the picture database.
Import (with Preview...) | Previews every picture you select to import before importing a picture file.
Import... | Imports a picture from a picture file. The types of importable picture files include: BMP, JPG, GIF, WMF, SVG and PNG.
Import From... | Imports pictures from a picture database (PDB) file.
Export... | Exports the current picture to a picture file.
Export To... | Exports the current selection to a picture database (PDB) file.
 | Click it to open the help document for more details about the dialog and how to use it.
 | Click it to close the dialog box and discard all changes.


2.2.4 Sound Database

Sound Database

The sound database contains all the sounds used by the project. The sound database is empty when the project is initially created.

You can use a function button to play or stop playing a sound. For details, please see Section 5.4.1 Basic Operations of function buttons

You can use the Execute General Command ($C2.f) command flag setting in the Command Block to play a sound. For details, please see Section 3.6.7 Using General Commands.


2.2.4.1 Importing and Exporting Sounds

Importing and Exporting Sounds

■ Importing Sounds
You need to import a sound before you can use it for the project. There are two ways to import sounds:

  1. Use the Sound Database dialog box to import one sound at a time from a sound file. The types of importable sound files include: WAV.
  2. Use the Sound Database dialog box to import many sounds at a time from a sound database (SDB) file.

■ Exporting Sounds
You can export the sounds of the project so other projects can import those sounds. There are 2 ways to export sounds:

  1. Use the Sound Database dialog box to export one sound at a time to a sound file.
  2. Use the Sound Database dialog box to export many sounds at a time to a sound database (SDB) file.


2.2.4.2 Sound Database Dialog Box

Sound Database Dialog Box

The following is an example of the Sound Database dialog box.

The following table describes how to read or use each of the items in the dialog box.

Item | Description
 | Click it to open the help document for more details about the dialog and how to use it.
 | Click it to close the dialog box and discard all changes.
Sounds | Lists the sounds of the project. You can select a sound as the current selection. You can also make multiple selections.
Sound Information | Displays the sound information of the current selection such as sound format and length. You can click [image] to start playing the sound, click [image] to pause, and click [image] to stop playing the sound.
OK | Closes the dialog box and accepts all changes to the sound database.
Cancel | Closes the dialog box and discards all changes to the sound database.
Import... | Imports a sound from a sound file. The types of importable sound files include: WAV, MP3, MIDI.
Import From... | Imports sounds from a sound database (SDB) file.
Export... | Exports the current sound to a sound file.
Export To... | Exports the current selection to a sound database (SDB) file.
Rename | Click this button to rename the current sound.
Delete | Delete the selection.
Move Up | Moves the selection down in the list.
Move Down | Moves the selection up in the list.


2.2.5 Text Database

Text Database

The Text Database is a dockable window. With the Text Database, you can manage the texts of the multiple languages in your project easily. To open the Text Database, check the Text Database menu item in the Project menu, or double click the Text Database node under the Global node in the Project Manager tool window.

The following is an example of the Text Database that lists the texts in all the languages of the project.

You can click the following icons to bring up the corresponding dialog box to import or export texts.

Icon | Tips | Description
 | Import Text Table | Imports texts from a text file(.csv file) to the selected table.
 | Export Text Table | Exports texts from the selected table to a text file (.csv file).
 | Import Panel Application Text | Imports texts from the selected table to a panel application in the same project.
 | Export Panel Application Text | Exports texts from a panel application of the project to the selected table.

You can right-click the Text Database to get the pop-up menu with the following menu items:

Menu Item | Shortcut | Description
Cut | Ctrl+X | Cut the selected text and put it on the Clipboard.
Copy | Ctrl+C | Copy the selected text and put it on the Clipboard.
Paste | Ctrl+V | Insert the text on the Clipboard to the current table.
Delete | Del | Delete the selected text.
<Language name> |  | Check the language name to display the text of objects in the selected language.


2.3 Working with Tags

Working with Tags

You can define a tag or an array tag or a structure tag to represent an address or a memory block for the application. By changing tags, you can use any PLC or controller without re-developing the application. This chapter explains how you can define and manage tags with the tags editor.

After the tag is created in tags editor, you can use it in your application using the Select Tag Dialog Box. Please see Section 4.4.3.3 Selecting Tags for details. Or you can specify the tag by yourself.

Note that the maximum text amount of the tag/tag group name is 48 characters. You are allowed to define not only tags for the link, but also the tags for a tag group or sub tag group of the link.


2.3.1 Types of Tags

Types of Tags

■ Global Tag
A global tag is a tag that can be used by all panel applications in the same project. With global tags, the panel applications in the same project can share the common address declaration without having to keep and maintain the same set of tags locally.

Note that a global tag can only be associated with internal variables.

■ Local Tag
A local tag is a tag that can only be used by the panel application in which the tag is located.

■ Single Tag

A single tag represents a single input or output variable monitored or controlled by the system. The format of a tag is Link Number\Tag Group Name\Sub Tag Group Name\Tag Name.

For example:

Shortcut | Description
1\MONITOR\CORE DISPLAY | Indicates a local tag named CORE DISPLAY in MONITOR tag group of link 1.
0\BOT\DECLARE | Indicates a local tag named DECLARE in BOT tag group of internal memory.
0\_ALARM SHOW | Indicates a global tag named _ALARM SHOW of internal memory.

■ Array Tag

An array tag represents a contiguous memory block that contains one or more variables of the same data type and size. Each variable in the array is accessed as a zero-based offset from the start of the array. The format of one dimensional array tag is Link Number\Tag Group Name\Sub Tag Group Name\Tag Name[Index]. The format of two dimensional array tag is Link Number\Tag Group Name\Sub Tag Group Name\Tag Name[Row, Column]. The format of three dimensional array tag is Link Number\Tag Group Name\Sub Tag Group Name\Tag Name[Index, Row, Column].

For example:

Shortcut | Description
TANK[5] | Indicates No. 6 variable of a local one dimensional array tag named TANK of internal memory.
1\FLAG[1,2]
Indicates No. 9 variable of a local two dimensional array tag named FLAG with 16-Bit Unsigned Integer[3,6] of link 1.
Note: The variable number in an array = [(Current Row*Total Columns) + Current Column + 1] = 1 * 6 + 2 + 1 = 9
_Temp[1,0,2] Indicates No. 23 variable of a global three dimensional array tag named _Temp with 16-Bit Unsigned Integer[3,5,4] of internal memory.
Note: The variable number in an array = [(Current Index*Total Rows*Total Columns) + (Current Row*Total Columns) + Current Column + 1] = 1 * 5 * 4 + 0 * 4 + 2 + 1 = 23

■ Structure Tag

A structure tag provides a way to hold multiple variables in a block that can be referred to using one tag. Each variable can be of any valid data type supported by the software.

The format of a structure tag is Link Number\Tag Group Name\Sub Tag Group Name\Tag Name.Element Name.

For example:

Shortcut | Description
0\Valve_1.Position | Indicates the element named Position of a local structure tag named Valve_1 of internal memory.


2.3.2 Opening and Closing Tags Editor

Opening and Closing Tags Editor

■ Opening Tags Editor
To open the global tags editor, use the Global Tags… command in the Project menu, or double click Global > Global Tags in the Project Manager tool window, or right-click Global > Global Tags in the Project Manager tool window to bring out the pop-up menu, and then use the Open command on the pop-up menu.

To open the local tags editor, use the Tags… command on the Panel menu, or double click Panel Application > Tags in the Project Manager tool window, or right-click the Panel Application > Tags in the Project Manager tool window to bring out the pop-up menu, and then use the Open command on the pop-up menu.

■ Closing Tags Editor
To close the tags editor, select the window and click the close button, or choose Windows... on the Window menu, select the window to close in the window dialog, and then click the Close Window(s) button. You can also right-click Global > Global Tags (Panel Application > Tags) in the Project Manager tool window to bring out the pop-up menu, and then use the Close command on the pop-up menu to close the tags editor.


2.3.3 Creating Tags with Tags Editor

Creating Tags with Tags Editor

You can use tags editor to create and manage tags. Tags editor is split into two panes: Tag Group Explorer on the left and Tag List Window on the right. Each pane scrolls separately, and both horizontally and vertically. You can position the mouse over the vertical splitter bar to drag the bar and resize the panes.

The following is an example of the tags editor.


2.3.3.1 Tag Group Explorer

Tag Group Explorer

Tag explorer displays links, recipes, data loggers and their tag groups, if any. From tags explorer, you can:

■ Open a tag group of a link for editing by clicking the node

■ Double-click the node to expand or collapse the list of its sub-groups.

■ Right click the node to get a pop-up menu with the following menu items:

Icon | Menu Item | Description
 | Add Subgroup | Create a new group and add it at the end of the list.
 | Insert Group Above | Insert a new group above the selected group.
 | Insert Group Below | Insert a new group below the selected group.
 | Delete Group | Delete the selected group.
 | Rename Group | Rename the selected group.
 | Preview/Import Tags... | Import tags from a CSV file [Tab delimited].
 | Export Group... | Export all the tags in the selected group.
 | Export Group with Its Subgroups... | Export all the tags in the selected group and its sub groups.
 | Import Data Type | Import data types from a CSV file. Available only when the selected node is an internal memory or a link.
 | Export Data Type | Export the data types of the selected link. Available only when the selected node is an internal memory or a link.
 | Load tags From OPC Server | Load tags from the OPC Server.

■ Import and export tags or data types of a link
  Described in Section 2.3.4.

■ Add new groups or sub groups to a link and delete or rename the existing tag groups
  Described in Section 2.3.5.

■ View tags (Data Items) of recipes and data loggers.

If there are any recipes or data loggers in the application, the tags editor will display their data items as the tags. All the data items (tags) for the recipes or data loggers are read only in the tags editor. If you want to edit the data items (tags), please use the corresponding dialog box.
You can edit the data items of the selected recipe block with the Recipe Block dialog box. Please see Section 11.5 Setting up Recipe Blocks for details.


2.3.3.2 Tag List Window

Tag List Window

Tag list window displays all the tags related to the selected tag group. In the tag list window, you can:

■ Switch between tag list of the selected tag group and the supported data type by clicking the window tab
■ Click any column header to sort the list
■ Add a tag by defining the tag name and then click other cells to edit the elements of the tag

The following table describes each attribute of the tag.

Item |  | Description
Name |  | Specifies the name for the tag. The name must be unique in the tag group. The maximum text amount of the name is 48 characters. Chinese characters are supported. The name cannot start with a number, and cannot be the same as a macro keyword. The name of global tags must start with underscore ( _ ). The name of the local tags cannot start with underscore ( _ ).
Alias For | <Edit Box> | Shows the tag name which will have the tag as its new alias. For example: CORE_DISPLAY is an alias for SYS_CHANG\STEP_1, that means when the tag CORE_DISPLAY is used, it will be replaced with SYS_CHANG\STEP_1. In the software, a tag can have multiple names with same data type and settings which is called a tag and its aliases. The settings of an alias can't be changed except the name.
 |  | Click this icon to bring up the Select Tag dialog box and specify the desired tag for the <Edit Box> field. About how to select a tag, please see Section 4.4.3.3 Selecting Tags for details.
Data Type | <Edit Box> | Shows the data type for the tag.
 |  | Click this icon to bring up the Select Data Type dialog box and specify the desired data type for the <Edit Box> field. The following is an example of Select Data Type dialog box.
Address | <Edit Box> | Specifies the bit address when the Data Type is Bit, otherwise specifies the word address.
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the <Edit Box> field. About how to input address, please see Section 4.4.3.2 Address Input Keypad for details.
Scan Rate |  | Selects the scan rate for the tag from the dropdown list. The supported scan rates for each tag are Fast and Normal.
Description |  | Type a comment for the tag.

■ Cut, copy, paste and delete selected tags using menu commands or key combinations.
You can right-click the number column to display a pop-up menu of editing commands. The editing commands available vary depending on what is selected.

The following table shows the supported editing commands.

Icon | Menu Command | Key Combination | Description
 | Insert |  | Insert a new tag before the selection.
 | Delete | DELETE | Deletes tags without copying it to the Clipboard.
 | Cut | CTRL+X | Removes selected tags from the active window and saves them to the Clipboard.
 | Copy | CTRL+C | Duplicates selected tags in the active window.
 | Paste | CTRL+V | Pastes cut or copied tags into an active window.

Note that all editing commands require a selection in order to work. To select a tag, click the row on its header number column. To select multiple tags, click the row on its heard column and use Ctrl+Click to add a row to the selection.


2.3.3.3 Tag List Window

Data Type Window

Data Type window displays all the supported data types related to the selected link.

The following table describes each attribute of the data type.

Item | Description
Name | Shows the name for the data type.
Data Type | Shows the basic data type for the name.
Description | Shows the comment for the data type.

Note: If the data type is a structure, you may click [image] to expand or click [image] to collapse the list of its members.

In the data type window, you can:

■ Switch between tag list of the selected tag group and the supported data type by clicking the window tab

■ Cut, copy, paste and delete selected data type using menu commands or key combinations.
You can right-click the number column to display a pop-up menu of editing commands. The editing commands available vary depending on what is selected.

The following table shows the supported editing commands.

Menu Command | Key Combination | Description
Add |  | Inserts a new structure at the end of the list by using Structure Definition dialog box.
Edit |  | Edits the selected type by using Structure Definition dialog box.
Delete | DELETE | Deletes data types without copying it to the Clipboard. You cannot delete the data type if it is used in the application.
Cut | CTRL+X | Removes selected data types from the active window and saves them to the Clipboard. You cannot cut the data type if it is used in the application.
Copy | CTRL+C | Duplicates selected data types in the active window.
Paste | CTRL+V | Pastes cut or copied data types before the selection into an active window.

Note that all editing commands require a selection in order to work. To select a data type, click the row on its header number column. To select multiple tags, click the row on its heard column and use Ctrl+Click to add a row to the selection. The editing commands except Add are available only when the selected data type is not basic data type or built-in reserved data type.

■ Add or edit a structure data type by using Structure Definition dialog box. The following is an example of the Structure Definition dialog box.

The following table describes each property in the dialog box.

Property | Description
Structure Name | Specifies the name for the structure. The name must be unique. The name cannot start with a number and cannot be the same as the basic data type or the built-in reserved data type name. The name cannot contain any of the following characters "/\|(){}[].,'<=+>!?" and space.
Addressing | Specifies the addressing type used to allocate the structure. There are two types:
 | Type | Description
 | Continuous | Select Continuous to create a structure with continuous word or double word addresses.
 | Random | Select Random to create a structure with random addresses.
Alignment | Select Word to make each member word aligned or select Double Word to make each member double word aligned. Only available for the continuous addressing.
Structure Size | The total size of the structure in word.
Structure Members | Specifies the structure's members in the following list.
 | Item | Description
 | No. | The number of the structure member.
 | Name | Specifies the name for the member.
 | Data Type | Click the icon to bring up the Select Data Type dialog box and select the desired data type for the member
 | Offset | Available when the continuous addressing is checked. Shows the address offset offset in the structure.
 | Size | The size in word of the member.
 | Description | Type a comment for the structure member.
Insert | Insert a member before the selection. This button is available when the selection is made.
Delete/Cut/Copy | Delete/Cut/Copy all the selections. This button is available when the selection is made.
Paste | Paste cut or copied member before the selection. This button is available when the selection is made.
Move Up | Move the selection one item down in the list. This button is available when the selection is made.
Move Down | Move the selection one item up in the list. This button is available when the selection is made.
OK | Click it to close the dialog box and accept all changes.
Cancel | Click it to close the dialog box and discard all changes.


2.3.4 Importing and Exporting Tags

Importing and Exporting Tags/Data Types

■ Importing Tags

  1. Right-click the Internal Memory, a link, or any tag groups item in the Tag Group Explorer to bring out the pop-up menu. Then use the Preview/Import Tags… command on the pop-up menu.
  2. Click the *.csv file you want to import. If you want to open a tags import file that is saved in a different folder, locate and open the folder first.
  3. Click Open.
  4. All the tags from file will list in a tree window to preview. The following is an example.
  5. Drag the selected tag group and its tags in the import preview window and drop them into the Tag Group Explorer
  6. In the Tag Group Explorer, you can choose the following four methods to add the selection:
    Menu Item | Description
    Add Subgroup | Create a new group and add it at the end of the list.
    Insert Group Above | Insert a new group above the selected group.
    Insert Group Below | Insert a new group below the selected group.
    Merge Group | Merge the new group into the selected group.

Note: If the file format is not correct, the import operation will be cancelled.

Note: The tags import file can contain tags only, or many tag groups and their tags.

Note: If the name of a tag already exists in the tag group, you will be asked to confirm whether to replace the existing tag or not.
* If Yes, the tag in the tag group will be replaced by the tag from the file.
* If No, only the tag with nonexistent names will be imported.
* If Cancel, the import operation will be cancelled.

Note: If the tag group name already exists, you will be asked to confirm whether to replace the existing tag group or not.
* If Yes, the tags in the existing tag group will be removed and replaced by the tags from the file.
* If No, only the tag group with nonexistent name and its tags will be imported.
* If Cancel, the import operation will be cancelled.

■ Exporting Tags
If you have tags you want to reuse in another application panel, export the tags of the selected tag group as a .csv file. You may do the following:
1) Locate the tag group you would like to export.
2) Right-click on the tag group to display the pop-up menu; and then click Export Group...,
3) If you want to save tags in a different folder, locate and open the folder first, then click Save.

You can export all the tags of the internal memory as a .csv file by right-clicking on the internal memory and then using the Export Group with Its Subgroups... command on the pop-up menu.

■ Importing Data Type

  1. Right-click the Internal Memory or a link in the Tag Group Explorer to bring out the pop-up menu. Then use the Import Data Types… command on the pop-up menu. The Import Data Type dialog box will popup. The following is an example.
  2. Click the Import From File button and select *.csv file you want to import.
  3. Click Convert button to get the valid data type definition. If the data type name exists, an error message will popup to ask whether you want to overwrite the existing one with the imported one.
  4. Click OK to import the data type or click Cancel to discard the operations.

■ Exporting Data Type

If you have data type you want to reuse in another application panel, export the data types of the selected link as a .csv file. You may do the following:
1) Right-click on the link to display the pop-up menu; and then click Export Data Type...,
2) If you want to save data type in a different folder, locate and open the folder first, then click Save.


2.3.5 Adding/Deleting/Renaming Tag Groups

Adding/Deleting/Renaming Tag Groups

■ Adding a Tag Group

  1. Click the internal memory you want to add a tag group for.
  2. Right-click the selected item to display the pop-up menu, and then click Add Group.
  3. The new tag group will be added, and the default tag group name will become selected for renaming.

■ Deleting a Tag Group:

  1. Locate the tag group you would like to delete.
  2. Right-click on the tag group to display the pop-up menu, and then click Delete Group.

Note: You can only select one tag group to delete at one time.

■ Renaming a Tag Group:

  1. Locate the tag group you would like to rename.
  2. Right-click on the tag group to display the pop-up menu, and then click Rename Group or click the tag group.
  3. The tag group name will become selected. Simply type the new name over the selected text, and then press the ENTER key or click anywhere outside the editing field.


3.1 Setting up the Panel Application

Setting up the Panel Application

You can set up the panel application with the General Setup dialog box. There are five ways to open the dialog box:

  1. In the Project Manager window, double-click the panel application node ( [image]).
  2. In the Project Manager window, right-click the panel application node ( [image]) to bring up the pop-up menu and select General Setup.
  3. In the Project Manager window, double-click the General Setup node ( [image]) under Setup node of the panel application
  4. In the Project Manager window, right-click the General Setup node ( [image]) under Setup node of the panel application to bring out the pop-up menu and select Properties.
  5. In the menu bar, click Panel | General Setup….

The General Setup dialog box contains the following pages. Some of the pages appear only when they are needed.

■ General
Described in Section 3.1.1.

■ Custom
Described in Section 3.1.2.

■ Keys
Described in Section 3.2.1.

■ Startup Macro / Main Macro / Event Macro / Time Macro
Described in Section 15.2.6.


3.1.1 General Settings

General Setup - General Settings

This section describes how to define the general settings for a panel application. The following is an example of the General page of the General Setup dialog box.

The following table describes each item in the General page.

Item |  | Description
Application Name |  | The name of the panel application.
Model |  | The model of the target panel. Click [image] to bring up the Panel Model dialog box which helps you to select a model by specifying the size, resolution and orientation of the display. The following is a sample of Panel Model dialog box. The supported display resolutions for the HMI Runtime are 800x600; 1024x600; 1024x758; 1280x720; 1280x800; 1280x1024; 1366x768; 1440x900; 1600x900; 1600x1200; 1680x1050; 1920x1080; 1920x1200; 2560x1440; 2560x1600.
Splash Screen | <Check Box> | Check this option if you want a picture that appears while the application is loading. It can be an additional form of advertising.
 | Picture | The name of the current picture. You can use the drop-down list to select a picture from the picture database. Click [image] to select a picture from a file as the current picture. After the selection, the software imports the picture of the selected file and saves the picture in the picture database. Click [image] to bring up the Select/Import from Library dialog box. Select a picture from a picture library file as the current picture. After the selection, the software imports the selected picture from the selected library and saves the picture in the picture database.
 | Time Duration | Specify how long you want to display the picture.
 | Fit To Screen | Check this item so the picture can change its size automatically to fit the screen.
Start Up | Screen | Specifies the first screen of the application that the target panel will display after powering up.
 | Delay Time | Specifies the time that the target panel will delay to run the application.
 | Display Countdown | Check this option if you want the target panel to display countdown while it is waiting for the expiry of the Delay Time.
 | Language | Specifies the language the application will display the text in after power up.
 | Login Required | Check this option if you want the target panel to get a valid password from the operator before it displays the first screen.
 | Default User Level | Available when Login Required is not selected. Specifies the initial user level for the application.
Idle Processing | Display Idle Screen | Check this option to display the Idle Screen when the target panel has idled for the specified amount of time.
 | Idle Screen | Specifies the screen that will be displayed as the idle screen.
 | Change User Level | Check this option to change the current user level when the idle screen is displayed.
 | Idle User Level | Available when the Change User Level is selected. Specifies the user once the idle screen is displayed.
 | Idle Time | The length of time used to determine when the idle screen is displayed.
 | Screen Saver Time | Specifies the screen saver time. The target panel will turn off its backlight when it has not been operated by the operator for the specified amount of time.
Note |  | You can type a note for the panel application.
Macro | Startup Macro | Check this item if you want the application to have the Startup macro. The Startup macro is only run once when the application starts. The target panel will not display the start-up screen until the macro terminates. You can use Startup macro to initialize global data and settings for your application.
 | Main Macro | Check this item if you want the application to have the Main macro. The Main macro runs concurrently with the application. The target panel runs the Main macro cyclically, i.e. it will delay preset time to run Main macro starting from the first command each time after processing the last command of the macro, or when it encounters an END command in the middle of the macro.
 | Event Macro #1~#4 | An Event macro is run whenever the associated trigger bit changes from 0 (Off) to 1 (On). An application can have up to four Event macros. If the application needs an Event macro for a certain event, check one of the items that are available and specify the associated trigger bit for the corresponding Event macro. You can also select the trigger bit offered by the system, such as: MemStkInserted, MemStkRemoved, BatteryLow and BarCodeInputViaUsb.
 | Time Macro #1~#4 | A Time macro is run periodically with a preset time interval. An application can have up to four Time macros. Each Time macro has a different set of time intervals that can be chosen to specify how often it runs. The following table describes the available time intervals for each Time macro.
 |  | Time Macro | Available Time Intervals |  | Remark
 |  | #1 | 0.5 and 1 second |  |
 |  | #2 | 0.5, 1, 2, 3, ... and 59 seconds |  |
 |  | #3 | 1/120, 1/60, 1, 2, 3, ... and 59 minutes |  | The macro is run at 0 second.
 |  | #4 | 1/7200, 1/3600, 1, 2, 3, ... and 24 hours |  | The macro is run on the clock.
 |  | If the application needs a Time macro, check the item of an appropriate Time macro and specify the time interval for that Time macro.
Print
 | Printer | Specifies the type of printer that the application will use. An 800x480 screen can be printed in less than 15 seconds.
 |  | Supported Printer |  | Tested Printer Model | Remark
 |  | BIXOLON SRP-350 (USB) |  |  | Thermal receipt printer
 |  | EPSON C79 (USB) |  |  |
 |  | EPSON C86 (USB) |  |  |
 |  | EPSON LQ-1600K (USB) |  | DPK300 Fuji printer |
 |  | EPSON LQ-300 (USB) |  |  |
 |  | HP LaserJet (Ethernet / USB) |  | HP 1606dn, Brother HL-2030, Brother HL-2070N, and Brother MFC-7840W. | Supports most of the HP and Brother printers that support PCL and PCL 5e
 |  | Siupo SP Series (COM / PRT) |  |  |
 |  | SPRT A Series (COM / PRT) |  |  |
 | Port | Specifies the port of the target panel that will connect to the printer.
 |  | If the printer is a mono printer, you can click it to bring up the “Settings for Printing” dialog box which helps you to select the colors to be printed in black. The following is a sample of Settings for Printing dialog box.
Hardware | Battery Backed RAM | Specifies the size of the battery backed RAM installed in the target panel. Note that the battery backed RAM is shared by the alarm logger, the operation logger, the data loggers, the recipe blocks, the system memory, and the nonvolatile user memory.
 | Flash ROM | Specifies the size of the flash ROM installed in the target panel.
 | Use External Keypad | Select this option if you want to use a customized keypad or a PC's USB Keyboard as the external keypad for your HMI unit. Available only when the HMI unit supports the external keypad connection. When the external keypad is used, the touch operation is still supported. You can operate the HMI unit with the touch screen and the external keypad at the same time. If the PC USB Keyboard is selected, you can use Up, Down, Left, Right, and Tab keys to move the cursor to the desired object. To activate a button, move the cursor to the button and press Enter key. To enter numbers and characters, move the cursor to the associated object and use the keyboard to enter the data directly. The Up key and Down key of the external keypad could move the cursor not only up and down but also left and right. When the Up key cannot move the cursor up further, it will try to move the cursor to the left. Also when the Down key cannot move the cursor down further, it will try to move the cursor to the right.
Miscellaneous | Buzzer Sounding Time | Specifies the length of the beep sounded by the buzzer when a touch operation is activated.
 | Overlapped buttons can be activated in sequence by one touch | Check this option if you want the application to have the overlapped buttons can be activated in sequence by one touch feature. This allows the operator to issue multiple data settings or commands with one touch. There are some constraints with using this feature. See Section 3.1.3 for details.
 | Display Orientation Switchable | Check this option to switch the screen orientation at runtime. The run time orientation of a screen can be predefined in landscape or portrait. At run time, the display orientation of the window screens and the menu screens is determined by the orientation of the current normal screen. Note that not all the HMI units support this feature. Select the model in the properties page to see whether the feature is available or not.
 | Support Text Anti-aliasing | Check this option to make X series HMI units support text anti-aliasing.
 |  | Text without anti-aliasing |  | Text with anti-aliasing
 | Check if the panel was stopped safely for the last shutdown | Check this option to configure the HMI unit to check if the operator performed the safe stop successfully for the last power-off with a function button for "Stop Operation Safely ". Please see 3.1.5 Avoiding Data Corruption Due To Random Power-off for details. Note that the check occurs when the HMI starts running the application every time.


3.1.2 Custom Settings

General Setup - Custom Settings

This section describes how to define the customization settings for a panel application. The following is an example of the Custom page of the General Setup dialog box.

The following table describes each item in the Custom page.

Item |  | Description
Decimal Number Keypad | Use custom keypad | Check this item if you want the application to use the custom keypad instead of the built-in keypad for the entry of decimal numbers.
 | Window Screen | Specify the window screen that is designated as the decimal number keypad.
Hexadecimal Number Keypad | Use custom keypad | Check this item if you want the application to use the custom keypad instead of the built-in keypad for the entry of hexadecimal numbers.
 | Window Screen | Specify the window screen that is designated as the hexadecimal number keypad.
Octal Number Keypad | Use custom keypad | Check this item if you want the application to use the custom keypad instead of the built-in keypad for the entry of octal numbers.
 | Window Screen | Specify the window screen that is designated as the octal number keypad.
Character Keypad | Use custom keypad | Check this item if you want the application to use the custom keypad instead of the built-in keypad for the entry of characters.
 | Window Screen | Specify the window screen that is designated as the character keypad.
Password Keypad | Use custom keypad | Check this item if you want the application to use the custom keypad instead of the built-in keypad for the entry of passwords.
 | Window Screen | Specify the window screen that is designated as the password keypad.
Video Input | Signal Type | Select signal format of NTSC or PAL for a connected analog color camera. This field is only available for X series HMI unit.
 | Record | Check this item if you want to record a video.
 | Compression | Select Low ratio (High resolution), Medium ratio (Medium resolution) or High ratio (Low resolution) as the compression ratio when recording.
 | Length | Select the last 6, 9, 12 or 15 minutes of the video view you want to keep in panel's NAND flash.
Touch Operation Disabled Sign | Use custom sign | Check this item if you want the application to display the custom sign instead of the built-in sign when the touch operation of an object is disabled.
 | Pic. | Specify the picture that is to replace the built-in sign. Click [image] to select a picture from a file as the current picture. After the selection, the software imports the picture of the selected file and saves the picture in the picture database. Click [image] to bring up the Select/Import from Library dialog box. Select a picture from a picture library file as the current picture. After the selection, the software imports the selected picture from the selected library and saves the picture in the picture database.
 | Transparent | Select this item if you want parts of the custom sign to be transparent.
 | T. Color | Specify the transparent color.
CSV/Text Files | Date Format | The date format that the target panel will use to output date information to text files.
 | Time Format | The time format that the target panel will use to output time information to text files.
 | Separator | Select desired delimiter that can be TAB, semicolon(;), or comma(,) for CSV or Text files.
User Level Required in Panel Setup | Set Time/Date | The minimum user level that is required to set the time and date of the target panel through the target panel's Panel Setup menu.
Prohibit uploading and copying of the panel application stored in the HMI unit |  | Check this option if you want to prohibit uploading and copying of the panel application stored in the HMI unit.
Store extended application run-time data to |  | Select Built-in flash disk (C:) or Micro SD card (D:) or USB memory stick (E:) to save the extended application run-time data.
Default Folder |  | This field is available only for the HMI Runtimes or the HMI with the flash disk. For HMI Runtimes, there are 4 kinds of default folder that you can select for your application. They are Use the application file's folder, Create the designated folder, Create a new folder every day and Create a new folder every month. For HMI with the flash disk, you can create the designated folder or a new folder every day or every month as the default folder . Please see Section 3.1.4 for details.
Communication Error Mark |  | Specify what to display for the Numeric Objects (including Numeric Entry and Numeric Display) and Character Objects (including Character Entry and Character Display) when their monitored data are unavailable due to communication errors. You can select the following options as the error mark.
 |  | Mark | Description
 |  | (As is) | No communication error mark for the object. Leaves the display unchanged.
 |  | (Blank) | Clears the display of the object.
 |  | ? | Displays a string of character ‘?’.
 |  | # | Display a string of character ‘#’.
Window Screen Title Font | Language | Select a language so you can view and edit the language dependent settings in the Window Screen Title Font group for that language. The language dependent properties in the group include Font.
 | Font | The corresponding font of the Window Screen Title. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font of the corresponding language. You can change the font templates before selecting a font in that dialog box.
Chinese Characters Codes and Bitmap Fonts | Chinese (PRC) Code Type | Select code type for Simplified Chinese characters. There are two 2 types: Unicode (PRC; Class 1&2); Unicode (PRC; Class 1)
 | Chinese (Taiwan) Code Type | Select code type for Traditional Chinese characters. There are 5 types: Big5 (Class 1); Big5 (Class 1 & 2);Unicode (Taiwan; Class 1); Unicode (Taiwan; Class 1&2); Unicode (PRC & Taiwan; Class 1&2)
 | Corresponding TrueType Font Bitmap Font #1 ~ #3 | Select the corresponding TrueType font as a bitmap font for the Chinese characters displaying in the HMI units. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font of language 1 as the bitmap font for the Chinese display. You can change the font templates before selecting a font in that dialog box.


3.1.3 Activating Multiple Overlapped Buttons by One Touch

Activating Multiple Overlapped Buttons by One Touch

To enable the feature of activating multiple overlapped buttons by one touch, open the Panel General Setup dialog box and check the option of “Overlapped buttons can be activated in sequence by one touch” in the Miscellaneous group on the General page. With this feature, the overlapped underlying buttons will be activated sequentially from top to bottom when the top-most button is pressed. The following are the constraints of applying this feature.

  1. The types of buttons that support this feature include: Bit Button, Toggle Switch, Screen Button, Function Button, Word Button, Multi-state Switch, and Keypad Button.

  2. The first button, i.e. the top-most button, can only be a bit button, a toggle switch, a word button, a multi-state switch, or a keypad button. The button cannot have the optional property of Minimum Hold Time or Operator Confirmation. If the button is a bit button, a toggle switch, or a keypad button, it cannot have any macro. If the button is a word button, it cannot be configured for Enter Value or Enter Password. If the button is a multi-state switch, it cannot be configured as a List or Drop-down List.

  3. The underlying buttons that have the optional property of Minimum Hold Time or Operator Confirmation will not be activated.

  4. An underlying bit button that is configured for Momentary ON or Momentary OFF will not be activated. However, if that bit button is the second button and the first button is a keypad button, it can be activated. An underlying bit button that has any macro will not be activated.

  5. An underlying toggle switch that has any macro will not be activated.

  6. An underlying multi-state switch that is configured as a List or Drop-down List will not be activated.

  7. A function button can only be the last button, i.e. the bottom-most button. All the buttons that are under a function button will not be activated.

  8. A screen button can only be the last button. All the buttons that are under a screen button will not be activated.

  9. A word button that is configured for Enter Value or Enter Password can only be the last button. All the buttons that are under such a button will not be activated.

  10. The maximum number of buttons that can be indirectly activated by one touch is 10.


3.1.4 Specifying Default Folder for PC Based File I/O

Specifying Default Folder for File I/O

The default folder will be used for a file I/O operation when one of the following three conditions exists:

  1. The command issued for the operation does not require a specific filename.
  2. The command issued for the operation requires a filename and the specified filename contains no path information.
  3. The [Save to the default folder] option is checked when you want to save logged data / alarm history / operation log to file. Please see Section 13.1.2, Section 12.2, Section 14.2 for details about option setting.

To specify the default folder, access the "Custom" page of the “Panel General Setup” dialog box. Select "General Setup" and "Panel" in the submenu to get the dialog box, then click the "Custom" tab. Another way to access the dialog box is to double-click the "Panel General Setup" node on the project tree.

On the “Custom” page, you can specify the desired default folder in the "Default Folder" group according to the following rules:

  1. If you want the folder of your application file (.pe3 or .pl3 file) to be the default folder, select “Use the application file's folder” in the “Creation” combo box.

For applications with this selection running on HMI units, because the applications are not stored in any file or under any directory, the root directory of the USB memory stick will be used as the default folder instead.

  2. If you want to use a specific folder that will exist at run-time as the default folder, select "Create the designated folder" in the "Creation" combo box and specify the folder in the "Designated Folder" edit box.

Note that the specified folder must exist at run-time or the file I/O operations will fail.

  3. If your application needs a new default folder every day, select “Create a new folder every day” in the “Creation” combo box, and specify the following 3 items:

A) New Folder Path: The path for the new folder. The system will create a new default folder under the specified path every day.
B) Folder Name Format: The format to create a default folder name.
C) <Prefix>: The string to be used as the prefix of the new default folder names. Note that only ASCII characters are allowed.

Example:

Folder Name Format | Folder Path | <Prefix> | Date | Default Folder Name
<Prefix>yymmdd | C: | ABC | December 19, 2008 | C:\ABC081219
<Prefix>yyyymmdd | D:\NEO | ABC_ | December 19, 2008 | D:\NEO\ABC_20081219
<Prefix>yyMMMdd | C: | XYZ | January 10, 2009 | C:\XYZ09JAN10
<Prefix>yyyyMMMdd | D:\123 | XYZ_ | January 10, 2009 | D:\123\XYZ_2009JAN10

  4. If your application needs a new default folder every month, select “Create a new folder every month” in the “Creation” combo box and specify the following 3 items:

A) New Folder Path: The path for the new folder. The system will create a new default folder under the specified path every month.
B) Folder Name Format: The format to create a default folder name.
C) <Prefix>: The string to be used as the prefix of the new default folder names. Note that only ASCII characters are allowed.

Example:

Folder Name Format | Folder Path | <Prefix> | Date | Default Folder Name
<Prefix>yymm | C: | ABC | December 19, 2008 | C:\ABC0812
<Prefix>yyyymm | D:\NEO | ABC_ | December 19, 2008 | D:\NEO\ABC_200812
<Prefix>yyMMM | C: | XYZ | January 10, 2009 | C:\XYZ09JAN
<Prefix>yyyyMMM | D:\123 | XYZ_ | January 10, 2009 | D:\123\XYZ_2009JAN


3.2 Working with Keys

Working with Keys

Some of the target panels are key type. Those key type panels carry external keys that you can press to perform the defined operations.
To assign or change the operation of the keys in the panel application, you can use the following two ways:

■ Default Settings for the Panel Application
Described in Section 3.2.1.

■ Settings for a Screen
Described in Section 3.2.2.


3.2.1 Default Settings for the Panel Application

Default Key Settings for the Panel Application

The default settings are settings that can be used by all screens in the panel application. With the default settings of the keys, all the screens in the panel application can share the common usages of keys and do not have to keep and maintain the same usages in each screen.

You can change the default settings of keys for the panel application in the General Setup property sheet. To open the General Setup property sheet, please see Section 3.1 Setting up the Panel Application for details. The General Setup property sheet provides you with the Keys page to set up the default keys.

The following is an example of the Keys page and Usage Setup dialog in the General Setup property sheet.

There are two parts in the above illustration: Key Usage Table and Usage Setup Dialog.

■ Key Usage Table
A table lists all the keys of the target panel and their default usages. The key usage table is initially empty (Usages for key and key combination are none) after the panel application is created. For details about Key Usage Table, please see Section 3.2.3.

■ Usage Setup Dialog
A floating dialog box allows you to specify the usage of the selected key or key combination. Left-click the cell in the key usage table to bring up the dialog box. For details about Usage Setup Dialog, please see Section 3.2.4.


3.2.2 Settings for a Screen

Key Settings for a Screen

Each screen can have its own key operation. You can allow a key to perform an operation only in the specified screen by changing the settings of the screen keys in the Screen Properties property sheet. To open the Screen Properties property sheet, please see Section 3.9.3 Setting up a Screen for details. The Screen Properties property sheet has the Keys page to set up the keys for the screen.

The following is an example of the Keys page and Usage Setup dialog in Screen Properties property sheet.

There are two parts in the above illustration: Key Usage Table and Usage Setup Dialog.

■ Key Usage Table
A table lists all the keys of the target panel and their usages. The key usage table is the same as the one in the Keys page of the General Setup property sheet when the screen is created. For details about Key Usage Table, please see Section 3.2.3.

■ Usage Setup Dialog
A floating dialog box allows you to specify the usage for the selected key or key combination. Left-click the cell in the key usage table to bring up the dialog box. The Use Default option is checked by default. Uncheck the Use Default option to assign a usage for the selected cell that will only be available in the specified screen. For details about Usage Setup Dialog, please see Section 3.2.4.


3.2.3 Key Usage Table Settings

Key Usage Table Settings

The key usage table is located in the Keys page of the General Setup property sheet or Screen Properties property sheet. It lists all the keys of the target panel and their default usages. The Keys page is only displayed for target panel with keypads.

The following is an example of a key usage table in the Keys page.

There are three columns in the key usage table.

Column | Description
Key | Available keys of the target panel.
Usage | Displays how the key will be used when it is pressed.
Usage (Esc+) | Displays how the key combination (ESC+Key) will be used when it is pressed. This column exists only when the target panel supports the key combination.

Note: Left-click the cell brings up the Usage Setup Dialog which sets up the usage of the selected cell. For details about Usage Setup Dialog, please see Section 3.2.4.


3.2.4 Usage Settings for a Key

Usage Settings for a Key

You can assign or change the usage for the key or the key combination with the Usage Setup Dialog. The Usage Setup Dialog is a floating dialog box that can be freely moved.

To open the Usage Setup Dialog, left-click the cell in the key usage table. If the selection in the key usage table is changed, the dialog box remains open and displays the settings related to the new selection.

The following is an example of usage setup dialog.

Property | Description
Use Default | Check this option if you want to use the default setting in the Keys page of the General Setup property sheet. The field is only available in the Keys page of the Screen Properties property sheet.
Usage | Select a usage for the key or key combination. There are 7 options: None, Bit Button, Function Button, Keypad Button, Multistate Switch, Screen Button and Word Button.
Bit Button | If the usage is Bit Button, specify the following properties:
 | Property | Description
 | Function | Select the operation of the bit button. There are 5 options: Set ON, Set OFF, Momentary ON, Momentary OFF, and Invert. For details, see Section 5.1.1 Basic Operations.
 | Write Address | Specifies the bit variable to be operated. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | ON Macro | Check this option for the button to have an ON macro. Select a macro from the dropdown list. This option is available when the bit button operation is Set ON, Momentary ON, or Momentary OFF.
 | OFF Macro | Check this option for the button to have an OFF macro. Select a macro from the dropdown list. This option is available when the bit button operation is Set OFF, Momentary ON, or Momentary OFF.
Function Button | If the usage is Function Button, specify the following properties:
 | Property | Description
 | Function | Specifies the operation for the function button to perform. About the available operations, see Section 5.4.1 Basic Operations.
Keypad Button | If the usage is Keypad Button, specify the following properties:
 | Property | Description
 | Enter Character | Select this item if the button is used to input specified character to the keypad buffer.
 | Character | Available when Enter Character is selected. Specifies the character to be entered in the keypad buffer.
 | Enter Command | Select this item if the button is used to issue the specified command to the keypad buffer.
 | Command | Available when the Enter Command is selected. Specifies the command issued to the keypad buffer. There are 4 commands available:
 |  | Command |  |  | Description
 |  | Enter |  |  | Completes the data entry and sends the input string to the associated object or the system.
 |  | Escape |  |  | Cancels the data entry operation.
 |  | Clear |  |  | Clears the keypad buffer.
 |  | Backspace |  |  | Removes the last character in the keypad buffer.
Multistate Switch | If the usage is Multistate Switch, you need to specify the following properties:
 | Property |  | Description
 | State Type |  | The state type of the monitored variable. There are 2 options: Value and LSB. For details, see Section 4.4.1.1 State Types.
 | Data Type |  | The data type of the variables specified in this page.
 | Write Address |  | Specifies the variable to be controlled. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Total State |  | Specifies the number of valid states that the monitored variable has. Note: The last state is state N-1 when the Total States is N.
 | Next State |  | Specifies the method of calculating the next state. +1 means the next state is the current state plus one, when the current state is not the last state. When the current state is the last state, the next state is state 0. -1 means the next state is the current state minus one, when the current state is not state 0. When the current state is state 0, the next state is the last state.
Screen Button | If the usage is Screen Button, specify the following properties:
 | Property |  | Description
 | Function |  | Specifies the operation for the screen button to perform. There are 4 options: Open Screen, Previous Screen, Close and Open Screen, and Close Screen. For details, see Section 5.3.1 Basic Operations.
 | Screen |  | Specifies the screen to be opened.
 | Change user level to |  | Check this option for the button to change the current user level. Specify the new user level to replace the current user level.
 | Acknowledge alarm |  | Check this option for the button on the alarm-associated screen to acknowledge the alarm.
Word Button | If the usage is Word Button, you need to specify the following properties:
 | Property |  | Description
 | Function |  | Specifies the operation that the word button performs. For details, see Section 5.6.1 Basic Operations.
 | Data Type |  | The data type of the variable to be controlled.
 | Write Address |  | Specifies the variable to be controlled. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Constant |  | The constant for the specified operation.
 | Minimum |  | The minimum for the specified operation.
 | Maximum |  | The maximum for the specified operation.
 | Total Digits |  | The number of digits to be displayed for the Minimum and the Maximum on the numeric keypad.
 | Fractional Digits |  | When the Data Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed for the Minimum and the Maximum on the numeric keypad. When the Data Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown and entered as a fixed point number. When the Fractional Digits is nonzero, say N, the entered value will be converted to an integer according to the following formula before being output. OutputValue = EnteredValue * (Nth power of 10) Example:
 |  |  | Display Type | Total Digits | Fractional Digits | Entered Value | Output Value
 |  |  | 32-bit Floating Point | 4 | 2 | 12.34 | 12.34
 |  |  | 32-bit Floating Point | 4 | 2 | 123.4 | Error!
 |  |  | 16-bit Signed Decimal | 5 | 2 | 123.45 | 12345
 |  |  | 16-bit Signed Decimal | 5 | 2 | -0.05 | -5
 |  |  | 16-bit Signed Decimal | 5 | 2 | 3 | 300
 | Activation |  | Select Button Down item so the touch operation will be activated when the button is touched. Select Button Up item so the touch operation will be activated when the button is released.
Advanced | The following table describes each Advanced property. Not all properties are available for each object.
 | Property |  | Description
 | Enabled by Bit |  | Check this option so the operation of the object will be enabled and disabled by the specified bit.
 | Bit |  | Specifies the bit that enables and disables the touch operation. Click [image] to enter a bit address. Click [image] to select a bit tag.
 | Enabling State |  | Specifies the state (On or Off) that enables the touch operation.
 | Enabled by User Level |  | Check this item so the touch operation of the object will be enabled and disabled by the current user level.
 | Lowest Enabling User Level |  | Specifies the lowest user level that is required to enable the touch operation.
 | Operator Confirmation |  | Check this option if you want the operator to confirm the operation. The Confirmation box will be displayed when the object performs the operation. If the operator selects “Yes” in the Confirmation box, the operation will be performed. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the operation will be cancelled.
 | Maximum Waiting Time |  | Specifies the maximum time that the object will wait for the operator’s confirmation. The operation will be cancelled if the operator does not respond within this time.
 | Notification |  | Check this option so the object will notify the specified bit after it finishes the operation.
 | Bit |  | Specifies the bit that receives the notification.
 | State |  | Specifies the state (On or Off) that is used for the notification.


3.3 Internal Memory

Internal Memory

This section describes how to set up and use the internal memory for the panel application.


3.3.1 Types of Internal Memory

Types of Internal Memory

The following table describes the types of memory space that can exist or always exist in the internal memory.

Type | Address Format | Description
Regular user memory | Word: $Un Bit: $Un.b; b: 0~f | The size of this memory space (n) is settable.
Battery backed user memory | Word: $Nn Bit: $Nn.b; b: 0~f | This memory space is available when the target panel is equipped with battery backed RAM. The size of this memory space (n) is settable.
System memory | Word: $Sn Bit: $Sn.b; b: 0~f | This memory space keeps the system’s required data and information. See Section 3.3.3 for details.
Index registers | Word: $In n: 0~63 | The index registers are provided to support indirect addressing. To know how to specify indirect address by using index registers, please see Section 3.3.2 for details.
32-bit index register | Word: $Jn n: 0~15 | The 32-bit index registers are provided to support indirect addressing. To know how to specify indirect address by using index registers, please see Section 3.3.2 for details.
Command block | Word: $CBn Bit: $CBn.b; b: 0~f | This memory space is allocated for storing the data read from the specified command block.


3.3.2 Index Registers

Index Registers

The index registers are battery backed if the panel has battery backed memory. The index registers are cleared to zero when the panel application is updated.

You can use the index registers to specify the indirect address. With the support of indirect addressing, an object or macro can be designed to access different sets of data at run time.

Examples

  1. The word address W[$I30] is equivalent to W2000 when the value of $I30 is 2000.
  2. The word address $U[$I0+123] is equivalent to $U223 when the value of $I0 is 100.
  3. The bit address $U[$I2].a is equivalent to $U0.a when the value of $I2 is 0.
  4. The word address [$I2]:W100 is equivalent to 3:W100 when the value of $I2 is 3.
  5. The bit address [$I0]: W[$I1+10].f is equivalent to 5:W20.f when the values of $I0 and $I1 are 5 and 10 respectively.
  6. The driver of SIMATIC S7 (Ethernet) allows index addressing for data blocks. For examples, the addresses shown below are valid now.

    DB[$I3].DBW100

    DB[$I5+2].DBD[$I10+16]

    DB[$I0+2].DBX[$I1].5

    Note: The support of data block indexing can be provided for any PLC driver upon request.

Notes:

  1. It is your responsibility to make sure that values in the index registers will result in valid addresses at runtime. The software has no way of checking the validity of the use of index registers.
  2. The offset values must be a positive number, and the maximum offset value is 65535. And the offset value can be a hexadecimal number if the number is followed by letter h or H.
  3. Only $I0~$I15 can be used for the node address (PLC address), and no offset value is allowed.
  4. Make sure the PLC driver you are using supports indirect addressing.


3.3.3 System Memory

System Memory

The following table lists the system maintained data and information in the system memory of the target panels that may be useful for your application.

Note that in any case do not modify the system memory for any purpose, or the system may malfunction or crash.

Address | Length(Unit:Word) | Content
$S0~$S25 | 26 | Keypad input buffer for keypads. $S0: Command code for keypad display. $S1~$S24: Null terminated ASCII character string up to 48 characters.
$S42 | 1 | The second and minute of the current time in BCD format. Bit 0~7: Second (0x00~0x59). Bit 8~15: Minute (0x00~0x59)
$S43 | 1 | The hour of the current time in BCD format and the RTC adjustment parameter. Bit 0~7: Hour (0x00~0x23). Bit 8~15: RTC adjustment value
$S44 | 1 | The day and month of the current date in BCD format. Bit 0~7: Day (0x01~0x31). Bit 8~15: Month (0x01~0x12).
$S45 | 1 | The year and the day-of-week of the current date in BCD format. Bit 0~7: Year (0x00~0x99). Bit 8~15: Day of week (0x00~0x06); 0 represents Sunday.
$S46 | 1 | The second of the current time in binary format (0~59).
$S47 | 1 | The minute of the current time in binary format (0~59).
$S48 | 1 | The hour of the current time in binary format (0~23).
$S49 | 1 | The one tenth of a second of the current time in binary format (0~9). 9 represents 0.9 second.
$S50 | 1 | The date of the current day in binary format (0~30). 0 represents the first day of a month
$S51 | 1 | The month of the current day in binary format (0~11). 0 represents January.
$S52 | 1 | The year of the current day in binary format (0~99).
$S53 | 1 | The day of week of the current day in binary format (0~6). 0 represents Sunday.
$S219 | 1 | Current user level (0~9); 9 indicates that the user logged in with the developer password.
$S230~$S241 | 12 | The ASCII character string, up to 24 characters, to show the allowable input range for numeric keypads.
$S297 | 1 | The lowest user level that can be accepted by the current password keypad. When the value is 0, any user level is accepted. When the value is 9, only the developer password is accepted.
$S300~$S301 | 2 | 500ms timer.
$S302~$S303 | 2 | 1 second timer.
$S304 | 1 | 20 Hz sine wave (-1000 ~ 1000).
$S305 | 1 | 20 Hz cosine wave (-1000 ~ 1000).
$S306 | 1 | 20 Hz triangle wave (0~1000).
$S307 | 1 | System signals. $S307.0: always 0 when ready. $S307.1: always 1 when ready.
$S315 | 1 | System status. $S315.0: 1 indicates that the data in battery backed RAM is good.
$S317 | 1 | Current language number (0~9); 0 represents language #1
$S319 | 1 | Status bits of mass storage devices $S319.0: Drive C --- Built-in flash disk (1:OK; 0:None) $S319.1: Drive D --- Micro SD card (1:OK; 0:None) $S319.2: Drive E --- USB memory stick (1:OK; 0:None)
$S555 | 1 | $S555.0: Indicates there exists at least one active alarm when the bit is 1
$S556 | 1 | The length of time to display a file I/O error message box. The unit is second. The message box will not close automatically (and the operator must close it manually by touching the close button) when the value is 0.
$S557 | 1 | $S557.0: The system will not display error message for a file I/O operation when the associated disk/memory drive does not exist
$S654 | 1 | Link enabled bits for Link 1~16 $S654.0 is for Link 1; 0: Disabled; 1: Enabled $S654.1 1 is for Link 2; … $S654.f is for Link 16
$S662~$S677 | 32 | Communication status words for Link 1~16 $S662 is for Link 1 $S663 is for Link 2 … $S677 is for Link 16 Communication Status
 |  | Value | Meaning | Value | Meaning
 |  | 0 | OK | 13 | Invalid request
 |  | 1 | Overrun error | 14 | Device busy
 |  | 2 | Break error | 15 | Unknown error
 |  | 3 | Parity error | 16 | Link disabled
 |  | 4 | Framing error | 17 | Initialization failure
 |  | 5 | No response | 18 | Failed to send data
 |  | 6 | Unrecognized response | 19 | Failed to receive data
 |  | 7 | Timeout | 20 | Failed to open connection
 |  | 8 | Inactive CTS | 21 | Connection not ready
 |  | 9 | Checksum error | 22 | Invalid sub-link
 |  | 10 | Command rejected | 23 | Invalid COM port
 |  | 11 | Invalid address | 24 | Error
 |  | 12 | Invalid range | 255 | Uncertain
$S838 | 1 | The ID of the current recipe block (0~15).
$S839~$S854 | 16 | The current recipe numbers of recipe block 0~15. $S839 is for recipe block 0. $S840 is for recipe block 1. … $S854 is for recipe block 15.


3.3.4 Setting up Internal Memory

Setting up Internal Memory

You can use the Internal Memory dialog box to define the size of the regular user memory and the battery backed user memory. To open the Internal Memory dialog box, do one of followings:

  1. In the Project Manager window, double-click the Internal Memory node ( [image]) under Links node of the panel application.
  2. In the Project Manager window, right-click the Internal Memory node ( [image]) under Links node of the panel application to bring out the pop-up menu and select Properties.
    The following is an example of the Internal Memory dialog box.


3.4 Communication Links

Communication Links

This section describes how to set up communication links to allow the panel application to access the data of external devices.


3.4.1 Types of Communication Links

Types of Communication Links

The following table describes the three types of communication links that the panel application can have.

Link Type | Description
Direct link | Directly connects the panel with the specified device(s). The following are examples of direct links. [Example 1] The panel uses an RS232 direct link to talk with the specified device directly. [Example 2] The panel uses an RS485 direct link to talk with the specified devices directly. [Example 3] The panel uses an Ethernet direct link to talk with the specified device directly.
Indirect link | Allow the panel to talk with a device that is not directly connected to it. An indirect link connects the panel with a specified indirect link server. The indirect link server is the target panel of a panel application in the same project and is directly connected to the specified device. [Example 1] Indirect Link via 2-to-1 Connection [Example 2] Indirect Link via N-to-1 Connection (COM) [Example 3] Indirect Link via N-to-1 Connection (Ethernet)
Communication service | Add an appropriate communication service link to the application to allow other panels to communicate with the device directly connected to the target panel. The following table describes the available communication services.
 | Communication Service | Description
 | 2-to-1 Server (COM) | You need to specify the data link, i.e. the associated direct link, for this communication service. This service allows two panels to talk with one device, and only one communication port is required on that device.
 | 2-to-1 Transparent Server (COM) | This communication service makes the target panel a gateway for another computing device, such as, a PC, another target panel, or a panel of another brand, to access the associated controller. See the following diagrams for the possible applications. Any kind of controller whose communication protocol is of the request-reply type can be supported by this communication service. Ask your local representative to check if your controller is supported. Note that the communication parameters (baud rate, number of data bits, number of stop bits, and type of parity check) of the computing device and the communication parameters of the 2-to-1 Transparent Server must be identical.
 | N-to-1 Master (COM) | You need to specify the data link, i.e. the associated direct link, for this communication service. This service allows up to 16 HMI units to talk with one device, and only one communication port is required on that device.
 | N-to-1 Master (Ethernet) | You need to specify the data link, i.e. the associated direct link, for this communication service. This service allows up to 24 HMI units to talk with one device, and only one communication port is required on that device.
Gateway service | A panel can perform as a communication gateway to allow a computing device, such as a PC, to access the panel's internal memory and the controllers connected to the panel. The following table describes the available gateway servers.
 | Gateway Service | Description
 | Serial Gateway Server (COM) | With the serial gateway server driver, a panel can perform as a communication gateway to allow a computing device, which is connected to the panel through a serial port, to access the panel's internal memory and the controllers connected to the panel. In the following figure, the panel has three direct links connected to three PLCs. The fourth link connects a PC to the panel. The three lines with different colors indicate the PC can indirectly access the three PLCs through the panel. The communication protocol used between the PC and the panel is Modbus RTU. Please see Section 3.4.8 for details.
 | TCP/IP Gateway Server (Ethernet) | With the TCP/IP gateway server driver, a panel can perform as a communication gateway to allow one or more computing devices, which are connected to the panel through Ethernet, to access the panel's internal memory and the controllers connected to the panel. In the following figure, the panel has three direct links connected to three PLCs. The fourth link connects three computing devices to the panel through Ethernet. The three lines with different colors indicates the three computing devices can indirectly access the three PLCs through the panel. The communication protocol used between the computing devices and the server is Modbus TCP/IP. Please see Section 3.4.8 for details.
 | Internal Memory Server (Ethernet) | With the internal memory server driver, a panel can perform as a communication gateway to allow one or more computing devices, which are connected to the panel through Ethernet, to access the panel's internal memory. The communication protocol used between the computing devices and the server is Modbus TCP/IP. Please see Section 3.4.10 for details.
OPC Link | OPC Link | Description
 | OPC UA Client Driver | The OPC Client Driver allows the aggregation of data from Third-Party OPC UA servers and any other data that HMI unit may be monitoring. It provides a communications tunnel between two or more computing devices such as PC, HMI units, allowing data to be transferred securely and reliably.


3.4.2 General Settings

General Settings for Commnunication Links

This section describes how to define the general settings for the communication links using the General page of the Link Properties dialog box. The following is an example of the General page that defines a direct link.

The following is an example of the General page that defines a communication service link.

The following table describes each property in the General page of the Link Properties dialog box.

Property |  | Description
Link Number |  | The sequence number of the communication link. It is assigned when the link is created and reassigned when any other link of the same application is removed.
Link Name |  | Specifies the name of the communication link.
Link Type |  | Select one of the following link types for the link:
 |  | Link Type | Description
 |  | Direct Link (COM) | The link connects to the specified device directly through the specified serial (COM) port.
 |  | Direct Link (Ethernet) | The link connects to the specified device directly through the specified Ethernet port.
 |  | Communication Service (COM) | The link connects to one or more other target panels through the specified serial (COM) port and provides the communication service specified in the Device/Server field to the connected target panels. See the description of the Device/Server field to know the available communication services.
 |  | Communication Service (Ethernet) | The link connects to one or more other target panels through the specified Ethernet port and provides the communication service specified in the Device/Server field to the connected target panels. See the description of the Device/Server field to know the available communication services.
 |  | Gateway Service (COM) | The panel performs as a communication gateway to allow a computing device, which is connected to the panel through a serial link and the specified COM port, to access the panel's internal memory and the controllers connected to the panel.
 |  | Gateway Service (Ethernet) | The panel performs as a communication gateway to allow one or more computing devices, which are connected to the panel through a Ethernet link, to access the panel's internal memory and the controllers connected to the panel.
 |  | Indirect Link via 2-to-1 Connection (COM) | The link connects to a target panel that provides the communication service as a 2-to1 server through the specified serial (COM) port. The target panel can communicate with the associated device indirectly through that target panel.
 |  | Indirect Link via N-to-1 Connection (COM) | The link connects to a target panel that provides the communication service as an N-to1 master through the specified serial (COM) port. The target panel can communicate with the associated device indirectly through that target panel.
 |  | Indirect Link via N-to-1 Connection (Ethernet) | The link connects to a target panel that provides the communication service as an N-to1 master through the specified Ethernet port. The target panel can communicate with the associated device indirectly through that target panel.
 |  | OPC Link |
Device/Server |  | When the Link Type is Direct Link, specify the link’s connected device. When the Link Type is Communication Service (COM), select one of the following servers.
 |  | Server | Description
 |  | 2-to-1 Server | In the Data Link field, specify a direct link of the application as the data link for the server. The 2-to-1 server is a bridge between another panel and the device connected to the specified data link. Another panel/application of the project can now use an indirect link to access the device connected to the server through the specified data link.
 |  | 2-to-1 Transparent Server | In the Data Link field, specify a direct link of the application as the data link for the server. The service link connects to a computing device, and allows the device to indirectly communicate with another device through the data link. The computing device can be a target panel, a panel of another brand, or a PC. If the computing device is a target panel, it must use a direct link to accept the service.
 |  | N-to-1 Master | In the Data Link field, specify a direct link of the application as the data link for the server. The link can connect up to 8 target panels, and allow these panels to indirectly communicate with the device connected to the specified data link. The panels served by the link must use an indirect link to accept the service.
 |  | When the Link Type is Communication Service (Ethernet), select one of the following servers.
 |  | Server | Description
 |  | N-to-1 Master | In the Data Link field, specify a direct link of the application as the data link for the server. The link can connect up to 8 target panels, and allow these panels to indirectly communicate with the device connected to the specified data link. The panels served by the link must use an indirect link to accept the service.
 |  | When the Link Type is Indirect Link and the Indirect Link Server Location is specified, the indirectly connected device is shown here.
Link Port |  | Select a port for this link.
Sub-links |  | When an RS485 communication line has many devices connected to it, the logical connection of a device on the link with the target panel is called a sub-link. This field is available when the Link Type is Direct Link (COM). Select this option if this link will connect to many devices, and you want to identify, monitor, or control the communication with each connected device.
Data Link |  | Select a direct link of the application as the data link for the communication service when the Link Type is Communication Service.
Indirect Link Server Location | Panel Application | Select the panel application that provides the communication service for this indirect link.
 | Link | Select the communication service link that provides the communication service for this indirect link.
Record communication status in operation log |  | Check this option if you want the communication status of the link or the link’s sub-links to be recorded in the operation log. The recordable types of status include: Enabled, Disabled, Failed, and Recovered. The operation log display can show the logged communication status.
Check Word |  | The panel will read the specified word periodically to check the status of the link’s connection.
The duration of showing a communication error message |  | The communication error message box will hide and show according to the specified duration. If the duration is 0, the error message box will not show.


3.4.3 Parameter Settings (Serial Port)

Communication Parameter Settings (Serial Port)

This section describes how to set up the communication parameters for the serial communication links using the Parameter page of the Link Properties dialog box.

The following is an example of the Parameter page for a serial direct link.

The following is an example of the Parameter page for an N-to-1 master.

The following table describes each property in the Parameter page of the Link Properties dialog box for a serial link.

Property | Description
Baud Rate | The baud rate used.
Data Bits | The number of data bits used.
Parity | The scheme of parity used.
Stop Bits | The number of stop bits used.
Panel Address | The address of the target panel.
PLC Address | The address of the connected device.
Timeout Time | The maximum time allowed for the communication driver to wait for a reply from the connected device. When the elapsed time exceeds the Timeout Time, the communication driver assumes the communication failed.
Command Delay | If the Command Delay is 0, the communication driver immediately sends the next request to the connected device when it receives a reply from the last request. If the Command Delay is nonzero, the communication driver delays for the specified amount of time before sending the next request to the connected device.
Retry Count | The number of times the communication driver will retry for each request to get a successful reply from the connected device. If the number is zero, the communication driver will use the default retry count.
Fetching Data In Blocks To Optimize The Screen Data Reading | The optimization of screen data reading for the serial links can be determined by the developers. Check the options and the developer can: a) Disable the optimization if the connected PLC does not support block read, and b) Adjust the criteria of forming read blocks so the optimization can be suited to each application.
Specify N-to-1 Connection Slave Panels | This button is available when the link is an N-to-1 master. Click this button to bring up the N-to-1 Connection Slave Panels dialog box. You can define the slave panels of the N-to-1 connection in the dialog box.
Specify Other Data Sharing Panels | This button is available when the link is a direct link and the connected device is Data Sharer (RS485). Click this button to bring up the Other Data Sharing Panels dialog box. You can define the other data sharing panels in the dialog box.


3.4.4 Parameter Settings (Ethernet Port)

Communication Parameter Settings (Ethernet Port)

This section describes how to set up the communication parameters for Ethernet links using the Parameter page of the Link Properties dialog box. The following is an example of the Parameter page for an Ethernet direct link.

The following table describes each property in the Parameter page of the Link Properties dialog box for an Ethernet link.

Property | Description
IP Address | The IP address of the connected device.
Use Default Port | Check this option if the default IP port is used.
Port | Specifies the IP port used
Node Address | Specifies the node address of the connected device.
Timeout Time | The maximum time allowed for the communication driver to wait for a reply from the connected device. When the elapsed time exceeds the Timeout Time, the communication driver assumes the communication failed.
Command Delay | If the Command Delay is 0, the communication driver immediately sends the next request to the connected device when it receives a reply from the last request. If the Command Delay is nonzero, the communication driver delays for the specified amount of time before sending the next request to the connected device.
Retry Count | The number of times the communication driver will retry for each request to get a successful reply from the connected device. If the number is zero, the communication driver will use the default retry count.


3.4.5 Sub-link Settings

Sub-link Settings

An RS485 link or a Ethernet link can have many slave devices connected to it. The HMI uses the same communication protocol to talk with all the slave devices. The connection between the HMI and each of the slave devices is a sub-link. With the Sub-link table, the operator can enable or disable a sub-link at any time.

This section describes how to define the sub-links within a direct link using the Sub-link page of the Link Properties dialog box. The following is an example of the Sub-link page for a RS-485 link.

The following is an example of the Sub-link page for an Ethernet link.

The following table describes each property in the Sub-link page of the Link Properties dialog box for a direct link.

Property

 Description
Number of sub-links | Specifies how many devices the link will connect as sub-links.
Language | Specifies the current language for the Name field.
Name | The name of the selected sub-link for the language specified in the Language field.
IP Address | The IP address of the connected device.
Node Address | The address of the selected sub-link. The address must be a unique number within all the sub-links.
Initial State | The initial communication state for the selected sub-link. If the state is On, the panel will communicate with the sub-link after running the application. If the state is Off, the panel will not communicate with the sub-link until the communication state is turn On in a sub-link table.
Show error message | If this option is checked, the communication error message will be shown when the selected sub-link encounters communication errors. If this option is unchecked, no error message will be shown for any communication errors.
Timeout Time
The maximum time allowed for the communication driver to wait for a reply from the connected device. When the elapsed time exceeds the Timeout Time, the communication driver assumes the communication failed.

Command Delay | If the Command Delay is 0, the communication driver immediately sends the next request to the connected device when it receives a reply from the last request. If the Command Delay is nonzero, the communication driver delays for the specified amount of time before sending the next request to the connected device.


3.4.6 Sharing Data among Panels Using Data Sharer

Sharing Data among Panels Using Data Sharer

The data sharer is a virtual device. It allows data sharing among up to 16 target panels on an Ethernet or an RS485 network. Each of the target panels can have up to 256 words of data to share.

To set up the communication for data sharing, create a direct link and select Data Sharer (UDP) or Data Sharer (RS485) as the connected device. The panel address that you can set in the Parameter page of the Link Properties dialog box must be unique for each sharing panel as it is used to identify the shared data.

The communication driver for the link connecting to Data Sharer is responsible for broadcasting the panel's shared data on the network. For example, if the panel address of a panel is 10 and the number of the link connecting to Data Sharer is 2, the following Macro command will cause the communication driver to broadcast the corresponding data on the network.

2\P10.0 = MOV($u300, 30)

The communication driver receives the broadcasted shared data on the network automatically. It has a block of memory to store the shared data. To access a word, use the following address, where m is the panel address and n is the word number of that panel’s shared data.

Pm.n m=1~16; n=0-255

To access a bit, use the following address, where b is a hexadecimal number representing the bit number in the specified word.

Pm.n.b m=1~16; n=0-255; b=0~f

The UDP is used for the data sharing on Ethernet.


3.4.7 Writing Communication Programs Using Macro Commands

Writing Communication Programs Using Macro Commands

You can write a macro program to let your HMI communicate with a computing device through a serial port. For simplicity, we will use Device in the following sections to refer to the target computing device.

  1. Create a communication link for the application to connect the panel and Device.

or

  2. Specify the general settings for the link. You need to select PanelMaster - General Device (COM) as the device to be connected.

  3. Specify the parameters of the communication.

  4. Understand the key words that are available for composing the communication macro programs.

Key Word

 Type R/W Function
TX Word Write Only Writing a block of words to TX transmits the low bytes of that block of words to Device. The write operation is done when the transmission starts or is cancelled.

Example:
     $U10 = "ABC"
    $U20 = B2W($U10, 3) // Convert the byte array to a word array
    TX = MOV($U20, 3) // Transmit “ABC” to Device

Operation rules:
1) The transmission cannot start until the previous transmission has finished.
2) The word TXT_STS will be set to 1 when the transmission starts.
3) When the hardware flow control is enabled (Bit EN_HS is set to 1), the transmission will not start until the device allows the panel to send data (The CTS signal on the port is asserted).
4) When the RTS/CTS flow control is enabled (Bit EN_HS is set to 1), the RTS signal on the serial port will be negated when the transmission starts and it will be asserted when the transmission ends.
5) The transmission will be cancelled if it cannot start after waiting a time specified by the word TO_TIME. The word TX_STS will be set to 2 when the timeout condition occurs.
TX_W | Word | Write Only | TX_W provides the same functionality as TX, except that the write operation is done after all the bytes are transmitted. It is recommended to use TX_W to transmit data as the macro program will not waste time to wait for the completion and the CPU of the panel will be utilized more efficiently.
TX_STS | Word | Read Only | Reading this word gets the status of the last transmission.
Value | Status
1 | Succeeded
2 | Timeout
255 | In progress
RX Word Read Only Reading this word copies a specified number of word values from the receive buffer. The receive buffer is a word array. The bytes received from Device are stored in the low bytes of the buffer. The high bytes of the buffer are always 0. Once the received data are copied, they are removed from the receive buffer. The read operation is executed whether or not there are enough bytes received in the buffer.

Example:
 $U10 = MOV(RX, 3) // Receive 3 words from the receive buffer.
 // $U10 gets the value of the first received byte.
 // $U11 gets the value of the second received byte.
 // $U12 gets the value of the third received byte.

Operation rules:
Assume the number of words to be read from the buffer is n and the number of available words in the buffer is m.
1) If there are enough data received in the buffer, the read operation does the following 4 things: copies the first n words in the buffer to the destination, sets RX_CNT to n, sets RXB_CNT to (m-n), and sets RX_STS to 1.
2) If there are not enough data received in the buffer, the read operation does the following 4 things: copies all the available data to the destination, sets RX_CNT to m, sets RXB_CNT to 0, and sets RX_STS to 1.
3) When the request size of using RX to get the received characters is larger than RX_CNT, the words that get no received characters will be reset to 0.

RXB_CNT | Word | Read Only | Reading this word gets the number of words that are available in the receive buffer. Note that one word of the receive buffer contains one received byte.
RX_CNT | Word | Read Only | Reading this word gets the number of words that were actually taken out of the receive buffer by the last receive operation. Note that one word of the receive buffer contains one received byte.
RX_STS | Word | Read Only | Reading this word gets the status of the last receive operation.
Word Value | Description
1 | Succeeded
2 | Timeout
Others | Failed
RX_W Word Read Only Reading this word copies a specified number of word values from the receive buffer. The receive buffer is a word array. The bytes received from Device are stored in the low bytes of the buffer. The high bytes of the buffer are always 0. Once the received data are copied, they are removed from the receive buffer. If there are not enough data received in the buffer, the read operation will wait a time specified by TO_TIME. The read operation will not complete until all the required data are received or the timeout occurs.

Example:
$U10 = MOV(RX_W, 3) // Receive 3 words from the receive buffer.
                           // Wait for the data if they are not received from Device yet.
                           // $U10 gets the value of the first received byte.
                           // $U11 gets the value of the second received byte.
                           // $U12 gets the value of the third received byte.

Operation rules:
Assume the number of words to be read from the buffer is n and the number of
available words in the buffer is m
1) If there are enough data received in the buffer, the read operation does the following 4 things: copies the first n words in the buffer to the destination, sets RX_CNT to n, sets RXB_CNT to (m-n), and sets RX_STS to 1.
2) If there are not enough data received in the buffer, the read operation will wait a time specified by TO_TIME for the required data to come. When enough data are received, the read operation performs rule 1 above. When timeout occurs, the read operation is cancelled and RX_STS is set to 2.
FLUSH | Bit | Write Only | Writing 1 to this bit flushes the receive buffer that is used to receive data from Device.
RESET | Bit | Write Only | Writing 1 to this bit resets the UART that is used for the communication between the panel and Device.
TO_TIME Word Read/Write Writing the timeout time to this word sets the timeout time for the communication. The unit is 0.1 second.

Example:
TO_TIME = 20 (U) // Set the timeout time to 2 second.
EN_HS | Bit | Read/Write | Writing 1 to the bit enables the RTS/CTS flow control.
Bit Value | Function
0 | Disables the hardware flow control.
1 | Enables the hardware flow control.
Example:
EN_HS = 1 (B) // Enable the flow control
CTS_STS | Bit | Read Only | Reading the bit gets the status of the CTS signal from the device.
Bit Value | CTS Signal | Comment
0 | Asserted | The panel is allowed to send data to Device.
1 | Negated | The panel is not allowed to send data to Device.
Example:
IF !CTS_STS (B) // Do the following when the CTS is asserted
TX = MOV($U100, 10) // Send 10 bytes to Device
ENDIF
RTS | Bit | Read/Write | Writing 0 to the bit asserts the RTS signal on the port.
Bit Value | Function
0 | Asserts the RTS signal. The Device is allowed to send data to the panel.
1 | Negates the RTS signal. The Device is not allowed to send data to the panel.
Example:
RTS = 1 (B) // Disallow Device to send data to the panel

  5. Understand the communication protocol.
  6. Write the program. The following is an example:
$U10 = "ABCDE" | // $U10 = 4241H, $U11 = 4443H, $U12 = 4500H
$U20 = B2W($U10,5) | // $U20 = 0041H, $U21 = 0042H, $U22 = 0043H, $U23 = 0044H, $U24 = 0045H
TX_W = MOV($U20,5) | // Send 5 words("ABCDE") in $U20 to TX and wait until all datum are sent
$U25 = 0DH | // 0DH is ASCII code for return character
TX_W = MOV($U20,6) | // Send 6 words("ABCDE<CR>") in $U20 to TX and wait until all datum are sent
TX_W = MOV($U20,5) | // Send 5 words in $U20 to TX
$U100 = MOV(RX,5) | // Read 5 words from RX to $U100
$U100 = MOV(RX_W,5) | // Read 5 words from RX to $U100 and wait until all datum are received
RESET = 1 (B) | // Reset TX UART and clear RX buffer
FLUSH = 1 (B) | // Clear RX buffer


3.4.8 Using Gateway Server of the Target Panel

Using Gateway Server of the Target Panel

You can create a communication link in your panel application to provide the gateway service that allows a computing device, such as a PC, to access the panel's internal memory and the controllers connected to the panel.

If the computing device is connected to the panel through a serial link, you need to use the service of Gateway Service (COM) , select PanelMaster's Serial Gateway Server as the server, and specify a serial port. The computing device will use the Modbus RTU protocol to communicate with the panel.

If the computing device is connected to the panel through an Ethernet link, you need to use the service of Gateway Service (Ethernet) and select PanelMaster's TCP/IP Gateway Server as the server. The computing device will use the Modbus TCP/IP protocol to communicate with the panel.

The most important thing is to specify the internal and external memory locations to be accessed at runtime in the address mapping table while configuring the link. In the address mapping table you will specify the addresses and ranges of the locations to be accessed as well as their corresponding locations in the Modbus address space.

The blue dashed lines shown in the above figure indicates that the PC can access Controller #1 through Controller #N via the panel with the help of the gateway server.


3.4.8.1 Setting up Gateway Service

Setting up Gateway Service

We describe how to set up a gateway service with an example here. Suppose that the panel application has two links: The link 1 connects a PanelMaster Null PLC to the panel through COM1 and the link 2 connects a Siemens AG Simatic S7-300(MPI Port) through COM2. A program running on a PC will access the memory locations listed in the following table through the panel and Ethernet using the Modbus TCP/IP protocol.

Memory Locations To Be Accessed | Memory Type | Size | Link No. | Modbus Addresses Used By The PC Program
$N100.0 ~ N100.f | Bit | 1 (16 bits) | Internal Memory | 10001 ~ 10016
W20.0 ~ W21.f | Bit | 2 (32 bits) | 1 | 10100 ~ 10131
Q10.0 ~ Q13.7 | Bit | 2 (32 bits) | 2 | 10350 ~ 10381
$U300 ~ $U319 | Word | 20 words | Internal Memory | 40001 ~ 40020
W250 ~ W289 | Word | 40 words | 1 | 40100 ~ 40139
MW70 ~ MW129 | Word | 30 words | 2 | 40200 ~ 40229

The following shows the steps to set up the gateway service:

  1. Add a new link. In this example, the number of the new link is 3.
  2. In the Link Properties dialog box, select "Gateway Service (Ethernet)" as the Link Type and select "PanelMaster TCP/IP Gateway Server" as the Device/Server. Click the OK button to close the dialog box.

3. Open the dialog box again. Click the Address Mapping Table tab to specify the memory locations to be accessed by the PC program. Click the OK button after finishing the address mapping table. The following picture shows the address mapping table for the example.

The following table describes each property in the Address Mapping Table page of the Link Properties dialog box for a Gateway Service (Ethernet) link.

Property | Description
Use | Check the box to enable the associated mapping block. A mapping block maps a block of internal or external memory locations into the Modbus address space. A gateway client uses the addresses in the specified Modbus address range to access the mapped memory locations indirectly.
No | Shows the mapping block's number.
Type | Specifies the memory type of the mapping block. Select Bit for a bit block and Word for a word block.
Modbus Address | Specifies the Modbus address of the mapping block.
Size | Specifies the mapping block size. If the location type is Word, the unit is 1 word. If the location type is Bit, the unit is 16 bits. For example, when the size of a bit block is 3, the block size is 48 bits. The maximal size of a block is limited by the maximal read block size of the mapped memory block that can be transmitted in one communication transaction or 125 words if the maximal block read size is larger than 125 words.
Corresponding Address | Specifies the address of the internal or external memory block that the gateway client will use the Modbus address to access.
Refresh | Select the rate that the server will read the mapped memory block periodically to refresh the corresponding cache. In a period of time, a mapped memory block with Fast refresh rate will be read two times more than a mapped memory block with Normal refresh rate.

Limitations:

  1. At most, 32 mapping blocks can be defined.
  2. When reading a block of words or bits, the words or bits must be within a single mapping block, or the read operation will fail.


3.4.9 Selecting Modbus Communication Drivers

Selecting Modbus Communication Drivers

The following table may help you to select a Modbus communication driver that is suitable for your application.

Note that the brand name of the following models is “Modicon Corp.”

Model (of the connected device) | Remark
Modicon 984 Device/Slave (RTU) | Protocol: Modbus RTU HMI unit: Modbus master/client Connected device: Modbus slave/server Accessible Memories:
 | Address Range | Remark
 | 1-9999 | Bit memory
 | 10001-19999 | Bit memory
 | 30001-39999 | Word memory
 | 40001-49999 | Word memory
 | Drive name: C2C031
ModBus Device/Slave (RTU, Quantum) | Protocol: Modbus RTU HMI unit: Modbus master/client Connected device: Modbus slave/server Accessible Memories:
 | Address Range | Remark
 | 1-65536 | Bit memory
 | 100001-165536 | Bit memory
 | 300001-365536 | Word memory
 | 400001-465536 | Word memory
 | BH0-BHffff | Bit memory; Hexadecimal numbers are used to specify addresses
 | WH0-WHffff | Word memory; Hexadecimal numbers are used to specify addresses
 | Driver name: C2C081
ModBus Device/Slave (ASCII) | Protocol: Modbus ASCII HMI unit: Modbus master/client Connected device: Modbus slave/server Accessible Memories:
 | Address Range | Remark
 | 1-9999 | Bit memory
 | 10001-19999 | Bit memory
 | 30001-39999 | Word memory
 | 40001-49999 | Word memory
 | Driver name: C2C071
Modicon 984 Master (RTU) | Protocol: Modbus RTU HMI unit: Modbus slave/server Connected device: Modbus master/client Accessible Memories:
 | Address Range
 | Remark
 | 1-4096
 | Bit memory
 | 10001-14096
 | Bit memory
30001-38192
Word memory
40001-48192
Word memory
Driver name: C2C021
Modicon 984 Master (RTU; Little Memory) | Protocol: Modbus RTU HMI unit: Modbus slave/server Connected device: Modbus master/client Accessible Memories:
 | Address Range | Remark
 | 1-1024 | Bit memory
 | 10001-11024 | Bit memory
 | 30001-30512 | Word memory
 | 40001-40512 | Word memory
 | Driver name: C2C022
ModBus Master (RTU; Non-volatile slave data) | Protocol: Modbus RTU HMI unit: Modbus slave/server Connected device: Modbus master/client Server data: Stored in battery backed RAM Accessible Memories:
 | Address Range | Remark
 | 1-1024 | Bit memory
 | 10001-11024 | Bit memory
 | 30001-34096 | Word memory
 | 40001-44096 | Word memory
 | Driver name: C2C121
Modbus Master (ASCII) | Protocol: Modbus ASCII HMI unit: Modbus slave/server Connected device: Modbus master/client Accessible Memories:
 | Address Range | Remark
 | 1-4096 | Bit memory
 | 10001-14096 | Bit memory
 | 30001-38192 | Word memory
 | 40001-48192 | Word memory
 | Driver name: C2C061
Modbus Master (ASCII; Little Memory) | Protocol: Modbus ASCII HMI unit: Modbus slave/server Connected device: Modbus master/client Accessible Memories:
 | Address Range | Remark
 | 1-1024 | Bit memory
 | 10001-11024 | Bit memory
 | 30001-30512 | Word memory
 | 40001-40512 | Word memory
 | Driver name: C2C062
ModBus Master (ASCII; Non-volatile slave data) | Protocol: Modbus ASCII HMI unit: Modbus slave/server Connected device: Modbus master/client Server data: Stored in battery backed RAM Accessible Memories:
 | Address Range | Remark
 | 1-1024 | Bit memory
 | 10001-11024 | Bit memory
 | 30001-34096 | Word memory
 | 40001-44096 | Word memory
 | Driver name: C2C161
ModBus Device/Slave (TCP/IP) | Protocol: Modbus TCP/IP HMI unit: Modbus master/client Connected device: Modbus slave/server Accessible Memories:
 | Address Range | Remark
 | 1-9999 | Bit memory
 | 10001-19999 | Bit memory
 | 30001-39999 | Word memory
 | 40001-49999 | Word memory
 | Driver name: C2C011
ModBus Device/Slave (TCP/IP; Type 2) | Protocol: Modbus TCP/IP HMI unit: Modbus master/client Connected device: Modbus slave/server Accessible Memories:
 | Address Range | Remark
 | 1-65535 | Bit memory
 | 100001-165535 | Bit memory
 | 300001-365535 | Word memory
 | 400001-465535 | Word memory
 | Driver name: C2C111
ModBus Master (TCP/IP) | Protocol: Modbus TCP/IP HMI unit: Modbus slave/server Connected device: Modbus master/client Accessible Memories:
 | Address Range | Remark
 | 1-9999 | Bit memory
 | 10001-19999 | Bit memory
 | 30001-39999 | Word memory
 | 40001-49999 | Word memory
 | Driver name: C2C001
ModBus Master (TCP/IP; Type 2) | Protocol: Modbus TCP/IP HMI unit: Modbus slave/server Connected device: Modbus master/client Accessible Memories:
 | Address Range | Remark
 | 1-9999 | Bit memory
 | 100001-109999 | Bit memory
 | 300001-309999 | Word memory
 | 400001-409999 | Word memory
 | Driver name: C2C101


3.4.10 Accessing Internal Memory through Ethernet

Accessing Internal Memory through Ethernet

This section describes how to configure HMI units so that they can access the internal memories of others through Ethernet.

■ Making the Internal Memory Accessible

To make the internal memory of an HMI unit accessible to other HMI units, you need to create the following communication link for the accessed HMI unit.

Note:

1) The Modbus TCP/IP protocol is used.
2) The internal memory server can support up to 8 clients.
3) The maximal number of words that can be read once is 125.
4) The maximal number of words that can be written once is 120.
5) The maximal number of bits that can be read once is 2000.
6) The maximal number of bits that can be written once is 800.
7) If the specified internal memory address or range is invalid or unavailable, the request is failed.
8) The driver name is C2C301.

■ Enabling the Access of Internal Memory

To enable an HMI unit to access the internal memory of another HMI unit through Ethernet, you need to create the following communication link for the accessing HMI unit.

Remember to specify the IP address of the accessed HMI unit in the Parameter page.

Note:
1) There is no limitation on the number of data per read and write operations.
2) The driver name is C2C311.

The following table describes the addresses that you can use to refer to the internal memory of the accessed HMI unit.

Address Range | Corresponding Internal Memory Addresses Range | R/W | Remark
N0.0-S4094.f | $N0.0-$N4094.f | R | The first 65535 bits of the battery backed user memory
U0.0-N4094.f | $U0.0-$U4094.f | R/W | The first 65535 bits of the regular user memory
U0-U8388607 | $U0-$U8388607 | R/W | The regular user memory
N0-N8388607 | $N0-$N8388607 | R/W | The battery backed user memory
R0:0-R0:8388607 | $R0:0-$R0: 8388607 | R/W | The recipe block No. 0
R1:0-R1: 8388607 | $R1:0-$R1: 8388607 | R/W | The recipe block No. 1
R2:0-R2: 8388607 | $R2:0-$R2: 8388607 | R/W | The recipe block No. 2
… | … | … | …
R15:0-R15: 8388607 | $R15:0-$R15: 8388607 | R/W | The recipe block No. 15

■ Modbus Masters/Clients Can Also Be Clients

A Modbus master/client that supports 5-digit addresses can access part of the internal memory thanks to the internal memory server.

The following table describes the addresses that a Modbus master/client can use to access the internal memory of an HMI unit.

Modbus Addresses | Internal Memory Addresses | R/W | Remark
1-65535 | $U0.0-$U4095.e | R/W | The first 65535 bits of the regular user memory
100001-165535 | $N0.0-$N4095.e | R | The first 65535 bits of the battery backed user memory
300001-365535 | $N0-$N65534 | R | The first 65535 words of the battery backed user memory
400001-465535 | $U0-$U65534 | R/W | The first 65535 words of the regular user memory

A Modbus master/client that supports function codes 20 (Read General Reference) and 21 (Write General Reference) can access all of the accessible internal memory thanks to the internal memory server.

The following table describes the addresses that a Modbus master/client can use to access the internal memory of an HMI unit.

Modbus Reference Type | Modbus Reference Number | Corresponding Internal Memory Addresses | Remark
0 | 0-8388607 | $U0-$U8388607 | The regular user memory
1 | 0-8388607 | $N0-$N8388607 | The battery backed user memory
3 | 0-8388607 | $R0:0-$R0: 8388607 | The recipe block No. 0
4 | 0-8388607 | $R1:0-$R1: 8388607 | The recipe block No. 1
5 | 0-8388607 | $R2:0-$R2: 8388607 | The recipe block No. 2
... | ... | ... | ...
18 | 0-8388607 | $R15:0-$R15: 8388607 | The recipe block No. 15

Note:
1) The internal memory server supports only one group at a time for function codes 20 and 21.


3.4.11 Accessing Siemens PLC through Ethernet

Accessing Siemens PLC through Ethernet

This section describes how to configure HMI units and Siemens PLC program so the HMI unit and Siemens PLC can communicate through Ethernet.

■ Creating a new link

To communicate with Siemens PLC, you need to create the following communication link for the HMI unit.

The driver of SIMATIC S7 (Ethernet) allows index addressing for data blocks. For examples, the addresses shown below are valid now.

DB[$I3].DBW100

DB[$I5+2].DBD[$I10+16]

DB[$I0+2].DBX[$I1].5

Note: The support of data block indexing can be provided for any PLC driver upon request.

■ Setting the link properties

To enable the communication, you need to set the Rack number and Slot number upon the Siemens PLC configuration. The following is an example which uses the default rack and slot number.

■ Making data blocks in the Siemens PLC accessible
To make the data blocks in the Siemens PLC accessible, all the data blocks in the program must have the "Symbolic access only" option unchecked. If the data block is symbolic access only, the HMI units will not be allowed to access the data blocks and the communication error will be shown up. The following is an example of a data block with "Symbolic access only" option unchecked.


3.5 Sound Table

Sound Table

The sound table contains all the sounds used by the panel application. The sound table is empty when the panel application is initially created.

In the application, you can use the function button with the play sound operation to play a specified sound.

Before using the sound in a panel application, import or add a sound into the Sound Table.

To open the Sound Table dialog box, please do one of the following:

  1. In the Project Manager window, double-click the Sound Table ( [image]) node of the panel application.
  2. In the Project Manager window, right-click the Sound Table ( [image]) node to bring out the pop-up menu and select Properties.
  3. On the Panel menu, click Sound Table…

The following is an example of the Sound Table dialog box.

The following table describes how to read or use each of the items in the dialog box.

Item | Description
Sounds | Lists the sounds for the panel application. Select a sound as the current selection, or make multiple selections. To select a sound, click the row of the header column of the sound on the list. To select multiple rows, click the row of the header column and use Ctrl + Click to add a row to the selection. The following table describes each column in the sound list.
 | Column | Description
 | Number | The number of the sound in the sound list. The number is an unsigned integer starting from 0. It must be unique in the panel application. The number can be edited by clicking the cell.
 | Name | The name of the sound. Click the cell to select a predefined sound in the Sound Database from the drop down list. To know how to predefine sounds in the Sound Database, please see Section 2.2.4.
 | Type | Displays the type of sound.
OK | Close the dialog box and accept all changes to the sound table.
Cancel | Close the dialog box and discard all changes to the sound table.
Import… | Import a sound from a sound file. The types of importable sound files include: WAV and MP3.
Add | Add a sound from the Sound Database to the end of the sound table. To know how to use the Sound Database, please see Section 2.2.4.
Insert | Insert a sound from the Sound Database before the selection. To know how to use Sound Database, please see Section 2.2.4. This button is available when the selection is made.
Delete | Delete all the selections. This button is available when the selection is made.
Move Up | Move the selection one item down in the list. This button is available when the selection is made.
Move Down | Move the selection one item up in the list. This button is available when the selection is made.


3.6 Command Block and Status Words

Command Block and Status Words

You can command the panel to do a variety of things using the command block. The command block is a block of words in the controller or the internal memory. The panel scans the control block periodically and performs the specified operations according to the contents of the control block. You can decide the size of the command block, the command words that are required in the command block, and the rate of scanning the command block, so the overhead of reading the command block is minimized.

The panel can provide its status information by writing status values to the status words. The status words are in the controller or the internal memory. You can decide the status words that are required for your application so the panel will not waste time to output useless status values.


Types of Command Block and Status Words

There are three types of control blocks and status words that can be chosen for your application.


3.6.1.1 Type A

Command & Status - Type A

■ Type A Command Block
The following command words for the application and their order in the command block are adjustable.

Screen Switching Register
You can command the panel to change the main screen or display a window screen by setting this word to the number of the desired screen.

Command Flag Word (Command Flags #0 - #15)
The following table describes the function of each bit in the Command Flag Word.

Bit | Function | Description
0 | (reserved) |
1 | Switch Language | Change the language that the panel displays. Parameter One Register: Specifies the number of the desired language
2 | Set Current Recipe Number | Set the current recipe number of the recipe block to the specified recipe number. Parameter One Register: Specifies the recipe number Parameter Two Register: Specifies the recipe block Note: You do not need to specify the recipe block if the application has only one recipe block.
3 | Read Recipe From PLC | Read a recipe from the specified address defined in the Recipe Block dialog box, and use that recipe to replace the specified recipe of the specified recipe block. Parameter One Register: Specifies the recipe number Parameter Two Register: Specifies the recipe block Note: You do not need to specify the recipe block if the application has only one recipe block.
4 | Write Recipe To PLC | Write the specified recipe of the specified recipe block to the specified address defined in the Recipe Block dialog box. Parameter One Register: Specifies the recipe number Parameter Two Register: Specifies the recipe block Note: You do not need to specify the recipe block if the application has only one recipe block.
5 | Clear Alarm History | Clear the alarm history.
6 | Clear Alarm Counts | Clear the alarm counts.
7 | Sound Buzzer | Turn on or turn off the sound buzzer. Parameter One Register: Specifies the sound type.
 |  | Sound Type Value | Description
 |  | 0 | Continuous beep
 |  | 1 | 500ms beeps
 |  | 2 | 200ms beeps
 |  | 3 | 100ms beeps
 |  | 4 | 50ms beeps
8 | Print Screen | Print the specified screen.
 |  | Parameter One Register | Operation
 |  | (Undefined) | Prints the top screen.
 |  | 0 | Prints the top screen.
 |  | The number of the screen to be printed | Prints the specified screen.
9 | Backlight On | Turn the backlight on.
10 | Backlight Off | Turn the backlight off.
11 | Set Current User Level | Set the current user level to the specified level. Parameter One Register: the user level
12 | Close All Window Screens | Close all window screens.
13 | (reserved) |
14 | (reserved) |
15 | Execute General Command | See the Section 3.6.7 Using General Commands for details.

Note:

To activate any of the above functions, change the corresponding command bit from Off to On. The panel does not reset the command bit, so you have to reset the command bit before commanding the panel to perform the same function again. Keep the state of the command bit long enough so the panel can detect the change. The best way is to use the corresponding acknowledge bit in the Command Status Word. The panel turns on the acknowledge bit when it detects the change. It is safe to reset the command bit when the acknowledge bit turns on. The panels turns off the acknowledge bit when it sees the command bit turn off.

Low Trigger Word (Trigger Bits #0 - #15), High Trigger Word (Trigger Bits #16 - #31)

You can use the trigger bits to initiate the following operations:

  1. Asking the associated data loggers to collect data
  2. Asking the associated data loggers to clear their logging buffers
  3. Executing event macros
  4. Increasing the clock by one hour
  5. Decreasing the clock by one hour
  6. Logging in
  7. Logging out
  8. Asking the associated line charts to read and draw a new set of data.
  9. Asking the associated line charts to clear its content.
  10. Asking the associated scatter charts to read and draw a new set of data.
  11. Asking the associated scatter charts to clear its content.

Enabling Word (Enabling Bits #0 ~ #15)

You can use the enabling bits to enable the following operations:

  1. The data collection of data loggers

Parameter One Register

This word specifies parameter #1 for the specified operation.

Parameter Two Register

This word specifies parameter #2 for the specified operation.

Parameter Three Register

This word specifies parameter #3 for the specified operation.

Parameter Four Register

This word specifies parameter #4 for the specified operation.

■ Type A Status Words

You can have the following status words for the application.

Status Word | Description
Command Status Word (Command Flag Ack. Bits #0 - -#15) | Stores the acknowledge bits of the command bits #0 - #15.
Low Trigger Ack. Word (Trigger Ack. Bits #0 - #15) | Stores the acknowledge bits of the trigger bits #0 - #15.
High Trigger Ack. Word (Trigger Ack. Bits #16 - #31) | Stores the acknowledge bits of the trigger bits #16 - #31.
Current Screen Number Word | Stores the current main screen number.
Current Recipe Block ID Word | Stores the current recipe block number.
Current Recipe Number Word | Stores the current recipe number of the current recipe block.
Current User Level Word | Stores the current user level.
Current Language Word | Stores the current language number.


3.6.1.2 Type H (Binary)

Command & Status - Type H (Binary)

■ Type H (Binary) Command Block
You can have the following command words for the application.

Screen Number Register

You can command the panel to change the main screen or display a window screen by setting this word to the number of the desired screen. Use this word to request the panel to 1) change the language, 2) turn on the backlight, and 3) turn off the backlight. The following table describes how to program this word.

Bit | Description
0-9 | Specifies the screen to be displayed.
11-13 | Specifies the language that the panel displays for. 000: The panel does nothing. 001: The panel changes the language to language 1. 010: The panel changes the language to language 2. ... 111: The panel changes the language to language 7.
14 | If this bit is On, the panel turns off the back light of the display.
15 | If this bit is On, the panel turns on the back light of the display.

Command Flag Register
The following table describes the function of each bit in the Command Flag Register.

Bit | Description
0 | Clears the alarm history.
1 | Clears the alarm counts
2 | (reserved)
3 | (reserved)
4 | Writes the current recipe of recipe block #0 to the address defined in the Recipe Block dialog box of recipe block #0.
5 | Sets the current recipe number of recipe block #0 to the number specified in Recipe Number Register.
6 | Reads the recipe from the address defined in the Recipe Block dialog box of recipe block #0, and use it to replace the current recipe of recipe block #0.
7 | Turns on the buzzer.
8 | Used as trigger bit #4.
9 | Used as trigger bit #5.
10 | Used as trigger bit #6.
11 | Used as trigger bit #7.
12 | Used as trigger bit #0.
13 | Used as trigger bit #1.
14 | Used as trigger bit #2.
15 | Used as trigger bit #3.

Note:

To activate any of the above functions, change the corresponding command bit from Off to On. The panel does not reset the command bit, so you have to reset the command bit before commanding the panel to perform the same function again. Keep the state of the command bit long enough so the panel can detect the change. The best way is to use the corresponding acknowledge bit in the Command Status Word. The panel turns on the acknowledge bit when it detects the change. It is safe to reset the command bit when the acknowledge bit turns on. The panels turns off the acknowledge bit when it sees the command bit turn off.

Recipe Number Register
The number in this word will be used as the current recipe number of recipe block #0 when bit 5 of Command Flag Register changes from Off to On.

■ Type H (Binary) Status Words

You can have the following status words for the application.

Status Word | Description
Screen Status Word | Whenever the panel switches the main screen, it sets this word to the number of the current main screen.
Command Flag Ack. Word | Contains the acknowledge bits for the command flags of Command Flag Register.
Current Recipe Number Word | Stores the current recipe number of recipe block #0.


3.6.1.3 Type H (BCD)

Command & Status - Type H (BCD)

The command words and status words you can have for the application are the same as the H (Binary) type. However, the values in the following words must be in BCD format: Screen Number Register, Recipe Number Register, Screen Status Word, and Current Recipe Number Word.


3.6.2 General Settings

Command & Status - General Settings

This section describes how to define the general settings for the command words and the status words using the General page of the Command & Status dialog box. The following is an example of the General page.

The following table describes each property in the General page.

Property |  | Description
Type |  | Select one of the following three types of control block and status words for your application: A, H (Binary), H (BCD)
Use Command Block |  | Check this item if the application needs any of the command words.
Read Address |  | Specify the address of the command block.
Size |  | Specify the size of the command block.
Scan Time |  | Select one of the following rates for the panel to scan the command block: 1 second, 0.5 second, 0.25 second
Command Block Image | Bit Address Range | Show the valid address range of the bits in the command block. Note that the application can only read the bits.
 | Word Address Range | Show the valid address range of the words in the command block. Note that the application can only read the words.


3.6.3 Command Block Settings (Type A)

Command Block Settings (Type A)

This section describes how to configure the type A command block using the Command Block page of the Command & Status dialog box. The following is an example of the Command Block page.

The following table describes each property in the Command Block page.

Property |  | Description
Command Word | Arrangement | Select Default for the command words to be in the default order in the command block. Select Custom to arrange each command word in the command block by yourself.
 | Screen Switching Register | Check this option to use the word to change the main screen, or display a window screen by setting the word to the number of the desired screen.
 | Reset SSR to Zero | If this option is selected, the panel always resets the Screen Switching Register to zero when it detects a nonzero value in the word. If this option is not selected, the panel resets the Screen Switching Register to zero only when the specified screen is valid and not yet displayed.
 | Parameter One Register | Check this option to use this word to specify the No. 1 parameter for the specified operation.
 | Command Flags #0 - #15 (Command Flag Word) | Check this option to use the command flags to request the panel to perform the specified operations.
 | Trigger Bits #0 - #15 (Low Trigger Word) | Check this option if any of the trigger bits in the word are needed for your application.
 | Parameter Two Register | Check this option to use this word to specify the No. 2 parameter for the specified operation.
 | Trigger Bits #16 - #31 (High Trigger Word) | Check this option if any of the trigger bits in the word are needed for your application.
 | Enabling Bits #0 - #15 (Enabling Word) | Check this option if any of the enabling bits in the word are needed for your application.
 | Parameter Three Register | Check this option to use this word to specify the No. 3 parameter for the specified operation.
 | Parameter Four Register | Check this option to use this word to specify the No. 4 parameter for the specified operation.
Command Flag | Switch Language (#1) | Check this option to use command flag #1 to request the panel to display the specified language. Specify the following: 1) Parameter One Register: the number of the desired language
 | Set Current Recipe Number (#2) | Check this option to use command flag #2 to request the panel to set the current recipe number of the specified recipe block to the specified recipe number. Specify the following: 1) Parameter One Register: The recipe number 2) Parameter Two Register: The recipe block Note: You do not need to specify the recipe block if the application has only one recipe block.
 | Read Recipe From PLC (#3) | Check this option to use command flag #3 to request the panel to read a recipe from the specified address defined in the Recipe Block dialog box, and use that recipe to replace the specified recipe of the specified recipe block. Specify the following: 1) Parameter One Register: The recipe number 2) Parameter Two Register: The recipe block Note: You do not need to specify the recipe block if the application has only one recipe block.
 | Write Recipe To PLC (#4) | Check this option to use command flag #4 to request the panel to write the specified recipe of the specified recipe block to the specified address defined in the Recipe Block dialog box. Specify the following: 1) Parameter One Register: The recipe number 2) Parameter Two Register: The recipe block Note: You do not need to specify the recipe block if the application has only one recipe block.
 | Clear Alarm History (#5) | Check this option to use command flag #5 to request the panel to clear the alarm history.
 | Clear Alarm Count (#6) | Check this option to use command flag #6 to request the panel to clear the alarm counts.
 | Sound Buzzer (#7) | Check this option to use command flag #7 to request the panel to sound its buzzer in the specified manner. Specify the following: 1) Parameter One Register: The sound type. The following table describes the sound type value.
 |  | Sound Type Value | Description
 |  | 0 | Continuous beep
 |  | 1 | 500ms beeps
 |  | 2 | 200ms beeps
 |  | 3 | 100ms beeps
 |  | 4 | 50ms beeps
 | Print Screen (#8) | Check this option to use command flag #8 to request the panel to print the specified screen. Specify the following: 1) Parameter One Register: the number of the screen to be printed Note 1: The top screen is printed if the number is zero or if there is no Parameter One Register.
 | Backlight On (#9) | Check this option to use command flag #9 to request the panel to turn its backlight on.
 | Backlight Off (#10) | Check this option to use command flag #10 to request the panel to turn its backlight off.
 | Set Current User Level (#11) | Check this option to use command flag #11 to request the panel to set the current user level to the specified one. Specify the following: 1) Parameter One Register: the user level
 | Close All Window Screens (#12) | Check this option to use command flag #12 to request the panel to close all window screens.
 | Execute General Command (#15) | Check this option to use command flag #15 to request the panel to perform the specified operation. See the Section 3.6.7 Using General Commands for details.


3.6.4 Status Word Settings (Type A)

Status Word Settings (Type A)

This section describes how to configure the type A status words for your application using the Status Word page of the Command & Status dialog box. The following is an example of the Status Word page.

In the Status Word page, check the needed status words for your application, and specify a word variable that will receive the status value for each checked status word.

The following table describes when and what the panel will write to each status word.

Status Word | Description
Command Flag Ack. Bits #0 - #15 | The states of all the effective command flags to this word whenever a state change occurs on the effective command flags.
Trigger Ack. Bits #0 - #15 | The states of trigger bits #0 - #15 to this word whenever a state change occurs on trigger bits #0 - #15.
Trigger Ack. Bits #16 - #31 | The states of trigger bits #16 - #31 to this word whenever a state change occurs on trigger bits #16 - #31.
Current Screen Number Word | The number of the current main screen to this word whenever the main screen changes.
Current Recipe Block ID Word | The current recipe block ID to this word whenever a different recipe block becomes the current recipe block.
Current Recipe Number Word | The current recipe number of the current recipe block to this word whenever a different recipe becomes the current recipe of the current recipe block.
Current User Level Word | The current user level to this word whenever the current user level changes.
Current Language Word | The current language number to this word whenever it changes the language.


3.6.5 Command Block Settings (Type H)

Command Block Settings (Type H)

This section describes how to configure the type H command block using the Command Block page of the Command & Status dialog box. The following is an example of the Command Block page.

The following table describes each property in the Command Block page.

Property |  | Description
Command Block | Screen Number Register | Use the word to change the main screen, or display a window screen by setting the word to the number of the desired screen. You can also use this word to request the panel to do the following operations: 1) Change the language, 2) Turn on the backlight, and 3) Turn off the backlight. The following table describes how to program this word.
 |  | Bit | Description
 |  | 0-9 | Specifies the screen to be displayed. 11-13
 |  | 11-13 | Specifies the language that the panel displays for. 000: The panel does nothing. 001: The panel changes the language to language 1. 010: The panel changes the language to language 2. ... 111: The panel changes the language to language 7.
 |  | 14 | If this bit is On, the panel turns off the back light of the display.
 |  | 15 | If this bit is On, the panel turns on the back light of the display.
 | Reset SNR to Zero | If this option is selected, the panel always resets the Screen Number Register to zero when it detects a nonzero value in the word. If this option is not selected, the panel resets the Screen Number Register to zero only when the specified screen is valid and not displayed yet.
 | Command Flag Register | Use the command flags to request the panel to do the specified operations.
 | Recipe Number Register | Use command flag #5 to set the current recipe number for recipe block #0, specify the recipe number in this word.
Command Flag | Clear Alarm History (#0) | Check this option to use command flag #0 to request the panel to clear the alarm history.
 | Clear Alarm Counts (#1) | Check this option to use command flag #1 to request the panel to clear the alarm counts.
 | Write Recipe To PLC (#4) | Check this option to use command flag #4 to request the panel to write the current recipe of recipe block #0 to the specified address defined in the Recipe Block dialog box.
 | Set Current Recipe Number (#5) | Check this option to use command flag #5 to request the panel to set the current recipe number for recipe block #0. Specify the following: 1) Recipe Number Register:?the recipe number
 | Read Recipe From PLC (#6) | Check this option to use command flag #6 to request the panel to read a recipe from the specified address defined in the Recipe Block dialog box, and use that recipe to replace the current recipe of recipe block #0.
 | Sound Buzzer (#7) | Check this option to use command flag #7 to request the panel to sound its buzzer.
 | Trigger Bit #4 (#8) | Check this option so command flag #8 will be used as trigger bit #4.
 | Trigger Bit #5 (#9) | Check this option so command flag #9 will be used as trigger bit #5.
 | Trigger Bit #5 (#10) | Check this option so command flag #10 will be used as trigger bit #6.
 | Trigger Bit #5 (#11) | Check this option so command flag #11 will be used as trigger bit #7.
 | Trigger Bit #5 (#12) | Check this option so command flag #12 will be used as trigger bit #0.
 | Trigger Bit #5 (#13) | Check this option so command flag #13 will be used as trigger bit #1.
 | Trigger Bit #5 (#14) | Check this option so command flag #14 will be used as trigger bit #2.
 | Trigger Bit #5 (#15) | Check this option so command flag #15 will be used as trigger bit #3.


3.6.6 Status Word Settings (Type H)

Status Word Settings (Type H)

This section describes how to configure the type H status words for your application using the Status Word page of the Command & Status dialog box. The following is an example of the Status Word page.

In the Status Word page, check the needed status words for your application and specify a word variable that will receive the status value for each checked status word.

The following table describes when and what the panel will write to each status word.

Status Word | Description
Screen Status Word | Screen Status Word.
Command Flag Ack. Word | The panel will write the states of all the effective command flags to this word whenever there a state change occurs on the effective command flags.
Current Recipe Number Word | The panel will write the current recipe number of recipe block #0 to this word whenever a different recipe becomes the current recipe of recipe block #0.


3.6.7 Using General Commands

Using General Commands

This section describes how to use the general commands provided by the type A command block. To issue a general command, specify necessary parameters in the parameter registers and then turn on command flag #15 in Command Flag Register.
You can request the panel to perform the following file operations using the General Command and the default filename:

Operation | Parameter One R egister (Operation code) | Parameter Two Register (Data ID) | Default Filename Format
Save logged data (.TXT) | 1 | ID of the data logger (0-15) | DL<ID>_<Date>_<Time>.txt
Save logged data (.CSV) | 14 | ID of the data logger (0-15) | DL<ID>_<Date>_<Time>.csv
Save logged alarms (.TXT) | 2 | (Not required) | AL_<Date>_<Time>.txt
Save logged alarms (.CSV) | 15 | (Not required) | AL_<Date>_<Time>.csv
Save alarm counts (.TXT) | 3 | (Not required) | AC_<Date>_<Time>.txt
Save alarm counts (.CSV) | 16 | (Not required) | AC_<Date>_<Time>.csv
Save recipe data (.TXT) | 4 | ID of the recipe block (0-15) | RB<ID>.txt
Save recipe data (.CSV) | 17 | ID of the recipe block (0-15) | RB<ID>.csv
Save recipe data (.PRD) | 5 | ID of the recipe block (0-15) | RB<ID>.dat
Print screen to BMP file (256 colors) for HMI units | 6 | Number of the screen | S<ID>_<Date>_<Time>.bmp
Print screen to BMP file (true color) for PC runtime | 6 | Number of the screen | S<ID>_<Date>_<Time>.bmp
Print screen to BMP file (64K colors) for HMI units | 7 | Number of the screen | S<ID>_<Date>_<Time>.bmp
Print screen to JPG file for PC runtime | 7 | Number of the screen | S<ID>_<Date>_<Time>.jpg
Save logged operations (.TXT) | 9 | (Not required) | OL_<Date>_<Time>.txt
Save logged operations (.CSV) | 18 | (Not required) | OL_<Date>_<Time>.csv
Save logged data (.LDF) | 10 | ID of the data logger (0-15) | DL<ID>_<Date>_<Time>.ldf
Take picture in BMP format for PC runtime | 12 | ID of the USB camera (0-3) | CAM<ID>_<Date>_<Time>.bmp
Take picture in JPG format for PC runtime | 13 | ID of the USB camera (0-3) | CAM<ID>_<Date>_<Time>.jpg
Print Screen to File in JPG format | 19 | Number of the screen | S<ID>_<Date>_<Time>.jpg
Take picture in JPG format for HMI units | 24 | ID of the video channel (1-2) | V<ID>_<Date>_<Time>.jpg

Note for default filename format:
<ID>: ID of the data logger, ID of the recipe block, ID of the USB camera, or number of the screen
<Date>: date when saving the data; format is YYMMDD
<Time>: time when saving the data; format is hhmmss

You can request the panel to perform the following file operations using the General Command and the specified filename:

Operation | Parameter One R egister (Operation code) | Parameter Two Register (Data ID) | Default Filename Format (Specified filename)
Save logged data (.TXT) | 31 | ID of the data logger (0-15) | Specifies the address in the internal memory $U that stores the specified filename or full pathname. The name must be a valid Windows pathname with ASCII characters only. The character string must be null terminated and each character occupies one byte. The maximum length of the string is 127. All the folders stated in the full pathname must already exist or the file operation will fail. For example, if the number stored in this register is 400, it means the specified filename is stored in $U400.
Save logged alarms (.TXT) | 32 | (Not required) | Same as above
Save alarm counts (.TXT) | 33 | (Not required) | Same as above
Save recipe data (.TXT) | 34 | ID of the recipe block (0-15) | Same as above
Save recipe data (.PRD) | 35 | ID of the recipe block (0-15) | Same as above
Save logged operations (.TXT) | 39 | (Not required) | Same as above
Save logged data (.LDF) | 40 | ID of the data logger (0-15) | Same as above
Take picture in BMP format for PC runtime | 42 | ID of the USB camera (0-3) | Same as above
Take picture in JPG format for PC runtime | 43 | ID of the USB camera (0-3) | Same as above
Take picture in JPG format for HMI units | 54 | ID of the video channel (1-2) | Same as above


3.7 Setting up Clock Operations

Setting up Clock Operations

This section describes how to define Clock Operations for the panel application using the Clock dialog box. The following is an example of the Clock dialog box.

The following table describes each property in the Clock dialog box.

Description |  |  | Description
Write | Write Time/date to PLC |  | Select this option so the panel will write time and date information to the specified variable.
 | Time/date Data Type |  | Select one of the following data types for the output time and data information.
 |  |  | Data Type | Description
 |  |  | 6 BCD bytes | The following shows the data structure.
 |  |  |  | Byte No. | Content
 |  |  |  | 0 | Minute; 0-59
 |  |  |  | 1 | Hour; 0-23
 |  |  |  | 2 | Day; 1-31
 |  |  |  | 3 | Month; 1-12
 |  |  |  | 4 | Year; 00-99
 |  |  |  | 5 | Day-of-week; 0(Sunday)-6(Saturday)
 |  |  |  | 6 | Second; 0-59
 |  |  |  | 7 | 0
 |  |  |  | Note: All the values are in BCD format.
 |  |  | 8 BCD bytes | The following shows the data structure.
 |  |  |  | Byte No. | Content
 |  |  |  | 0 | Minute; 0-59
 |  |  |  | 1 | Hour; 0-23
 |  |  |  | 2 | Day; 1-31
 |  |  |  | 3 | Month; 1-12
 |  |  |  | 4 | Year; 00-99
 |  |  |  | 5 | Day-of-week; 0(Sunday)-6(Saturday)
 |  |  |  | 6 | Second; 0-59
 |  |  |  | 7 | 0
 |  |  |  | Note: All the values are in BCD format.
 |  |  | 7 BCD words | The following shows the data structure.
 |  |  |  | Word No. | Content
 |  |  |  | 0 | Second; 0-59
 |  |  |  | 1 | Minute; 0-59
 |  |  |  | 2 | Hour; 0-23
 |  |  |  | 3 | Day; 1-31
 |  |  |  | 4 | Month; 1-12
 |  |  |  | 5 | Year; 00-99
 |  |  |  | 6 | Day-of-week; 0(Sunday)-6(Saturday)
 |  |  | 7 binary words | The following shows the data structure.
 |  |  |  | Word No. | Content
 |  |  |  | 0 | Second; 0-59
 |  |  |  | 1 | Minute; 0-59
 |  |  |  | 2 | Hour; 0-23
 |  |  |  | 3 | Day; 1-31
 |  |  |  | 4 | Month; 1-12
 |  |  |  | 5 | Year; 00-99
 |  |  |  | 6 | Day-of-week; 0(Sunday)-6(Saturday)
 |  |  | 7 BCD bytes (8 bytes I/O) | The data type was originally requested for synchronizing the HMI unit with an Omron CJ2M PLC. The data has seven bytes totally as shown in the following but the I/O operation actually takes 8 bytes.
 |  |  |  | Byte No. | Content
 |  |  |  | 0 | Second; 0-59
 |  |  |  | 1 | Minute; 0-59
 |  |  |  | 2 | Hour; 0-23
 |  |  |  | 3 | Day; 1-31
 |  |  |  | 4 | Month; 1-12
 |  |  |  | 5 | Year; 00-99
 |  |  |  | 6 | Day-of-week; 0(Sunday)-6(Saturday)
 |  |  |  | 7 | 0
 |  |  |  | Note: All the values are in BCD format.
 | Write Address |  | Specifies the variable that will receive the output time and date information.
 | Write Operation | Timed | When this item is selected, the panel writes time and date information to the specified variable periodically at a rate specified in the Interval field. Specify an interval between 1 and 255 minutes.
 |  | Triggered | When this item is selected, the panel writes time and date information to the specified variable whenever the specified trigger bit changes from Off to On.
Read | Synchronize Panel with PLC |  | Select this option so the panel will read time and date information from the specified variable and adjust its clock accordingly.
 | Time/date Data Type |  | Specifies the data type for the input time and data information. For details, see the description of the Time/date Data Type field of the Write group.
 | Read Address |  | Specifies the variable that the panel will read the time and date information.
 | Do not run panel application until the restart synchronization is done successfully |  | Select this option so the panel application does not run until the restart synchronization is done successfully.
 | Read Operation | Timed | When this item is selected, the panel reads time and date information from the specified variable periodically at a rate specified in the Interval field. Specify an interval between 1 and 255 minutes.
 |  | Triggered | When this item is selected, the panel reads time and date information from the specified variable whenever the specified trigger bit changes from Off to On.
Increase Hour |  |  | Select this option to increase the panel's clock by one, by changing the specified trigger bit from Off to On.
Decrease Hour |  |  | Select this option to decrease the panel's clock by one, by changing the specified trigger bit from Off to On.


3.8 Setting up Passwords

Setting up Passwords

This section describes how to set up passwords for the panel application using the Passwords dialog box. The following is an example of the Passwords dialog box.

The following table describes each property in the Passwords dialog box.

Property | Description
Password | The Password column contains 8 fields. Specify the password for a user level in the corresponding field. A password is a positive integer up to 8 digits. A password must be unique within the application.
User Name | Specify the user name so the operation logger is able to record who logs in.
9 | Check this item if you want the developer password to be the password with the highest privilege.
Automatic login for operations requiring a higher user level | The password keypad will be displayed to enter a password for a higher user level when the operator touches an object that requires a higher user level than the current one in order to perform the programmed operation.
Login Trigger Bit | When the specified trigger bit changes from Off to On, the password keypad will be displayed to enter a password. The operator can enter a valid password or cancel the password keypad.
Logout Trigger Bit | When the specified trigger bit changes from Off to On, the current user level is reset to 0.
Login Timeout | The password keypad will close automatically when it gets no input from the operator for the specified time.
Support up to 32 users/passwords at runtime | Check this option that a panel application can be enabled to support up to 32 users/passwords. At runtime the HMI unit displays the password table as shown below to let the user manage user names and passwords.
Require user name to log in | Check this option to make the login more secure. the option is available only when the support of 32 users is enabled. At runtime the HMI unit displays the dialog box as shown below to ask the operator to enter name and password.


3.9.1 Types of Screens

Types of Screens

There are three types of screens: Normal Screen, Window Screen and Menu Screen.

To create any type of screen, you can do the following:

  1. Create a screen. Default is a normal screen. To learn how to create a screen, please see Section 3.9.2 for details.
  2. Open Screen Properties dialog box. To learn how to open the dialog box, please see Section 3.9.3 for details.
  3. In the dialog box, select the type you would like the screen to be.

The following table describes how each type of screen opens, closes, and displays.

Types | Description
Normal Screen | A screen that will be displayed when it is selected to be a startup screen, or when a screen button with open screen/previous screen operation is pressed. Usually the normal screen cannot be closed until the other normal screen is opened. The normal screen is also called a main screen that is only displayed one at a time in the panel. The screen size is fixed and depends on the panel model.
Window Screen | A screen that appears in the following situations: * Screen button with open screen operation is pressed * Selected to be a startup screen * OPEN_WS macro command is used. * Alarm is active or clear when the display screen option in the discrete/analog alarm block is selected * Page selector object is used * Custom keypad is needed Usually the window screen stays on the normal screen until the close button is pressed on the title bar or the screen button or CLOSE_WS macro command to close. It then disappears. The panel can display many window screens at a time. At runtime, the window screen will initially be displayed at the predefined position. If the window screen has the title bar, click-and-hold the title bar to move it around in the panel.
Menu Screen | A screen that is displayed when it is selected to be a startup screen, or when a screen button with the open screen operation is pressed. The menu screen remains on the normal screen or window screen, until an area outside the menu screen is pressed, or the screen button is used to close the menu screen. The menu screen then closes. The panel can display one menu screen at a time. The menu screen can slide horizontally into view from either the left or right side of the screen. It can also appear by the left or right side of the button and slide upward or downward into view. Please see Section 5.3.4 to learn how to use the screen button to set up the position of the menu screen. Usually the menu screen stays on the normal screen or window screen until you press anywhere outside the menu screen or use screen button to close. It then disappears.


3.9.2 Creating and Opening Screens

Creating and Opening Screens

■ Creating Screens

To create a screen, you can do the following:

  1. Do one of the following:
    * On the Screen menu, click New Screen…
    * In the Project Manager window, right-click the panel application > Screens item and then click New Screen… on the pop-up menu.
  2. In the New Screen dialog box, type the name and number desired, and hit the ENTER key or click the OK button to validate your choice. The following is an example of the New Screen dialog box.

Note: In each panel application, both the screen name and the screen number have to be unique.

■ Opening Screens

To open a screen, you can do the following:

  1. In the Project Manager window, double click the screen you want to open

  2. On the Screen menu, click Open Screen… In the Open Screen dialog box, select one or multiple screens and click Open button to open all the selected screens. The following is an example of Open Screen dialog box.

■ Activating Screens after Opening

To uncover any screen that is partially or completely obscured by other screens, you can do the following:

  1. In the Project Manager window, double click the screen which is not at the top.
  2. On the Window menu, click the screen you need to activate. Or click Windows… to bring out the Windows dialog box. In the Windows dialog box, select the screen and then click Activate button.
  3. Click anywhere on the screen. If the screens are maximized, click on the title tab of the screen.


3.9.3 Setting up a Screen

Setting up a Screen

You can set up the screen with the Screen Properties dialog box.
To set up a screen, right click Panel Application > Screens > screen to set up in the Project Manager window, and then click Properties on the pop-up menu.

To set up a current screen (an opened screen which is at the top), do one of the following:

  1. In the Project Manager window, double click the current screen.
  2. Right click the blank area on the current screen, and then click Screen Properties… on the pop-up menu.
  3. On the Screen menu, click Screen Properties…

The Screen Properties dialog box contains the following pages. Some of the pages appear only when they are needed.
■ General
   Described in Section 3.9.3.1.
■ Background
   Described in Section 3.9.3.2.
■ Keys
Described in Section 3.2.2.
■ Open Macro / Close Macro / Cycle Macro
Described in Section 15.2.6.


3.9.3.1 General Page

Screen - General Page

This section describes how to define the general settings for a screen. The following is an example of the General page of the Screen Properties dialog box.

The following table describes each item in the General page.

Property |  | Description
Screen Number |  | The number of the screen. It must be between 1 and 7999.
Screen Name |  | The name of the screen.
Use This Screen |  | Check this option to use the screen.
Type |  | Specifies the type of the screen. There are three types: Normal Screen, Window Screen and Menu Screen. Please see Section 3.9.1 for details.
Width |  | Specifies the width (in pixels) of the screen. This field is available to edit when the Type is Window Screen and Menu Screen.
Height |  | Specifies the height (in pixels) of the screen. This field is available to edit when the Type is Window Screen and Menu Screen.
Shown on Display Center |  | Check this option to show the window screen on the display center. This field is available when the Type is Window Screen.
Shown At |  | Check this option to show the window screen at the specified position. This field is available when the Type is Window Screen.
 | X | Specifies the X coordinate of the window screen’s upper-left corner in pixels on the normal screen.
 | Y | Specifies the Y coordinate of the window screen’s upper-left corner in pixels on the normal screen.
Title Bar |  | Select this option to show a title bar with the specified title with the window screen when the Type is Window Screen.
Close Button |  | Select this option for the window screen to have a close Button when the Type is Window Screen and the Title Bar field is checked.
Language |  | Select a language to view and edit the settings of the title for that language. This field is available when the Type is Window Screen and Title Bar field is checked.
Title |  | Specifies the title or select the title from text database for the Title Bar. Click [image] to select the text from text database. Click [image] to edit text. This field is available when the Type is Window Screen and Title Bar field is checked.
Base Screen | <Check Box> | Check this option to have a base screen for the current screen.
 | <Combo Box> | Specifies the screen to be a base screen. This field is available when the Base Screen is checked.
OPEN Macro |  | Check this item for the screen to have the OPEN macro. An Open Macro is run once when the associated screen is being opened. The target panel will not display the screen until the Open Macro terminates. Use OPEN macro to initialize global data and settings for the screen.
CLOSE Macro |  | Check this item for the screen to have the CLOSE macro. A Close Macro is run once when the associated screen is being closed. The target panel will not erase the screen until the Close Macro terminates.
CYCLE Macro | <Check Box> | Check this item for the screen to have the CYCLE macro. A Cycle Macro is run continuously while the associated screen is open. The target panel runs Cycle Macros cyclically, i.e. a Cycle Macro will run beginning with the first command each time after it completes the processing of the last command of the macro, or when it encounters an END command in the middle of the macro. The cycle macro terminates immediately when the screen is closed.
 | Cycle Macro Delay Time | Specifies the delay time in 0, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000 millisecond for the cycle macro.
Print | Whole Screen | Check this item to print the whole screen by Command Flag or Function Button or Macro Command
 | Upper-left | Specifies the X and Y coordinates in pixels for the upper-left corner of the screen’s printing area. The field is available when Whole Screen item is unchecked.
 | Lower-Right | Specifies the X and Y coordinates in pixels for the lower-right corner of the screen’s printing area. The field is available when Whole Screen item is unchecked.
 | Position on Paper | Specifies the X and Y coordinates in millimeters for the position where the specified area of the screen will print on paper.
Percentage of data scan time allocated to the fast scan |  | Select the percentage of data scan time allocated to the fast scan among 50%, 66%, 75%, 80%, 86% and 90%. Note: With a bigger percentage, the data scan time is faster to the tag with fast scan rate. However, data scan time is slower to the tag with normal scan rate.
What to show for an object’s content before its corresponding data is scanned for the object? | Blank | Select this item to show blank for an object’s content before its corresponding data is scanned for the object.
 | Last scanned data or blank | Select this item to show last scanned data or blank for an object’s content before its corresponding data is scanned for the object.
 | Last scanned data or zero | Select this item to show last scanned data or zero for an object’s content before its corresponding data is scanned for the object.
Operable under window screens |  | Check this option to make the screen operable under window screen. This field is available only when the Type is Normal Screen.
Operable under alarm message boxes |  | Check this option to make the normal screen operable under alarm message boxes. This field is available only when the Type is Normal Screen.
Numeric keypad remains open for continuous data entry |  | Check this option for numeric keypad to remain open for continuous data entry.
Note |  | Type a note for the screen.


3.9.3.2 Background Page

Screen - Background Page

This section describes how to define the background of a screen. The following is an example of the Background page of the Screen Properties dialog box.

The following table describes each item in the Background page.

Property |  | Description
Solid Color |  | Check this option for the screen background to be filled with a solid color.
 | <Solid Color> | Click the corresponding color button to specify the color used to fill the background. This item is available when Solid Color option is selected.
Tile |  | Check this option for the screen background to be filled with a pattern.
 | Pattern | Specify the pattern used to fill the background. Click the corresponding Pattern icon and select a pattern from the Pattern palette. This item is available when Tile option is selected.
 | FG Color | The color used to paint the black part of the pattern. When the solid white pattern is selected, this color is not used. This item is available when Tile option is selected.
 | BG Color | The color used to paint the white part of the pattern. This item is available when Tile option is selected.
Picture |  | Check this option to have a picture background for the screen.
 | <Name> | The name of the picture. Use the drop-down list to select a picture from the picture database. Click [image] to select a picture file. Then, the picture of the selected file is imported and saved in the picture database. Click [image] to bring up the Select/Import from Library dialog box. Select a picture from a picture library file. Then, the selected picture is imported and saved in the picture database.
 | Stretch | Check this item so the picture can change its size automatically to fit the screen.
Save as Default |  | Click the button to make the current background setting become the default setting. You need to save the project file to keep the change.


3.9.4 Importing/Exporting a Screen

Importing/Exporting a Screen

This section describes how to export a screen and import a screen regardless of the panel model and screen size.

■ Importing a screen

  1. Right-click Panel Application > Screens item in the Project Manager window to bring out the pop-up menu and then use Import Screen…
  2. Click the *.snf file you want to create a new screen from. To open a screen that was saved in a different folder, locate and open the folder first.
  3. Click Open.

■ Exporting a screen
If you have screen you want to reuse, you can export the screen as a .snf file. You can do the following:

  1. In the Project Manager window, click the screen to export
  2. Right-click on the screen to display the screen item's "pop-up menu"; and then click Export Screen...
  3. To save a screen in a different folder, locate and open the folder first, then click Save.


3.9.5 Cutting/Copying/Pasting/Deleting a Screen

Cutting/Copying/Pasting/Deleting a Screen

■ Copying or Cutting and Pasting a Screen
To copy/cut a screen which is opened and activated, right click the blank area on the screen, and then click Copy Screen/Cut Screen on the pop-up menu, or use the Copy Screen/Cut Screen command On the Screen menu.

After Copying or Cutting, you can paste the screen by right clicking the blank area on any of the screen, and then use Paste Screen on the pop-up menu or the Paste Screen command On the Screen menu.

■ Deleting a Screen
To delete a screen which is opened and activated, right click the blank area on the screen, and then click Delete Screen on the pop-up menu or use the Delete Screen command on the Screen menu.

To delete a screen from Project Manager window, locate the screen to delete and right-click on the screen node to use the Delete command on the pop-up menu. Confirm the deleting operation.


3.9.6 Saving Screens as Pictures

Saving Screens as Pictures

This section describes how to save screens as pictures.

■ Saving a screen as a picture

To save a current screen as the bmp or jpg file, you can do the following.

  1. Open and activate the screen as a current screen
  2. Right click anywhere on the current screen, and then click Save Current Screen as Picture… on the pop-up menu.
    - or -
    On the Screen menu, click Save Current Screen as Picture…

■ Saving multiple screens as pictures

You can also use the Save Screens as Pictures dialog box to save a screen or multiple screens as bmp or jpg files. To open the dialog box, click Save Screens as Pictures… on the Screen menu.
The following is an example of the Save Screens as Pictures dialog box.

The following table describes each item in the dialog box.

Property |  | Description
Panel Application |  | The application Name.
Screen |  | The screen list shows all the screens in the panel application. Click the column header to sort the items. The following table describes each column in the screen list.
 |  | Column | Description
 |  | Number | The screen number. Check the box before the screen number to save the screen as a picture file.
 |  | Name | The screen name.
 |  | Filename | The Filename. The default filename is Screen Name+Language Name+S+State Number. Note: If any of the characters such as /\:*?"<>| in the screen name, they will be converted to underscore ( _ ).
Check All |  | Click the button to check all the screens.
Uncheck All |  | Click the button to uncheck all the screens.
Selections | Language | The language used to display the text of objects.
 | State | The state that displays the state of objects.
 | Address | Select the address type to display the corresponding address of objects. There are 8 address types: None, Write/Monitor, Write, Monitor, read, Notification, touch Operation Control, and Visibility Control.
 | File Type | Select the file type. There are two types: bmp and jpg.
 | Save in Folder | Specifies the folder to locate the files. If the file exists in the folder, it will be replaced by the new one.
 | Print Screen Name as Foot Note | Check this option to display general screen information, such as foot note. The format of the foot note is Screen Name (#Screen Number); Screen WidthXScreen Height.
Progress | <Screen View> | Show the selected screen or the screen which is being saved. To select a screen, click its row in the screen list.
 | <Progress Bar> | Show the saving progress after the Save button is clicked.
Save |  | Click the button to save all the selections with the specified conditions.
Close |  | Click the button to exit the dialog box.


3.9.7 Protecting Screens

Protecting Screens

You can make a screen or screens protected by using password. Any screen under protection is read only and it cannot be edited.

■ Join Protection

To protect a screen and add it to a protection list, you can do the following:

  1. Do one of the following:
    * On the Screen menu, click Join Protection
    * In the Project Manager window, right-click the panel application > Screens item and then click Join Protection on the pop-up menu.
    * In the Screen Manager window, select a screen or screens you want to protect and then click [image] icon.
  2. You need to enter the original password to proceed. If there is no protection setting for the screens, the Set Password For Screen Protection dialog box will show up with screens protection checked. You need to define the desired password for the screen protection list, and hit the ENTER key or click the OK button to validate your choice. The following is an example of the dialog box.

■ Quit Protection

To unprotect a screen and remove it from the protection list, you can do the following:

  1. Do one of the following:
    * On the Screen menu, click Quit Protection
    * In the Project Manager window, right-click the panel application > Screens item and then click Quit Protection on the pop-up menu.
    * In the Screen Manager window, select a screen or screens you want it unprotected and then click [image] icon
  2. To quit the protection, you need to enter the original password in the following dialog box to proceed.

■ Enable Protection

To resume the protection of all the previously protected screens in the protection list, you can do the following:

  1. Do one of the following:
    * On the Screen menu, click Enable Protection
    * In the Project Manager window, right-click the panel application > Screens item and then click Enable Protection on the pop-up menu.

    * In the Screen Manager window, click [image] icon to enable all.

■ Disable Protection

To unprotect all the protected screens in protection list, you can do the following:

  1. Do one of the following:
    * On the Screen menu, click Disable Protection
    * In the Project Manager window, right-click the panel application > Screens item and then click Disable Protection on the pop-up menu.

    * In the Screen Manager window, click [image] icon to disable all.

  2. To disable the protection, you need to enter the original password in the following dialog box to proceed.


4.1 Drawing Basic Shapes

Drawing Basic Shapes

The software provides a drawing tool you can use to create simple or elaborate drawing shapes such as lines, rectangles, circles, arcs etc.

To create a drawing shape, click the shape on the Draw Toolbar (See Section 1.2.2.3 Draw Toolbar for details), or use the command on the Draw menu (See Section 1.2.1.5 Draw menu for details). Then, move the mouse to the position you want to place the shape and click the left button. To set up a drawing shape, double-click the shape to bring up the corresponding properties dialog, which can then allow you to set up the color and style of the line/outlined, pattern, FG/BG Color…of the shape.

Note: If you don’t see the Draw Toolbar pictured below in the lower left corner of the program window, please click the Draw Toolbar command on the View menu.

The following is a sample of the basic shapes:


4.1.1 Drawing Dots

Drawing Dots
  1. In the Draw menu or Draw toolbar, click Dot [image].
  2. Move the cursor onto the screen where you want to draw a dot. A dot with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the dot. The center of the dot will be at the clicked position.
  4. Double-click the dot to bring up the Dot dialog box and then modify the settings of the dot.

The following is an example of the Dot dialog box.

The following table describes each item in the General page.

Item |  | Description
Style |  | Select one of the dot styles listed below:
Color |  | Specifies the dot color.
Position | X | Specifies the X coordinate of the upper-left corner of the dot.
 | Y | Specifies the Y coordinate of the upper-left corner of the dot.

  5. You can click the following icons in the Draw toolbar to modify the properties of the dot.

Click Icon | To
 | Select a style for the dot.
 | Select a color for the dot.


4.1.2 Drawing Lines

Drawing Lines
  1. In the Draw menu or Draw toolbar, click Line [image] to draw a straight line. You can also click Horizontal Line [image] to draw a horizontal line or click Vertical Line [image] to draw a vertical line.
  2. Move the cursor onto the screen where you want to draw a line. A line with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the line. The start point of the line will be at the clicked position.
  4. Drag the handle at the start point to adjust the position of the start point. Drag the handle at the end point to adjust the position of the end point.

The picture on the left shows the two handles of a line. Position the mouse pointer over one of the handles. When the cursor changes to [image], drag the handle until the line has the length and slope you want.

  5. Left-click and hold down the mouse button until the cursor becomes a cross icon [image] to move the line.

  6. Double-click the line to bring up the Line dialog box and then modify the settings of the line. The following is a sample of the Line dialog box.

The following table describes each property in the Line dialog box.

Property |  | Description
Type |  | Specifies the type of line: General, Horizontal, or Vertical.
Style |  | Click the button to select the line style from the dropdown window shown on the right:
Color | Static | Check this option if the color of the line will not be changed.
 | Controlled By Bit | Check this option if the color of the line will be controlled by the specified bit.
 | Blink | Check this option so the line will blink. You have to choose the blink effects that change the color of the line from its On state color to Off state color.
 | Blink (Enabled by Bit) | Check this option if you want to enable the line blinking by the specified bit.
 | State | Select the state that you want to view or define the color for.
 | Color | Specifies the line color for the selected state.
 | Control Bit | Specifies the bit or the word's bit that controls the color or enables the color blinking. Click [image] to enter the bit address. Click [image] to enter the bit tag.
Start / End Point | Start/End Point | Select this option if you want the line to have a shape at the start/end point.
 | Type | Click the dropdown list to select the type for Start/End Point
 | Filled | Select this option if you want the shape to be filled with the line color.
 | Size | Specifies the shape size.
Visibility Control | Visibility Controlled By Bit | Check this option if the line will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the object. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the line visible.
Terminal | X1 | The X coordinate of the start point.
 | Y1 | The Y coordinate of the start point.
 | X2 | The X coordinate of the end point.
 | y2 | The Y coordinate of the end point.7.

You can click the following icons in the Draw toolbar to modify the properties of the line.

Click Icon | To
 | Select a style for the line.
 | Select a color for the line.


4.1.3 Drawing Polylines

Drawing Polylines

  1. In the Draw menu or Draw toolbar, click Polyline [image] to draw a polyline.
  2. Move the cursor onto the screen where you want to draw a polyline, and click the position where you want the start point of the polyline to be at.
  3. Continue clicking on the screen to place as many points needed for nodes in the polyline.
  4. Right-click to place the last point for the polyline and complete the polyline.
  5. Drag one blue handle of the polyline at a time to resize the polyline.
  6. Drag one black handle of the polyline at a time to adjust the node positions of the polyline.

The picture on the left shows all the blue and black handles of a polyline. Position the mouse pointer over one of the handles. When the cursor changes to [image] or [image] or [image] or [image], drag the handle until the polyline is the shape and size you want.

  7. Right-click anywhere on the polyline and use the Insert Point command on the object pop-up menu to insert a new point for the polyline. Or right-click the existing point of the polyline and use the Delete Point command on the object pop-up menu to delete the point.

Pop-up menu | Description
Insert Point | Add a point at the specified position.
Delete Point | Delete a selected point.

  8. Double-click the polyline to bring up the Polyline dialog box and then modify the settings of the polyline.
    The following is a sample of the Polyline dialog box.

The following table describes each property in the Polyline dialog box.

Property |  | Description
Line Style |  | Specifies the style of the polyline.
Color | Static | Check this option if the color of the polyline will not be changed.
 | Controlled By Bit | Check this option if the color of the polyline will be controlled by the specified bit.
 | Blink | Check this option so the polyline will blink. You have to choose the blink effects that change the color of the polyline from its On state color to Off state color.
 | Blink (Enabled by Bit) | Check this option if you want to enable the polyline blinking by the specified bit.
 | State | Select the state that you want to view or define the color for.
 | Color | Specifies the polyline color for the selected state.
 | Control Bit | Specifies the bit or the word's bit that controls the color or enables the color blinking. Click [image] to enter the bit address. Click [image] to enter the bit tag.
Start Point | Start Point | Select this option if you want the polyline to have a shape at the start point.
 | Type | Specifies the shape type.
 | Filled | Select this option if you want the shape to be filled with the line color.
 | Size | Specifies the shape size.
End Point | End Point | Select this option if you want the polyline to have a shape at the end point.
 | Type | Specifies the shape type.
 | Filled | Select this option if you want the shape to be filled with the line color.
 | Size | Specifies the shape size.
Visibility Control | Visibility Controlled By Bit | Check this option if the line will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the object. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the line visible.
Profile | Left | The X coordinate of the upper-left corner of the bounding rectangle of the polyline.
 | Top | The Y coordinate of the upper-left corner of the bounding rectangle of the polyline.
 | Width | The width of the bounding rectangle of the polyline.
 | Height | The height of the bounding rectangle of the polyline.

You can click the following icons in the Draw toolbar to modify the properties of the polyline.

Click Icon | To
 | Select a style for the polyline.
 | Select a color for the polyline.


4.1.4 Drawing Rectangles

Drawing Rectangles
  1. In the Draw menu or Draw toolbar, click Rectangle [image] to draw a normal rectangle. You can also click Round Rectangle [image] to draw a round rectangle or click Clipped Rectangle [image] to draw a clipped rectangle.
  2. Move the cursor onto the screen where you want to draw a rectangle. A rectangle with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the rectangle. The upper-left corner of the rectangle will be at the clicked position.
  4. Drag one handle of the rectangle at a time to resize the rectangle.

 The picture on the left shows the eight handles of a rectangle. Position the mouse pointer over one of the handles. When the cursor changes to [image] or [image] or [image] or [image] , drag the handle until the rectangle is the shape and size you want.

  5. Double-click the rectangle to bring up the Rectangle dialog box and then modify the settings of the rectangle. The following is a sample of the Rectangle dialog box.

The following table describes each property in the Rectangle dialog box.

Property |  | Description
Type |  | Specifies the type of the rectangle. There are three types: Normal, Round or Clipped.
 |  | Normal | Round | Clipped
Number of Dots |  | Specifies the size of the clipped corners if the rectangle is a clipped rectangle. Specifies the radius of the round corners if the rectangle is a round rectangle.
3D |  | Specifies the 3D visual effect for the rectangle. There are three effects: Flat, Raised, or Sunken.
 |  | Effects | Samples | Description
 |  | Flat |  | You can specify the Color and Style for the Border if it is selected. Thickness field is not available when flat is selected.
 |  | Raised |  | You can specify the color for the top and left edges. The software will darken the specified color and draw in the bottom and right edges for you. Border and Style field is not available when Raised is selected.
 |  | Sunken |  | You can specify the color for the bottom and right edges. The software will darken the specified color and draw in the top and left edges for you. Border and Style field is not available when Sunken is selected.
Color Control | Static | Check this option if the color of the rectangle will not be changed.
 | Controlled By Bit | Check this option if the color of the rectangle will be controlled by the specified bit.
 | Blink | Check this option so the rectangle will blink. You have to choose the blink effects that change the color of the rectangle from its On state Border and Solid option settings to Off state Border and Solid option settings.
 | Blink (Enabled by Bit) | Check this option if you want to enable the rectangle blinking by the specified bit.
 | State | Select the state that you want to view or define the color for.
 | Color | Specifies the rectangle color for the selected state.
 | Control Bit | Specifies the bit or the word's bit that controls the color or enables the color blinking. Click [image] to enter the bit address. Click [image] to enter the bit tag.
State |  | Select the state that you want to view or define the colors for.
Border | Border | Check this option if you want the rectangle to have a border.
 | Thickness | Specifies the thickness of the border.
 | Color | Specifies the border color for the selected state.
 | Style | Select a line style for the border.
Solid | Solid | Check this option if you want the rectangle to be solid. A solid rectangle is filled with the specified pattern and colors. This field is available when Border is selected.
 | Pattern | Specifies the fill pattern for the selected state.
 | FG Color | Specifies the color for the selected state that will be used for painting the black part of the fill pattern.
 | BG Color | Specifies the color for the selected state that will be used for painting the white part of the fill pattern.
Profile | Left | The X coordinate of the upper-left corner of the rectangle.
 | Top | Y coordinate of the upper-left corner of the rectangle.
 | Width | The width of the rectangle.
 | Height | The height of the rectangle.
Visibility Control | Visibility Controlled By Bit | Check this option if the line will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the rectangle. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the rectangle visible.

  6. You can click the following icons in the Draw toolbar to modify the properties of the rectangle.

Click Icon | To
 | Select a line style for the border.
 | Select a color for the border.
 | Select a color for painting the white part of the fill pattern.
 | Select a pattern for the fill pattern.
 | Select a color for painting the black part of the fill pattern.


4.1.5 Drawing Circles

Drawing Circles
  1. In the Draw menu or Draw toolbar, click Circle [image] to draw a circle.
  2. Move the cursor onto the screen where you want to draw a circle. A circle with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the circle. The center of the circle will be at the clicked position.
  4. Position the mouse pointer over the handle on the edge of the circle. When the cursor changes to or , drag the handle until the circle is the size you want.
  5. Position the mouse pointer over the handle on the center of the circle. When the cursor changes to , left-click the center and hold down the button to move the circle.

 The picture on the left shows the two handles of a circle.

  6. Double-click the circle to bring up the Circle dialog box to modify the settings of the circle.
    The following is a sample of the Circle dialog box.

The following table describes each property in the Circle dialog box.

Property |  | Description
Color Control | Static | Check this option if the color of the circle will not be changed.
 | Controlled By Bit | Check this option if the color of the circle will be controlled by the specified bit.
 | Blink | Check this option so the circle will blink. You have to choose the blink effects that change the color of the circle from its On state Outlined and Solid option settings to Off state Outlined and Solid option settings.
 | Blink (Enabled by Bit) | Check this option if you want to enable the circle blinking by the specified bit.
 | Control Bit | Specifies the bit or the word's bit that controls the color or enables the color blinking. Click [image] to enter the bit address. Click [image] to enter the bit tag.
State |  | Select the state that you want to view or define the colors for.
Outline | Outlined | Check this option if you want the circle to be outlined.
 | Color | Specifies the outline color for the selected state.
 | Thickness | Specifies the thickness of the outline.
Solid | Solid | Check this option if you want the circle to be solid. A solid circle is filled with the specified pattern and colors. This field is available when Border is selected.
 | Pattern | Specifies the fill pattern for the selected state.
 | FG Color | Specifies the color for the selected state that will be used for painting the black part of the fill pattern.
 | BG Color | Specifies the color for the selected state that will be used for painting the white part of the fill pattern.
Center & Radius | X | The X coordinate of the center of the circle.
 | Y | The Y coordinate of the center of the circle.
 | Radius | The radius of the circle.
Visibility Control | Visibility Controlled By Bit | Check this option if the circle will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the circle. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the circle visible.

  7. You can click the following icons in the Draw toolbar to modify the properties of the circle.

Click Icon | To
 | Select a color for the outline.
 | Select a color for painting the white part of the fill pattern.
 | Select a pattern for the fill pattern.
 | Select a color for painting the black part of the fill pattern.


4.1.6 Drawing Ellipses

Drawing Ellipses
  1. In the Draw menu or Draw toolbar, click Ellipse [image] to draw an ellipse.
  2. Move the cursor onto the screen where you want to draw an ellipse. An ellipse with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the ellipse. The upper-left corner of the bounding rectangle of the ellipse will be at the clicked position.
  4. Drag one handle of the ellipse at a time to resize the ellipse.

The picture on the left shows the eight handles of an ellipse. Position the mouse pointer over one of the handles. When the cursor changes to [image] or [image] or [image] or [image], drag the handle until the rectangle is the shape and size you want.

  5. Double-click the ellipse to bring up the Ellipse dialog box and then modify the settings of the ellipse.
    The following is a sample of the Ellipse dialog box.

The following table describes each property in the Ellipse dialog box.

Property |  | Description
Color Control | Static | Check this option if the color of the ellipse will not be changed.
 | Controlled By Bit | Check this option if the color of the ellipse will be controlled by the specified bit.
 | Blink | Check this option so the ellipse will blink. You have to choose the blink effects that change the color of the ellipse from its On state Outlined and Solid option settings to Off state Outlined and Solid option settings.
 | Blink (Enabled by Bit) | Check this option if you want to enable the ellipse blinking by the specified bit.
 | Control Bit | Specifies the bit or the word's bit that controls the color or enables the color blinking. Click [image] to enter the bit address. Click [image] to enter the bit tag.
State |  | Select the state that you want to view or define the colors for.
Outline | Outlined | Check this option if you want the ellipse to be outlined.
 | Color | Specifies the outline color for the selected state.
 | Thickness | Specifies the thickness of the outline.
Solid | Solid | Check this option if you want the ellipse to be solid. A solid ellipse is filled with the specified pattern and colors. This field is available when Border is selected.
 | Pattern | Specifies the fill pattern for the selected state.
 | FG Color | Specifies the color for the selected state that will be used for painting the black part of the fill pattern.
 | BG Color | Specifies the color for the selected state that will be used for painting the white part of the fill pattern.
Profile | Left | The X coordinate of the upper-left corner of the bounding rectangle of the ellipse.
 | Top | The Y coordinate of the upper-left corner of the bounding rectangle of the ellipse.
 | Width | The width of the bounding rectangle of the ellipse.
 | Height | The height of the bounding rectangle of the ellipse.
Visibility Control | Visibility Controlled By Bit | Check this option if the ellipse will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the ellipse. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the ellipse visible.

  6. You can click the following icons in the Draw toolbar to modify the properties of the ellipse.

Click Icon | To
 | Select a color for the outline.
 | Select a color for painting the white part of the fill pattern.
 | Select a pattern for the fill pattern.
 | Select a color for painting the black part of the fill pattern.


4.1.7 Drawing Arcs

Drawing Arcs
  1. In the Draw menu or Draw toolbar, click Arc [image] to draw an arc.
  2. Move the cursor onto the screen where you want to draw an arc. An arc with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the arc. The upper-left corner of the bounding rectangle of the arc will be at the clicked position.
  4. Drag one handle of the arc at a time to change the shape of the arc.

The picture on the left shows the handles of an arc. The blue handles are for shaping the arc. The black handles of the two ends of the arc are for changing the ends' angles. The black handle at the center of the arc is for forcing the arc to be a part of a circle. Position the mouse pointer over one of the handles. When the cursor changes to [image] or [image] or [image] or [image] , drag the handle until the arc is the shape and size you want.

  5. Double-click the arc to bring up the Arc dialog box and then modify the settings of the arc.
    The following is a sample of the Arc dialog box.

The following table describes each property in the Arc dialog box.

Property |  | Description
Color |  | Specifies the color of the arc.
Profile | Left | The X coordinate of the upper-left corner of the bounding rectangle of the arc.
 | Top | The Y coordinate of the upper-left corner of the bounding rectangle of the arc.
 | Width | The width of the bounding rectangle of the arc.
 | Height | The height of the bounding rectangle of the arc.

  6. You can click the following icons in the Draw toolbar to modify the properties of the arc.

Click Icon | To
 | Select a color for the arc.


4.1.8 Drawing Pie Shapes

Drawing Pie Shapes
  1. In the Draw menu or Draw toolbar, click Pie [image] to draw a pie shape.
  2. Move the cursor onto the screen where you want to draw a pie shape. A pie shape with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the pie shape. The upper-left corner of the bounding rectangle of the pie shape will be at the clicked position.
  4. Drag one handle of the pie shape at a time to change the pie shape.

The picture on the left shows the handles of a pie shape. The blue handles are for changing the pie shape. The black handles at the two ends of the pie are for changing the size of the pie. Clicking the black handle at the center of the pie applies the radius to the entire pie and can be used to change the radius of the pie. Position the mouse pointer over one of the handles. When the cursor changes to [image] or [image] or [image] or [image] , drag the handle until the pie is the shape and size you want.

  5. Double-click the pie shape to bring up the Pie dialog box to modify the settings of the pie shape.

The following table describes each property in the Pie dialog box.

Property |  | Description
Outline | Outlined | Check this option if you want the pie shape to be outlined.
 | Color | Specifies the outline color.
Solid | Solid | Check this option if you want the pie shape to be solid. A solid pie shape is filled with the specified pattern and colors. This field is available when Border is selected.
 | Pattern | Specifies the fill pattern.
 | FG Color | Specifies the color for the selected state that will be used for painting the black part of the fill pattern.
 | BG Color | Specifies the color for the selected state that will be used for painting the white part of the fill pattern.
Profile | Left | The X coordinate of the upper-left corner of the bounding rectangle of the pie shape.
 | Top | The Y coordinate of the upper-left corner of the bounding rectangle of the pie shape.
 | Width | The width of the bounding rectangle of the pie shape.
 | Height | The height of the bounding rectangle of the pie shape.

  6. You can click the following icons in the Draw toolbar to modify the properties of the pie shape.

Click Icon | To
 | Select a color for the outline.
 | Select a color for painting the white part of the fill pattern.
 | Select a pattern for the fill pattern.
 | Select a color for painting the black part of the fill pattern.


4.1.9 Drawing Polygons

Drawing Polygons
  1. In the Draw menu or Draw toolbar, click Polygon [image] to draw a polygon.
  2. Move the cursor onto the screen where you want to draw a polygon and click the position where you want the first vertex of the polygon to be at.
  3. Continue clicking on the screen to place as many points needed for vertices in the polygon.
  4. Right-click to place the last vertex for the polygon and complete the polygon.
  5. Drag one handle of the polygon at a time to resize the polygon.
  6. Drag one black handle of the polygon at a time to adjust the vertex positions of the polygon.

The picture on the left shows the handles of a polygon. The blue handles are for resizing the polygon. The black handles are for moving the vertices of the polygon. Position the mouse pointer over one of the handles. When the cursor changes to [image] or [image] or [image] or [image] , drag the handle until the polygon is the shape and size you want.

  7. Right-click anywhere on the polygon and use the Insert Point command on the object pop-up menu to insert a new point for the polygon. Or right-click the existing point of the polygon and use the Delete Point command on the object pop-up menu to delete the point.

The following table describes each item in the General page.

Pop-up menu | Description
Insert Point | Add a point at the specified position.
Delete Point | Delete a selected point.

  8. Double-click the polygon to bring up the Polygon dialog box to modify the settings of the polygon.

The following table describes each property in the Polygon dialog box.

Property |  | Description
Color Control | Static | Check this option if the color of the polygon will not be changed.
 | Controlled By Bit | Check this option if the color of the polygon will be controlled by the specified bit.
 | Blink | Check this option so the polygon will blink. You have to choose the blink effects that change the color of the polygon from its On state Outlined and Solid option settings to Off state Outlined and Solid option settings.
 | Blink (Enabled by Bit) | Check this option if you want to enable the polygon blinking by the specified bit.
 | Control Bit | Specifies the bit or the word's bit that controls the color or enables the color blinking. Click [image] to enter the bit address. Click [image] to enter the bit tag.
State |  | Select the state that you want to view or define the colors for.
Outline | Outlined | Check this option if you want the polygon to be outlined.
 | Thickness | Specifies the thickness of the outline.
 | Color | Specifies the outline color for the selected state.
Solid | Solid | Check this option if you want the polygon to be solid. A solid polygon is filled with the specified pattern and colors. This field is available when Border is selected.
 | Pattern | Specifies the fill pattern for the selected state.
 | FG Color | Specifies the color for the selected state that will be used for painting the black part of the fill pattern.
 | BG Color | Specifies the color for the selected state that will be used for painting the white part of the fill pattern.
Profile | Left | The X coordinate of the upper-left corner of the bounding rectangle of the polygon.
 | Top | The Y coordinate of the upper-left corner of the bounding rectangle of the polygon.
 | Width | The width of the bounding rectangle of the polygon.
 | Height | The height of the bounding rectangle of the polygon.
Visibility Control | Visibility Controlled By Bit | Check this option if the polygon will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the polygon. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the polygon visible.

  9. You can click the following icons in the Draw toolbar to modify the properties of the polygon.

Click Icon | To
 | Select a line style for the border.
 | Select a color for the border.
 | Select a color for painting the white part of the fill pattern.
 | Select a pattern for the fill pattern.
 | Select a color for painting the black part of the fill pattern.


4.1.10 Drawing Text Objects

Drawing Text Objects
  1. In the Draw menu or Draw toolbar, click Text [image].
  2. Move the cursor onto the screen where you want to draw a text object. A text object with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the text object. The upper-left corner of the bounding box of the text object will be at the clicked position.
  4. Double-click the text object to bring up the Text Object dialog box and then modify the settings of the text object. This dialog box contains the following three pages:

■ General
Described in Section 4.1.10.1.

■ Shape
Described in Section 4.3.4.

■ Visibility
Described in Section 4.4.6.

Note 1: You can use the Text toolbar to modify the properties of the text object's text instantly.

Note 2: You can use the Draw toolbar to modify the properties of the text object's shape instantly.

Tip: By default, the Auto Text Resizing on the Edit menu is checked and the related icon on the Edit toolbar is sunken. If you don’t want to resize the text when resizing the object, you need to uncheck the Auto Text Resizing command on the Edit menu or click the sunken icon [image] on the Edit toolbar to make the font size fixed.


4.1.10.1 General Settings

Text Object - General Settings

This section describes how to define the general settings for text objects.

The above is an example of the General page of the Text Object dialog box.

The following table describes each property in the General page.

Property |  | Description
Language |  | The language that you are setting the text for.
Shape |  | Check this option if you want the text object to have a frame as its background. The Shape page appears in the dialog box when the option is selected.
Use the text of the first language for all other languages |  | Check this item so the text object always shows the text of the first language regardless of what the current language is.
Font |  | The font of the current text. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current text. You can change the font templates before selecting a font in that dialog box.
Text | <Edit Box> / <Combo Box> | The current text of the currently selected language.
 | / | Click [image] to view and edit the text for the selected language in this edit box, or click [image] to select a text from dropdown text table that lists all the texts from Text Database. You can change the text database before selecting a text.
Color |  | The color of the text. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Transparent |  | Check this item to make the background of the text transparent.
BG Color |  | Specifies the background color of the text. This field is available when Transparent is not selected.
Alignment |  | The alignment of the text.
Direction |  | Select one of the following directions to arrange the characters of the text.
 |  | Direction | From left to right | From right to left | From top to bottom | From bottom to top
 |  | Input text: An example | An example | elpmaxe nA | A n e x a m p l e | e l p m a x e n A
Position |  | The position of the text body.
Spacing | Border | The margin (in pixels) to the border of the object’s shape for the text body.
 | Line | The distance (in pixels) between two adjacent lines of the text.
 | Char. | The distance (in pixels) between two adjacent characters of the text.


4.1.11 Drawing Picture Objects

Drawing Picture Objects
  1. In the Draw menu or Draw toolbar, click Picture [image].
  2. Move the cursor onto the screen where you want to draw a picture object. A picture object with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the picture object. The upper-left corner of the bounding box of the picture object will be at the clicked position.
  4. Double-click the picture object to bring up the Picture Object dialog box. Select a picture and define the settings for the picture object in the dialog box. Note that you can use the Picture toolbar to modify the properties of the picture object instantly. The following is an example of the Picture Object dialog box.

The following table describes each property in the Picture Object dialog box.

Property |  | Description
Name |  | The name of the picture that the object displays. You can use the drop-down list to select a picture from the picture database. Click [image] to select a picture from a file. After the selection, the software imports the picture of the selected file and saves the picture in the picture database. Click [image] to bring up the Select/Import from Library dialog box. Select a picture from a picture library file. After the selection, the software imports the selected picture from the selected library and saves the picture in the picture database.
View |  | Shows the processed result of the selected picture according to the current settings.
Fit to Object |  | Check this item so the picture can change its size automatically to fit inside the object.
Transparent |  | Check this item to make parts of the picture transparent. The transparent parts are pixels whose colors are identical to the specified transparent color. This item is available when the picture is not a black and white picture.
Transparent Color |  | The transparent color. This item is available when the picture is not a black and white picture.
FG Color |  | The color to paint the black part of a black and white picture. This item is available when the picture is a black and white picture.
BG Color |  | The color to paint the white part of a black and white picture. This item is available when the picture is a black and white picture.
Flip/Rotate |  | Specifies the method to flip or rotate the picture before drawing it. There are 8 options:
 |  | Method | Description
 |  | 0° | Do nothing
 |  | 90° | Rotates the picture clockwise by 90 degrees
 |  | 180° | Rotates the picture clockwise by 180 degrees
 |  | 270° | Rotates the picture clockwise by 270 degrees
 |  | X | Flips the picture over the X axis
 |  | 90° & X | Rotates the picture clockwise by 90 degree and flips it over the X axis
 |  | Y | Flips the picture over Y axis
 |  | 90° & Y | Rotates the picture clockwise by 90 degree and flips it over the Y axis
Tone |  | Specifies the reference color to tone the picture before drawing it. The reference color is the color will be changed to the toning color. There are 4 options:
 |  | Reference Color | Description
 |  | None | Do nothing
 |  | Ref: CentralPixel | Use the color of the central pixel as the reference color.
 |  | Ref: Gray | Use gray (RGB:128,128,128) as the reference color.
 |  | Ref: LightGray | Use light gray (RGB:196,196,196) as the reference color.
Toning Color |  | The color to tone the picture.
Visibility Control | Visibility Controlled By Bit | Check this option if the picture will be shown or hidden by the specified bit.
 | Control Bit | Specifies the bit that shows or hides the picture object. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the picture visible.
Profile | Left | The X coordinate of the upper-left corner of the object.
 | Top | The Y coordinate of the upper-left corner of the object.
 | Width | The width of the object.
 | Height | The height of the object.
 | Redraw | Click this button to redraw the object on the screen with the current settings.


4.1.12 Drawing Scales

Drawing Scales
  1. In the Draw menu or Draw toolbar, click Scale [image].
  2. Move the cursor onto the screen where you want to draw a scale. A scale with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the scale. The upper-left corner of the bounding box of the scale will be at the clicked position.
  4. Double-click the scale to bring up the Scale dialog box and then define the settings for the scale. The following is an example of the Scale dialog box. The corresponding scale is shown to the right of the dialog box.

The following table describes each property in the Scale dialog box.

Property |  | Description
Direction and Position |  | Select the direction and the position of the scale.
 |  | Direction | Horizontal |  | Vertical
 |  | Position | Top | Bottom | Left | Right
 |  | Example |  |  |  |
Dynamic Range | Dynamic Range | Check this item if you want the numbers of the scale ticks and the range of the scale marks to be dynamic, i.e. to be controlled by the specified variable.
 | Parameter Block | Specifies the variable that controls the numbers of the scale ticks and the range of the scale marks. The variable is an array of four double-words (8 words). The following table describes the data members of the array.
 |  | Word # | Data Type | Description
 |  | 0, 1 | 32-bit unsigned integer | The number of major ticks. The allowable range of this number is between 2 and 101.
 |  | 2, 3 | 32-bit unsigned integer | The number of divisions between two adjacent major ticks. The allowable range of this number is between 1 and 100.
 |  | 4, 5 | 32-bit signed integer | The minimum of the scale marks.
 |  | 6, 7 | 32-bit signed integer | The maximum of the scale marks.
 |  | Example Assume a scale’s dynamic range control block is $U100. The following macro commands makes the scale look like this: $U100 = 3 (UD) // The number of major ticks. $U102 = 5 (UD) // The number of sub-divisions. $U104 = 0 (SD) // The minimum of the scale marks. $U106 = 100 (SD) // The maximum of the scale marks.
Color |  | The color of the scale. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Number of Major Ticks |  | The number of major ticks. The minimum you can specify is two.
Number of Sub Divisions |  | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Minor Tick Length |  | The length of minor ticks.
Axis |  | Check this item if you want the scale to have an axis.
Marks | Marks | Check this option if you want the scale to have marks.
 | Font | The font of the marks.
 | Minimum | The minimum of the marks. It is a 32-bit integer.
 | Maximum | The maximum of the marks. It is a 32-bit integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.
 | Reverse Order | Check this option if you want the marks of the scale to show in reverse order. In normal order, the maximal mark is at the right end or top end of the scale. In reverse order, the maximal mark is at the left end or bottom end of the scale.


4.1.13 Drawing Tables

Drawing Tables
  1. In the Draw menu or Draw toolbar, click Table [image].
  2. Move the cursor onto the screen where you want to draw a table. A table with default settings will display and move along with the cursor.
  3. Click the desired position on the screen to place the table. The upper-left corner of the table will be at the clicked position.
  4. Use drag-and-drop editing to move an existing object into an empty cell of the table. If the object is allowed to be placed in the cell, a message box will pop-up to confirm the operation. The following is an example of object insertion with the confirmation dialog box.

Note: Only 23 types of objects can be placed in the cells of the table. The supported objects are Picture, Dot, Text, Bit Button, Toggle Switch, Word Button, Multistate Switch, Screen Button, Function Button, Keypad Button, Numeric Display, Numeric Entry, ASCII String Display, ASCII String Entry, Bit Lamp, Multistate Lamp, Time Display, Date Display, Day-of-Week Display, Message Display, Bar Graph, Picture Display, GIF Display, and Advanced Numeric Display.

  5. Click the cell inside the table. If the cell contains the object, there will be the icon [image] on the upper-left corner of the cell. The following is an example showing you how to edit the object in the table.

  6. Position the mouse point over one of the grid lines. When the cursor changes to [image] or [image], drag the line until the column is the width and the row is the height you want.

Note: You can adjust the width of the column when the Distribute Columns Evenly is not selected in the general page of the Table dialog box. And you can adjust the height of the row when the Distribute Rows Evenly is not selected in the general page of the Table dialog box.

  7. Double-click anywhere inside the table, other than the icon [image], to bring up the Table dialog box and then define the settings for the table. This dialog box contains the following two pages:

■ General
Described in Section 4.1.13.1.

■ Cell
   Described in Section 4.1.13.2.


4.1.13.1 General Settings

Table - General Settings

This section describes how to define the general settings for the table objects. The following is an example of the General page of the Table Object dialog box.

The following table describes each property in the General page of the Table dialog box.

Item |  | Description
ID |  | The object’s identifier is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the tables is TBLnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Cell | Number of rows | Specifies the number of rows in the table.
 | Number of columns | Specifies the number of columns in the table.
 | Distribute rows evenly | Check this option if you want the rows of the table to be always distributed evenly. Uncheck this option if you want to adjust the heights of the rows.
 | Distribute columns evenly | Check this option if you want the columns of the table to be always distributed evenly. Uncheck this option if you want to adjust the widths of the columns.
 | Drag and drop | Check this option so you can drag and drop an object into a cell of the table. Note that not all kinds of objects can be placed in the cells of the table.
Grid | Vertical | Check this option if you want the table to have vertical grid lines.
 | Horizontal | Check this option if you want the table to have horizontal grid lines.
 | Style | Specifies the style for the grid lines.
 | Color | Specifies the color for the grid lines.


4.1.13.2 Cell Settings

Table - Cell Settings

The following is an example of the Cell page of the Table Object dialog box and the Select Object Dialog box when the Insert Button is clicked.

The following table describes each property in the Cell page of the Table dialog box. To make the buttons available, you need to select a row. To select a row, left-click the (Row, Column) column.

Property | Description
(Row, Column) | The location of the cell.
Object | The type of the specified object. If the field is empty, the cell has no object inserted and it is called empty cell.
 | Click the button to bring up the properties dialog box of the specified object and define the settings of the object for the selected cell. The button is available when the Object field is not empty.
Margin | The distance in pixels between the object boundary and the cell border. Select a number between 0 and 10.
Delete | Click the button to clear the contents of the selected cell. The button is available when the selected cell is not empty.
Insert | Click the button to bring up the Select Object dialog box shown above. Select an object type listed in the dialog to create a new object for the selected cell. The button is available when the selected cell is empty. Note: The table won’t allow the insertion of the type of object which is not listed in the dialog.
Move Up | Click the button to move the selected cell before the previous cell. It will not be available when multiple rows are selected, no row is selected, or the first row is selected.
Move Down | Click the button to move the selected cell after the next cell. It will not be available when multiple rows are selected, no row is selected, or the last row is selected.


4.2 Editing Objects

Editing Objects

In this section you will learn how to select the objects first and then move around, copy, or edit the selections without affecting the rest of the screen.


4.2.1 Selecting and De-selecting Objects

Selecting and De-selecting Objects

■ Selecting Objects
To select an object, move the mouse to the object you want to select and then click the left button.
To add an object to the selection, use Shift + Click.
To select all objects of the active screen, use Ctrl + A, or use the Select All command on the Edit menu.

■ Selecting Objects by a Rectangular Area
Left-click on the blank area of the screen, and hold the button to begin your selection. Where you click will become one of the corners of the rectangular selection area. Then drag the mouse diagonally. Release the mouse button when you reach the position that you want the opposite corner of the rectangular area to be.

Each of the selected objects will have blue square-shaped tabs around it. The object with solid tabs is the reference object.

■ De-selecting Objects
To de-select objects, either click the blank area of the screen, or make a new selection.


4.2.2 Basic Operations with the Selected Area

Basic Operations with the Selected Area

■ Moving Objects
Left-click anywhere inside the selected object and hold down the button. When the cursor turns changes to [image], drag the mouse to move the selection to another area of the screen. The selection will "float" over the rest of the screen, allowing you to position it wherever you like. Release the mouse button to "let go" of the selection.

■ Grouping or Ungrouping Objects
To group the selection, click [image] on the edit toolbar, or use the Group command on the Edit menu or on the object pop-up menu. After you have grouped a selection that includes at least two objects, you can copy, move or resize all objects in a group as a single unit. You can select an object within the group and change its properties without ungrouping. You can also save the group to the object library and use this object group in an animated graphic.
To ungroup the selected group, click [image] on the edit toolbar, or use the Ungroup command on the Edit menu or on the object pop-up menu. After ungrouping the objects, the objects within the group will be restored to the single ones.

■ Resizing Objects
The square-shaped tabs around your object can be re-sized. You can resize by clicking on the square-shaped tabs located at the corners and the middle sections of the bound rectangle area and holding the mouse button down. When the cursor changes to [image] or [image] or [image] or [image], drag the mouse to change the size of the selection. Release the mouse button when the selection is the size you like. You can make it bigger or smaller, and achieve a distorted effect by "squashing" or "stretching" the selection to make it either wider/narrower or taller/shorter than its original proportions.
Tip: You can’t resize more than one object at a time unless you group multiple objects before resizing.

■ Auto Text Resizing
To automatically scale the text of the object when resizing the object, click [image] on the edit toolbar if it is raised, or use the Auto Text Resizing command on the Edit menu.
Tip: The Auto Text Resizing command is checked and the icon is sunken by default. If you don’t want to resize the text when resizing the object, you need to uncheck the Auto Text Resizing command or click the sunken icon to make the font size fixed.

■ Pinning or Unpinning Objects
To pin the selection so that it cannot move, click [image] on the edit toolbar, or use the Pin command on the Edit menu or on the object pop-up menu.
To unpin the selection so that it can move again, click [image] on the edit toolbar, or use the Unpin command on the Edit menu or on the object pop-up menu.
Tip: Pinned objects can still be resized.

■ Copying or Cutting and Pasting Objects
To copy a selection from the current screen and place it on the Windows® clipboard, press Ctrl+C, or click [image] on the standard toolbar, or use the Copy command on the Edit menu or on the object pop-up menu.

To cut a selection from the screen, press Ctrl+X, or click [image] on the standard toolbar, or use the Cut command on the Edit menu or on the object pop-up menu.

After Copying or Cutting, you can paste the selection by pressing Ctrl+V, or click [image] on the standard toolbar, or use the Paste command on the Edit menu or on the object pop-up menu.

To copy and paste the selection by mouse, press and hold down the Ctrl key, and then left-click the selection and hold down the button. When the cursor changes to [image], drag the mouse to copy the selection to another area of the screen. The picture on the right is an example.

Tip: Cut and Paste are good for moving objects around within the screen or to another screen.
Copy and Paste are good for duplicating objects from the current screen to other screens.
By pasting multiple times on the current screen, you can achieve a cascading effect.
By pasting once to a different screen, the position of the pasted object will be the same as the copied object from the original screen.

■ Deleting Objects
To delete a selection, press Del, or use the Delete command on the Edit menu, or on the object pop-up menu. When you use Delete, whatever is in the selection will be deleted.

■ Undo
To reverse the last action, press Ctrl+Z, or use the Undo command on the Edit menu.

■ Redo
To reapply the actions that were previously canceled by the Undo command, press Ctrl+Z, or use the Redo command on the Edit menu.

■ Keyboard Shortcuts

Shortcut | Operation | Shortcut | Operation | Shortcut | Operation
【Ctrl+N】 | New Project | 【Ctrl+X】 | Cut | 【Ctrl+D】 | Duplicate
【Ctrl+O】 | Open Project | 【Ctrl+C】 | Copy | 【Ctrl+F】 | Find
【Ctrl+S】 | Save | 【Ctrl+V】 | Paste | 【Ctrl+R】 | Replace
【Ctrl+Z】 | Undo | 【Ctrl+Click+move】 | Copy & Paste | 【Ctrl+A】 | Select All
【Ctrl+Y】 | Redo | 【Del】 | Delete | 【Shift+Click】 | Multiple Select
 |  |  |  | 【Ctrl+Click】 | Reference Object Select


4.2.3 Duplication Objects

Duplicating Objects

To duplicate the selected object, use the Duplicate… command on the Edit menu or on the object pop-up menu. After the duplicate command is executed, the following dialog will pop-up and allow you to set how to duplicate objects.

The following table describes each property in the Duplicate dialog.

Property |  | Description
Number of Copies | Columns | The total number of columns.
 | Rows | The total number of rows.
Spacing in Pixels | Vertical | The distance (in pixels) between two adjacent objects in the vertical direction.
 | Horizontal | The distance (in pixels) between two adjacent objects in the horizontal direction.
Increase Address |  | Check this item so the address of each duplicate will be increased to a specified increment over the previous object.
Increment |  | The increase amount.
Copy Direction |  | From top to bottom, place the duplicates row by row. In the same row, place the duplicate to the right of the previous object.
 |  | From top to bottom, place the duplicates row by row. In the same row, place the duplicate to the left of the previous object.
 |  | From bottom to top, place the duplicates row by row. In the same row, place the duplicate to the right of the previous object.
 |  | From bottom to top, place the duplicates row by row. In the same row, place the duplicate to the left of the previous object.
 |  | From left to right, place the duplicates column by column. In the same column, place the duplicate below the previous object.
 |  | From right to left, place the duplicates column by column. In the same column, place the duplicate below the previous object.
 |  | From left to right, place the duplicates column by column. In the same column, place the duplicate above the previous object.
 |  | From right to left, place the duplicates column by column. In the same column, place the duplicate above the previous object.


4.2.4 Aligning Objects

Aligning Objects

To arrange the selected objects on a screen, you need to select a reference object from within the selection and then press the icon on the toolbar or click the menu item listed as below. To do a multiple selection, use Shift + Click. To select a reference object from the selection, use Ctrl + Click.

Use the Align commands on the Edit menu to arrange objects/drawings on a screen. Select an object or drawing by single-clicking on it, then hold down the Shift key while clicking on the other objects or drawings to be aligned with it. When all of the objects or drawings to be aligned are selected, choose one of the commands in the Align submenu or directly click a specified icon in the Edit Toolbar.

The following table describes each property in the Cell page of the Table dialog box. To make the buttons available, you need to select a row. To select a row, left-click the (Row, Column) column.

Icon | Menu Item |  | Description
 | Align | Left | Align the left sides of selected objects to the left side of the reference object. All the objects move horizontally so their left sides are in line with the left side of the reference object.
 |  | Vertical Center | Align the vertical centers of selected objects to the vertical center of the reference object. All the objects move horizontally so their vertical centers are in line with the vertical center of the reference object.
 |  | Right | Align the right sides of selected objects to the right side of the reference object. All the objects move horizontally so their right sides are in line with the right side of the reference object.
 |  | Top | Align the tops of the selected objects to the top of the reference object. All the objects move vertically so their tops are in line with the top of the reference object.
 |  | Horizontal Center | Align the horizontal centers of selected objects to the horizontal center of the reference object. All the objects move vertically so their horizontal centers are in line with the horizontal center of the reference object.
 |  | Bottom | Align the bottoms of selected objects to the bottom of the reference object. All the objects move vertically so their bottoms are in line with the bottom of the reference object.
 |  | To Grid | Select or deselect the option of aligning objects to grid points.
 | Nudge | Left | Nudge the selection left. When the Snap to Grid option is not selected, all objects of the selection move one pixel left. When the Snap to Grid option is selected, each object of the selection moves left to where its upper-left corner aligns to the nearest grid point.
 |  | Right | Nudge the selection right. When the Snap to Grid option is not selected, all objects of the selection move one pixel right. When the Snap to Grid option is selected, each object of the selection moves right to where its upper-left corner aligns to the nearest grid point.
 |  | Up | Nudge the selection up. When the Snap to Grid option is not selected, all objects of the selection move one pixel up. When the Snap to Grid option is selected, each object of the selection moves up to where its upper-left corner aligns to the nearest grid point.
 |  | Down | Nudge the selection down. When the Snap to Grid option is not selected, all objects of the selection move one pixel down. When the Snap to Grid option is selected, each object of the selection moves down to where its upper-left corner aligns to the nearest grid point.


4.2.5 Making Objects Same Size

Making Objects Same Size

Make objects in the selection the same size as the reference object by first selecting the objects using Ctrl + Click, press the icon on the toolbar or click the menu item listed below.

Icon | Menu Item |  | Description
 | Make Same Size | Width | Make the selected objects have the same width as the reference object.
 |  | Height | Make the selected objects have the same height as the reference object.
 |  | Both | Make the selected objects have the same width and height as the reference object.


4.2.6 Arranging the Order of Objects

Arranging the Order of Objects

Icon | Menu Item |  | Description
 | Layer | Bring to Top | Bring the selection to the top.
 |  | Bring Forward | Bring the selected object one layer up.
 |  | Send Backward | Send the selected object one layer down.
 |  | Send to Bottom | Send the selection to the bottom.
 | Set Order |  | Start the order setting process for the objects of the active screen. For details, please see Section 4.2.6.1 Changing the Order of Objects.


4.2.6.1 Changing the Order of Objects

Changing the Order of Objects

The object order in the software is the order in which the selection cursor moves the input focus from one object to the next within a screen. Usually the order proceeds from left to right and from top to bottom in a screen. In the model with programmable keys such as 037-LSK, the Data Entry Object receives input focus in the specified order by clicking direction keys. In a touch panel, you can use the function button to select a data entry object with the order number previous or next to the current selection.

The object order is also the display order. If the screen contains overlapping objects, changing the order will change the display sequence of the objects. The objects that come later in the order are always displayed on top of any overlapping objects that precede them in the order.

■ Viewing order
To view the current order of all objects in the screen, click Set Order on the Edit menu.

■ Changing order
To change the order for all objects in the screen

  1. On the Edit menu, click Set Order
    A Number in the upper-left corner of each object shows its place in the current order
  2. Set the order by clicking each object in the order that you want the objects to be displayed. The ordering number starts from 1.
  3. Click the blank field on the screen to exit Set Order mode

The following is an example of the object ordering.

If the screen is running on 037-LSK, click the down or right direction key to move the selection in 2-4-6-8-10-12-14-16-18 -20-29 sequence. If the screen is running on the touch panel, click the function button [image] to move the selection in the same sequence. The text objects with 1,3,5…order number are not data entry object, so they won’t receive the selection and are not listed in the sequence.


4.3 Designing Object Appearance

Designing Object Appearance

There are four common components of object appearance. They are described in the following table:

Appearance Component

 Description
Shape The shape of an object can either be a graphical shape or a picture shape.
The following are examples of graphical shapes:

The following are examples of picture shapes:

The software provides many graphical shapes for you to choose from. For details, see Section 4.3.3 Selecting a Graphical Shape. The color or the pattern of a graphical shape is dependent on the state of the associated object. You need to specify the color or pattern settings of a graphical shape for each state of the associated object. For details, see Section 4.3.1 Selecting a Color and Section 4.3.2 Selecting a Pattern.

If you want an object to have a picture shape, check the item Picture Shape in the General Page of the object’s property dialog box. You can select a picture from the picture database or import a picture from a library file for the shape of an object. Any picture with the format of BMP, JPG, or WMF can be a picture shape. When a picture is used as a shape, the shape is state independent, i.e. the same look appears for all (object) states. If you want a picture shape to display the object state and/or show the touch action, you need to select a picture group as the shape. For details of picture groups, please see Section 2.2.3.2 Picture Groups.

To know how to set a shape, see Section 4.3.4 Setting up the Shape of an Object.
Inner Label An inner label is a label inside the associated object. It has the same number of states as the associated object. You need to specify the text settings and the picture settings of an inner label for each (object) state. Inner labels are language dependent. You need to specify the text of an inner label for each language as well. Note that not all objects can have inner labels and some objects can have just text or a picture as their inner label.

To know how to set an inner label, see Section 4.3.5 Label Settings.
VFTA (Visual Feedback for Touch Action) | A button or switch can give the operator one of the following visual feedbacks when it is touched:
Visual Feedback | Description
Sunken | Shifts the inner label to the lower-right corner by one or two pixels.
Back | Fills the area inside the border of the shape with the shape’s FG Color.
Outline | Outlines the object with the shape’s FG Color.
External Label An external label is a label outside of but still attached to the associated object. Unlike inner labels, external labels are state independent. They have the same look for all (object) states. However, external labels are language dependent. You need to set the text of an external label for each language. External labels are touch insensitive. Touching an external label will not activate the associated object. Note that not all objects can have an external label.

To know how to set an external label, see Section 4.3.8 External Label Settings.

The following table shows the common appearance components that each object type can have:

Object Types | Shape |  | Inner Label |  | VFTA | External Label
 | Graphical Shape | Picture Shape | Text | Picture
Bit Button, Toggle Switch, Screen Button, Word Button, Multi-state Switch, Radio Button Group | ● | ● | ● | ● | ● | ●
Function Button, Keypad Button, Page Selector | ● | ● | ● | ● | ● |
Step Button | ● |  | ● | ● | ● | ●
Bit Lamp, Multi-state Lamp | ● | ● | ● | ● |  | ●
Message Display | ● |  | ● |  |  | ●
Picture Display | ● |  |  | ● |  | ●
Day-of-week Display | ● |  | ● |  |  |
Meter | ● | ● |  |  |  |
Slide Switch, Numeric Entry, Numeric Display, Advanced Numeric Display, ASCII Character Entry, ASCII Character Display, Bar Graph | ● |  |  |  |  | ●
Time Display, Date Display, Pie Graph, Line Chart, Scatter Chart, Alarm Display, Historic Data Display, Historic Trend Graph, Single Record Line Chart, Operation Log Display, Recipe Selector, Recipe Table, Sub-link Table, Static Text, Table | ● |  |  |  |  |
Animated Graphic |  |  |  | ● |  |

The orders of drawing the common appearance components are shown in the following table with examples:

Step | Draw | Example 1 | Example 2 | Description
1 | Shape |  |  | Described in Section 4.3.4.
 |  | A picture group that supports the pressed look | A graphical shape named SW_0023
2 | Picture of Inner label |  | (None) | Described in Section 4.3.5.2.
3 | Text of inner label |  |  | Described in Section 4.3.5.1.
4 | VFTA | (None) | Back (FG Color is [image] ) |
5 | External label | (None) |  | Described in Section 4.3.8.
Final Appearance (When untouched) |  |  |  |
Final Appearance (When touched) |  |  |  |


4.3.1 Selecting Color

Selecting a Color

■ Color Icons
In a dialog box, a color icon is associated with a property that requires a color. It shows the color of the current selection and you can click it to bring up the Color palette. With the Color palette, you can select a color for the associated property. The following is a Color icon showing that the current selection is yellow.

■ Color Palette
With the Color palette, you can: 1) Select a color from a set of predefined colors, 2) Customize a set of user colors, and 3) Select a color from a set of user colors.
Usually, you click a Color icon to bring up the Color palette. The following shows the pages of the Color palette.

On page 1, the yellow block is outlined to indicate that it is the current selection. To select a color, click on that color block. To select a page, click on that page’s number tab. To cancel the operation click on any position other than the color blocks and the number tabs. Page 1, 2, and 3 contain the predefined colors. Page 4 contains the user colors. To customize user colors, click to [image] bring up the Define Custom Color dialog box as shown below.


4.3.2 Selecting a Pattern

Selecting a Pattern

■ Pattern Icons
In a dialog box, a Pattern icon is associated with a property that requires a pattern. It shows the pattern of the current selection and you can click it to bring up the Pattern palette. With the Pattern palette, you can select a pattern for the associated property. The following is a Pattern icon showing that the current selection is the “big dashes”.

■ Pattern Palette
With the Pattern palette, you can select a pattern from a set of predefined patterns. Usually, you click a Pattern icon to bring up the Pattern palette as shown below.

The “big dashes” block is outlined to indicate that it is the current selection. To select a pattern, click on that pattern block. To cancel the operation, click on any position other than the pattern blocks.


4.3.3 Selecting a Graphic Shape

Selecting a Graphical Shape

■ Shape Buttons
In an object’s property dialog box, you can click the shape button to bring up the Shape palette. With the Shape palette, you can select a graphical shape as the shape of the associated object.

■ Shape Palette
With the Shape palette, you can select a graphical shape for an object. Usually, you click [image] / [image] to bring up the Shape palette. The Shape palette contains several pages of graphical shapes. To select a graphical shape, click on that graphical shape. To select a page, click on that page’s number tab. To cancel the operation, click the close button [image] to close the Shape palette.

There are four sets of graphical shapes available for your applications. Each of them is suitable for certain kinds of objects. The Shape palette shows the set that is suitable for the type of object concerned. The four sets of shapes are shown below.

Graphical shapes for buttons and switches

Graphical shapes for data entry objects

Graphical shapes for data display objects

Graphical shapes for lamps


4.3.4 Setting up the Shape of an Object

Setting up the Shape of an Object

This section describes how to set the shape of an object.
In order to give the operator visual feedback for the touch action, most of the graphical shapes designed for touch operable objects can change their look when touched. The edge or border can look pressed or the outline can be shown with a different color.

The following examples are the shape settings of a bit button:

Example 1 | Example 2
The graphical shape SW_0031 is selected. | The graphical shape is a picture.

The following table describes each property that may be required for the settings of an object’s shape.

Property | Description
Transparent | Select this option if you want the object to have a transparent background.
Picture Shape | Check this option if you want the object to have a picture shape instead of a graphical shape. This option is available when the object can have a picture shape.
/ | Click this button to specify the shape of the object. When Picture Shape is checked, the Select/Import from Library dialog box will display. Otherwise, the Shape palette will display.
Touch Response / VFTA | The type of touch response / VFTA (Visual Feedback for Touch Action). There are 5 types : (None); Sunken; Back; Outlined (1); Outlined (5). If Outlined(1) or Outlined(5) is selected, it will outline the bounding rectangle of a button with 1 or 5 pixel(s) thickness and the Foreground Color of state 0 when the button is pressed.
/ | Click this button to view the selected touch response / VFTA.
Border Color | The border color of the graphical shape. Click the corresponding Color icon to specify the color.
Pattern | The pattern that is used to fill the area inside the border of the graphical shape for the current (object) state. To specify the pattern, click the corresponding Pattern icon and select a pattern from the Pattern palette. This item is available when the area inside the graphical shape needs be painted.
Foreground Color / FG Color | The color that is used to paint the black part of the pattern for the current (object) state. When the solid white pattern is selected, this color is not used. When a picture shape is used, this color is used for the outline mode with touch response.
 | Example 1 | Example 2
 | To specify the color, click the corresponding Color icon and select a color from the Color palette. This item is available when the area inside the graphical shape needs be painted.
Background Color / BG Color | The color that is used to paint the white part of the pattern for the current object state. To specify the color, click the corresponding Color icon and select a color from the Color palette. This item is available when the area inside the graphical shape needs be painted.


4.3.5 Label Settings

Label Settings

This section describes how to set up the inner label for the following types of objects:
    Bit Button, Toggle Switch, Screen Button, Function Button, Word Button, Keypad Button, and Bit Lamp.

The property sheets of the above mentioned objects provide you with the Label page to set up the inner label. If an object only has one state, the Label page has the Text sub-page and the Picture sub-page for you to set up the text and the picture of the inner label respectively. If an object has two states, the Label page has the following four sub-pages:

Sub-page | For Setting
OFF Text | Text of state 0 (Off)
OFF Picture | Picture of state 0 (Off)
ON Text | Text of state 1 (On)
ON Picture | Picture of state 1 (On)

You can use the Label page to set the inner label of an object that can have at most two states.
The following is an example of the Label page.

The following table describes only the properties in the Label page that are common to all its sub-pages. The properties of each of its sub-pages are described in the specific section about each sub-page.

Property | Description
Language | The language that you are setting the text for.
Border Spacing | The margin (in pixels) to the border of the object’s shape for both the text body and picture.
Use the text of the first language for all other languages | Check this item so the inner label always shows the text of the first language regardless of what the current language is.
Text tab | Click this tab to bring up the Text sub-page.
Picture tab | Click this tab to bring up the Picture sub-page.
OFF Text tab | Click this tab to bring up the OFF Text sub-page.
ON Text tab | Click this tab to bring up the ON Text sub-page.
OFF Picture tab | Click this tab to bring up the OFF Picture sub-page.
ON Picture tab | Click this tab to bring up the ON Picture sub-page.


4.3.5.1 Text Sub-page Settings

Text Sub-page Settings

You can use the Text sub-page, OFF Text sub-page, and ON Text sub-page to set up the text of the inner label for each of the corresponding states, as well as the current language. The language being set is specified by the Language item in the Label page.

The following are examples of the Text pages:

Text sub-page | ON Text sub-page

The following table describes each property in the Text sub-page, OFF Text sub-page, and ON Text sub-page.

Property | Description
Copy from Note | Click this button to replace the current text by the text of Note in the General page.
Copy to ON State | Click this button to use the current text to replace the text of ON state.
Copy to OFF State | Click this button to use the current text to replace the text of OFF state.
Font | The font of the text. You can use the drop-down list to select a font. Click [image] to bring up the Font Templates dialog box and select a font for the text. You can change the font templates before selecting a font in that dialog box.
Color | The color of the text. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Blink | Check this item so the text will blink. You have blink effects to choose from. Color switching changes the color of the text from its original color to the color of the background. Text On/Off displays and hides the text.
Transparent | Check this item to make the background of the characters transparent.
BG Color | The background color of the text.
Alignment | The alignment of the text.
Character Spacing | The distance (in pixels) between two adjacent characters of the text.
Line Spacing | The distance (in pixels) between two adjacent lines of the text.
Shape Background Color | The BG color of the object’s shape for the current state.
Position | The position of the text body.
Copy Attributes to ON State | Click this button to use the current attributes to replace the text of ON state.
Copy Attributes to OFF State | Click this button to use the current attributes to replace the text of OFF state.


4.3.5.2 Picture Sub-page Settings

Picture Sub-page Settings

You can use the Picture sub-page, OFF Picture sub-page, and ON Picture sub-page to set up the picture of the inner label for the corresponding states.
The following are examples of the Picture pages:

Picture sub-page | ON Picture sub-page

The following table describes each property in the Picture sub-page, OFF Picture sub-page, and ON Picture sub-page.
Property | Description
Name | The name of the picture. You can use the drop-down list to select a picture from the picture database. Click [image] to select a picture file. After the selection, the picture of the selected file is imported and saved in the picture database. Click [image] to bring up the Select/Import from Library dialog box. Select a picture from a picture library file. After the selection, the selected picture is imported and saved in the picture database.
Copy to OFF State | Click this button to use the current picture to replace the picture of OFF state.
Copy to ON State | Click this button to use the current picture to replace the picture of ON state.
Transparent | Check this item to make parts of the picture transparent. The transparent parts are pixels whose colors are the same as the specified transparent color. This item is available when the picture is not a black and white picture.
T. Color | The transparent color.
FG Color | The color to paint the black part of a black and white picture. This item is available when the picture is a black and white picture.
BG Color | The color to paint the white part of a black and white picture. This item is available when the picture is a black and white picture.
Flip/Rotate | Specifies the method to flip or rotate the picture before drawing it. There are 8 options:
 | Method | Description
 | 0° | Do nothing
 | 90° | Rotates the picture clockwise by 90 degrees
 | 180° | Rotates the picture clockwise by 180 degrees
 | 270° | Rotates the picture clockwise by 270 degrees
 | X | Flips the picture over the X axis
 | 90° & X | Rotates the picture clockwise by 90 degree and flips it over the X axis
 | Y | Flips the picture over Y axis
 | 90° & Y | Rotates the picture clockwise by 90 degree and flips it over the Y axis
Tone | Check this item to tone the picture.
Toning Color | The color to tone the picture.
Fit to Object | Check this item so the picture can change its size automatically to fit inside the border of the object’s shape.
Position | The position of the picture within the object.
Shape BG Color | The BG color of the object’s shape for the current state.


4.3.6 Text Settings

Text Settings

This section describes how to set up the text of the inner label for the following types of objects:

Multi-state Switch, Radio Button Group, Step Button, Page Selector, Multi-state Lamp, Message Display, and Day-of-week Display.

The following table describes each property in the Text page.

Property |  | Description
Language |  | The language that you are setting the text to.
Border Spacing |  | The margin (in pixels) of the border for the text body to the object’s shape.
Use the text of the first language for all other languages |  | Check this item so the text object always shows the text of the first language regardless of what the current language is.
<State list> |  | Lists all states and the corresponding texts. To view and modify the state attribute and its text, click the row of that state.
Move Up |  | Click this button to move the current text (and picture) up the list, and thus the associated state number of the current text (and picture) is decreased by one.
Move Down |  | Click this button to move the current text (and picture) down the list, and thus the associated state number of the current text (and picture) is increased by one.
Copy to all states… |  | Click this button to use the text of state 0 to replace the text of all other states.
Copy from state 0… |  | Click this button to use the text of state 0 to replace the current text.
Font |  | The font of the current text. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current text. You can change the font templates before selecting a font in that dialog box.
Color |  | The color of the text. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Transparent |  | Check this item to make the background of the text transparent.
BG Color |  | Specifies the background color of the text.
 |  | The alignment of the text.
Position |  | The position of the text body.
Blink |  | Select blink effects to make the text blink. Color switching changes the color of the text from its original color to the color of the background. Text On/Off displays and hides the text.
Shape BG Color |  | The BG color of the object’s shape for the current state.
Text | <Edit Box> / <Combo Box> | The text for the selected state in current language.
 | / | Click [image] to view and edit the text for the selected language in this edit box, or click [image] to select a text from dropdown text table that lists all the texts from Text Database. You can change the text database before selecting a text.
Line Spacing |  | The distance (in pixels) between two adjacent lines of the text.
Character Spacing |  | The distance (in pixels) between two adjacent characters of the text.


4.3.7 Picture Settings

Picture Settings

This section describes how to define the picture settings for the following types of objects:

Multi-state Switch, Radio Button Group, Step Button, Page Selector, Multi-state Lamp, Picture Display, and Animated Graphic.

The property sheets of the above mentioned objects provide you the Picture page to define the picture settings of the objects. The following is an example of the Picture page.

The following table describes each property in the Picture page.
Property | Description
Border Spacing | The distance (in pixels) between picture border and shape border.
Picture | The name of the current picture. You can use the drop-down list to select a picture from the picture database. Click [image] to select a picture from a file as the current picture. After the selection, the software imports the picture of the selected file and saves the picture in the picture database. Click [image] to bring up the Select/Import from Library dialog box. Select a picture from a picture library file as the current picture. After the selection, the software imports the selected picture from the selected library and saves the picture in the picture database.
Transparent | Check this item to make parts of the picture transparent. The transparent parts are pixels whose colors are the same as the specified transparent color. This item is available when the picture is not a black and white picture.
Transparent Color | The transparent color.
FG Color | The color to paint the black part of a black and white picture. This item is available when the picture is a black and white picture.
BG Color | The color to paint the white part of a black and white picture. This item is available when the picture is a black and white picture.
Flip/Rotate | Specifies the method to flip or rotate the picture before drawing it. There are 8 options:
 | Method | Description
 | 0° | No rotation
 | 90° | Rotates the picture clockwise by 90 degrees
 | 180° | Rotates the picture clockwise by 180 degrees
 | 270° | Rotates the picture clockwise by 270 degrees
 | X | Flips the picture over the X axis
 | 90° & X | Rotates the picture clockwise by 90 degree and flips it over the X axis
 | Y | Flips the picture over Y axis
 | 90° & Y | Rotates the picture clockwise by 90 degree and flips it over the Y axis
Tone | Check this item to tone the current picture.
Toning Color | The color to tone the current picture.
Fit to Object | heck this item so the current picture can change its size automatically to fit inside the border of the object’s shape.
Position | The position of the current picture within the object.
Shape BG Color | The BG color of the object’s shape for the current state.


4.3.8 External Label Settings

External Label Settings

This section describes how to set up the external label for the following types of objects:

Bit Button, Toggle Switch, Screen Button, Slide Switch, Word Button, Multi-state Switch, Radio Button Group, Step Button, Numeric Entry, Numeric Display, Advanced Numeric Display, ASCII String Entry, ASCII String Display, Bit Lamp, Multi-state Lamp, Message Display, Picture Display, and Bar Graph.

You can use the External Label page of an object's property sheet to set up the external label of that object. The following is an example of the External Label page.

The following table describes each property in the External Label page.

Property |  | Description
Plate Style |  | Specifies the plate type of the external label. There are four plate types as shown below:
 |  | Plate Type | Example
 |  | Transparent |
 |  | Flat |
 |  | Outlined |
 |  | Raised |
Position |  | Specifies the position of the external label relative to the object. There are four positions as shown below:
 |  | Position | Example
 |  | Top |
 |  | Left |
 |  | Right |
 |  | Bottom |
Color | Border | The border color of the plate. To specify the color, click the corresponding Color icon and select a color from the Color palette.
 | Plate | The color of the plate. To specify the color, click the corresponding Color icon and select a color from the Color palette.
 | Text | The color of the text. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Language |  | The language that you are setting the text to.
Font | <Drop-down List> | The font of the text for the current language.
 |  | Click this button to bring up the Font Templates dialog box and select a font for the text. You can change the font templates before selecting a font in that dialog box.
Text | <Edit Box> / <Combo Box> | The text for the current language.
 | / | Click [image] to view and edit the text for the selected language in this edit box, or click [image] to select a text from dropdown text table that lists all the texts from Text Database. You can change the text database before selecting a text.
 |  | The alignment of the text.
Spacing | Border | The distance (in pixels) between the plate border and the text body.
 | Line | The distance (in pixels) between two adjacent lines of the text.
 | Character | The distance (in pixels) between two adjacent characters of the text.


4.4.1 States of Objects

States of Objects

When an object has multiple states, its appearance automatically has the same number of corresponding states. You need to specify the settings of the shape and the inner label of an object for each state. Usually the state of an object is determined by the value of the variable it monitors. An object that monitors a bit has state 0 (off) and state 1 (on). An object that monitors a word or a double-word can have up to 256 states.


4.4.1.1 State Types

State Types

You need to specify the state type of an object so the object knows how to determine its state. The following table describes each of the four state types.

State Type | For | How to decide the state
Bit | Bit Variable | The state is the value of the variable. Example: 1) The state of $U1.3 is 0 when $U1.3 is 0 (off). 2) The state of WX3.f is 1 when WX3.f is 1 (on).
Value | Word Variable, Double-word Variable | The state is the value of the variable. The valid states are from 0 to 255. Example: 1) The state of $U200 is 123 when $U200 is 123. 2) The state of WX20 is 0 when WX20 is 0. 3) The state of $N300 is invalid when $N300 is 999.
LSB | Word Variable, Double-word Variable | The state is the number of the least significant bit of the variable’s value that is 1 (on). For a word variable, the valid state are from 0 to 16 and state 16 means all the bits are 0. For a double-word variable, the valid state are from 0 to 32 and state 32 means all the bits are 0. Example: 1) The state of $U200 is 1 when $U200 is 246H. 2) The state of WX20 is 19 when WX20 is 80000H. 3) The state of $N300 is 16 when $N300 is 0.
Custom | Word Variable, Double-word Variable | When you configure an object with the Custom state type, you assign each valid state a unique number which is called a state value. The assigned state values will be used to determine the state of the object. If the variable’s value is equal to one of the state values, the corresponding state of the state value is the state of the object. If the value is equal to none of the state values, the state is invalid. Example: An object monitors $U100 and its state type is Custom. There are three valid states and you assigned 300, 200, and 100 to state 0, 1, and 2 respectively. The state is 2 when $U100 is 100 and the state is 0 when $U100 is 300.


4.4.1.2 Setting the Custom States of an Object

Setting the Custom States of an Object

In the General page of the object’s property dialog box, with the Custom state type selected, click the [image] button to bring up the Custom State Value dialog box as the example shown below.

You can assign a positive integer for each state in the dialog box. To edit the value, click the row of that state under the value column.

You can use the Move Up button and the Move Down button to adjust the position of state values. To move up or move down the state values, you need to make a selection first. To select a state, click the header column. To select multiple rows, click the header column and use Ctrl+Click to add a row to the selection.


4.4.2 Operation Options of Objects

Operation Options of Objects

The following table explains operation options which can be added to an object to make it more informative, secure, and useful.

Terminology | Definition
Enabling and disabling the touch operation | The touch operation can be enabled and disabled either by a specified bit or by the current user level. You can choose to display the touch operation disabled sign on the button when the touch operation is disabled. If the touch operation is to be enabled by a bit, you need to specify that bit and the bit value that enables the touch operation. If the touch operation is to be enabled by the current user level, you need to specify the lowest user level that is required to enable the touch operation. Select and set this feature in the Advanced page of the Bit Button dialog box.
Requiring the minimum hold time | The touch operation will not be activated until the button is pressed and held down for the specified Minimum Hold Time. Select and set this feature in the Advanced page of the Bit Button dialog box.
Requiring the operator confirmation | A confirmation dialog box is displayed when the button is activated for setting a bit. The button will proceed to set that bit if the operator selects “Yes” to confirm the operation. The touch operation will be cancelled if the operator selects “No” to reject the operation or if the operator does not respond within the Maximum Waiting Time. This feature is available for the following operations: Set ON, Set OFF, Set ON Pulse, Set OFF Pulse, and Invert. Select and set this feature in the Advanced page of the Bit Button dialog box.
Notifying a bit of the touch operation | The notification is performed after the touch operation is done. You need to specify the bit to be notified and the bit value to be used for the notification. Select and set this feature in the Advanced page of the Bit Button dialog box.
Logging the touch operations | The time and date when the touch operation occurs, the new value that is written to the bit, and the predefined text can be recorded in the operation log with this feature. Select and set this feature in the Advanced page of the Bit Button dialog box.
Change User Level | The current user level can be changed when one of the following objects is activated to perform its function. Bit Button, Toggle Switch, Word Button, Function Button, Screen Button, Numeric Entry, and Character Entry. Select and set this feature in the Advanced page of the above objects' dialog box.
Designated Keypad | The following objects can use the independent keypad for the entry of numbers or characters instead of using the custom keypad or the built-in keypad. Numeric Entry, Advanced Numeric Display, Character Entry and Word Button. Select and set this feature in the Advanced page of the above objects' dialog box.
Showing and hiding an object | The visibility of an object can be controlled either by a specified bit or by the current user level, i.e. an object can be shown and hidden dynamically by any of these two methods. If visibility is to be controlled by a bit, you need to specify that bit and the bit value that shows the object. If visibility is to be controlled by the current user level, you need to specify the lowest user level that is required to show the visibility. Note 1: When an object is invisible, the touch operation is automatically disabled. Note 2: It is allowed to simply set an object as invisible. The touch operation is still enabled with this setting. Select and set this feature on the Visibility page of the object setting dialog box.


4.4.3 Address Settings

Address Settings

This section describes the terms, rules, and methods to address data.


4.4.3.1 Terminologies for Data Accessing

Terminologies for Data Accessing

The following table explains variables, addresses and tags.

Terminology | Definition
Internal memory | The memory space in the target panel that can be accessed by the panel application. For example, the user memory $U, the non-volatile memory $N, the system memory $S, and the recipe memory $R are all parts of the internal memory.
Internal variable | An address or a tag referring to an address of a space in the internal memory.
Internal bit variable | An internal variable that refers to a bit in the internal memory. N ote: "Internal variable" instead of "internal bit variable" is used when referring to a bit if there is no ambiguity.
Internal word variable | An internal variable that refers to a word in the internal memory. The variables can also be used to refer to a double-word, a block of bytes (byte array), a block of words (word array), and a block of double-words (double-word array). Note: "Internal variable" instead of "internal bit variable" is used when referring to a bit if there is no ambiguity.
External memory | The memory spaces or the collections of addressable devices in the controllers that can be accessed by the panel application through communication links.
External variable | An address or a tag referring to an address of a space in the external memory.
External bit variable | An external variable that refers to a bit in the external memory. Note: "External variable" instead of "external bit variable" is used when referring to a bit if there is no ambiguity.
External word variable | An external variable that refers to a word in the external memory. The variables can also be used to refer to a double-word, a block of bytes (byte array), a block of words (word array), and a block of double-words (double-word array) if the access unit of the associated addresses is word. If the access unit is double-word, you can only use the variable to refer to a double-word or a block of memory space with a length of a multiple of 4 (bytes). Note: "External variable" instead of "external bit variable" is used when referring to a bit if there is no ambiguity.
External byte variable | An external variable that refers to a byte in the external memory. Note: You can only use the variable if the access unit of the associated addresses is byte.
Variable | An internal variable or an external variable.
Bit variable | An internal bit variable or an external bit variable.
Word variable | An internal word variable or an external word variable.
Byte variable | An external byte variable.
Double-word variable | An internal variable or an external variable that refers to a double-word.
Byte array variable | An internal variable or an external variable that refers to a byte array.
Word array variable | An internal variable or an external variable that refers to a word array.
Double-word array variable | An internal variable or an external variable that refers to a double-word array.
Tag | A name that stands for an address of the internal memory or the external memory. It also specifies the data type and scan rate of the data in the memory location it refers to.

Note: Byte access is supported for the following PLCs:

1) Simatic S7-200 (PPI; 1-to-1)

2) Simatic S7-300 (MPI Port)

3) Simatic S7-300 Ethernet Module (CP343)

4) Simatic S7 (Ethernet)

5) S7-200 SMART (Ethernet)

6) VIPA 100V/200V MPI Port


4.4.3.2 Address Input Keypad

Address Input Keypad

With the address input keypad, you can enter an address easily. Usually, you click [image] to bring up the address input keypad as shown below.

Item | Property | Description
1 | Link | Click the down arrow and select a link from the drop down list.
 | Sub-Link | Click the down arrow and select a sub-link from the drop down list. Available when the sub-link is used.
 | Type | Select the address type. Word for word devices. Bit or Bit of Word for bit devices.
2 | PLC Address | Click the down arrow and select a value between 0 and 255 or an indirect address between [$I0] and [$I15] as the PLC Address. If an indirect address is used, the plc address can be dynamically changed.
3 | Location Type | Click the down arrow and select an item from the drop down list as the location type.
4 | Address | Specify the address.
5 | Input keypad | Buttons | Description
 |  |  | Clears all the texts in the address field.
 |  |  | Deletes all selected texts, if any, or the text character to the left of the cursor in the address field.
 |  |  | Cancels the address input and escapes the dialog.
 |  |  | Checks and enters the address if valid.
 |  | Others | Click to specify the address. Only available when the Address field holds the input focus.
 |  | Click the help button to see how to specify word or bit devices and their addresses for the specified link in the following pop-up dialog.


4.4.3.3 Selecting Tags

Selecting Tags

To select a tag, you can click [image] to bring up the Select Tag dialog box as shown below.

The following table describes each property in the Select Tag dialog box.

Property |  | Description
Link |  | Click the down arrow and select a link from the drop down list.
Tag Name |  | Specifies the selected tag.
New Tag >> |  | Click the button to bring up New Tag Definition dialog box and create a new tag in it.
<< Close |  | Click the button to close New Tag Definition dialog box.
Base Tag/Address |  | Specifies the base tag and address of the selected tag.
Bit Number |  | Specifies the bit number of the selected tag.
List Options... |  | Click the button to bring up the following Tag List Options dialog box.
 |  | Options | Description
 |  | All tags | Select this option to list all the predefined bit tags and word tags.
 |  | Selectable tags | Select this option to show the selectable tags. When the specified address type is word, all the word tags will be listed. When the specified address type is bit, all the bit tags will be listed.
 |  | Tags with the specified data type | Select this option to show the tags with the same data type as the specified data type.
 |  | Show data type | Check this option if you want to show the tag follow by the data type.
Tag Tree |  | Lists the predefined tags for the selected link. To use a tag, you can double click the selected tag. Note: 1) All the listed tags and tag groups are created in the Tags Editor or by New Tag Definition dialog box. To create a tag, please see Section 2.3 Working with Tags. 2) Selectable tags are in bold.
New Tag Definition | Group | Click the down arrow and select a tag group from the drop down list. The selection "Default" indicates the current tag group.
 | Tag Name | Specifies the name for the tag.
 | Alias For | Click [image] to bring up the Select Tag dialog box and select the base tag for the new tag.
 | Data Type | Click [image] to bring up the Select Data Type dialog box and select the data type for the tag.
 | Address | Click [image] to bring up the Address Input Keypad and specify the desired address.
 | Scan Rate | Selects the scan rate for the tag from the dropdown list.
 | Description | Type a description for a tag.
 | Add | Click it to add a new tag.
 | Clear | Click it to clear the definition of the new tag.
Select |  | Click it to select the tag.
Cancel |  | Click it to close the dialog box and discard all changes.


4.4.4 Scale Settings

Scale Settings

This section describes how to set up the scale for the following types of objects:

Scale, Slide Switch, Bar Graph, Circular Bar Graph, and Meter.

The following are examples of scales used in different kinds of objects.

You can use the Scale page in an object's property sheet to set up the scale of that object. The following is an example of the Scale page of the bar Graph.

The following table describes each property in the Scale page.

Property |  | Description
Display |  | Check this item if you want the object to have a scale.
Position |  | Specifies the position of the scale in the object. The position is relative to the part of the object that displays the monitored variable. There are six positions shown below:
 |  | Position | Example | Position | Example
 |  | Top |  | Bottom |
 |  | Left |  | Right |
 |  | Inner |  | Outer |
Color |  | The color of the scale. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Number of Major Ticks |  | The number of major ticks. The minimum you can specify is two.
Number of Sub Divisions |  | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Axis |  | Check this item if you want the scale to have an axis.
Marks | Marks | Check this option if you want the scale to have marks.
 | Font | The font of the marks. You can select a fixed font or a font from the font templates.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Minimum | The minimum of the marks. It is a 32-bit integer.
 | Maximum | The maximum of the marks. It is a 32-bit integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum = 5000, the Total Digits = 4, and the Fractional Digits = 2, the mark for the Maximum will be 50.00.


4.4.5 Advanced Settings

Advanced Settings

This section describes how to define the advanced settings for the following types of objects:

Bit Button, Toggle Switch, Screen Button, Function Button, Slide Switch, Word Button, Multi-state Switch, Radio Button Group, Step Button, Advanced Numeric Display, ASCII String Entry, and Recipe Selector.

You can use the Advanced page in an object's property sheet to define the advanced settings of that object.

The following are examples of the Advanced page for different objects:

For an advanced numeric display. | For a bit button.

The following table describes each property in the Advanced page.

Property |  | Description
Touch Operation Control
 | Enabled by Bit | Check this option so the touch operation of the numeric entry will be enabled and disabled by the specified bit or a word's bit.
 | Control Bit | Specify the bit that enables and disables the touch operation. Click [image] to enter a bit address. Click [image] to select a bit tag.
 | Enabling State | Specify the state (On or Off) that enables the touch operation.
 | Enabled by User Level | Check this item so the touch operation of the numeric entry will be enabled and disabled by the current user level.
 | Lowest Enabling User Level | Specify the lowest user level that is required to enable the touch operation.
 | Show Disabled Sign | Check this option so the touch operation disabled sign will be shown on the numeric entry when the touch operation is disabled.
 | Note | You can configure the touch operation of the following objects to be enabled only when both the specified bit and user level meet the specified conditions: Bit Button, Toggle Switch, Screen Button, Function Button, Slide Switch, Word Button, Multistate Switch, Radio Button Group, Step Button, Numeric Entry, Advanced Numeric Display, Character Entry, Recipe Selector, and Schedule Setting Table.
Timeout | Timeout | Check this option so the data entry will be cancelled if the numeric keypad does not receive any input within the specified time.
 | Timeout Time | Specify the maximum time that the numeric keypad will wait to receive a new input. If there is no input within the specified time, the numeric keypad will be closed and the data entry will be cancelled.
Notification | Notification | Check this option so the numeric entry will notify the specified bit after it finishes outputting the entered value to the destination variable.
 | Signal | Select one of the following signals for the notification:
 |  | Signal | Description
 |  | Level | Set the specified bit to the specified state.
 |  | Pulse | Send a positive pulse to the specified bit.
 | Bit | Specify the bit that receives the notification.
 | State | Specify the state (On or Off) that is used for the notification.
Operator Confirmation | Operator Confirmation | Check this option if you want the operator to confirm what he/she enters for the numeric entry. The Confirmation box will be displayed when a value is entered for numeric entry. If the operator selects “Yes” in the Confirmation box, the numeric entry will write the entered value to the specified variable. If the operator selects “No” or if the operator does not respond within the specified time period (Maximum Waiting Time), the numeric entry will cancel the data entry operation.
 | Maximum Waiting Time | Specify the maximum time that the numeric entry will wait for the operator’s confirmation. The data entry will be cancelled if the operator does not respond within this time.
Change User level | Change User level | Check this option to change the current user level when the object is activated to perform its function.
 | New User Level | Specify the new user level.
Operation Logging | Operation Logging | Check this option so the following three items will be recorded in the operation log when the numeric entry outputs the entered value. There are three recorded items: 1) The time when the operation is performed 2) The entered value 3) The predefined operation message
 | Message | Enter the operation message of the first language here.
 |  | Click this button to bring up the Operation Message dialog box that you can edit the operation message for all the languages.
Designated Keypad | Designated Keypad | Check this option if you want the object to use the independent keypad instead of the custom keypad or the built-in keypad.
 | Screen | Specify the window screen that is designated as the keypad.
Minimum Hold Time |  | Available when the object is a button or switch. The touch operation of the button will not be activated until the button is pressed and held down for the specified time period (Minimum Hold Time).


4.4.6 Visibility Settings

Visibility Settings

In the Visibility page of an object's property sheet, you can define how to show and hide the object. You can also modify the position and size of an object with the Visibility page.
The following are examples of the Visibility page:

The option “Controlled by Bit” is checked | The option “Controlled by User Level” is checked

The following table describes each property in the Visibility page.

Property |  | Description
Invisible |  | Check this option so the object will always be invisible. Note: The touch operation is still enabled with this setting.
Controlled by Bit | Controlled by Bit | Check this option so the object will be shown and hidden by the specified bit or a word's bit.
 | Control Bit | Specifies the bit that will show or hide the object. Click [image] to enter the bit address. Click [image] to enter the bit tag.
 | Visible State | Specifies the state (On or Off) that makes the object visible.
Controlled by User Level | Controlled by User Level | Check this option so the object will be shown and hidden by the current user level.
 | Lowest Visible User Level | Specifies the lowest user level that is required to show the object.
Dimension | Left | Specifies the X coordinate of the object’s upper-left corner on the screen.
 | Top | Specifies the Y coordinate of the object’s upper-left corner on the screen.
 | Width | Specifies the width (in pixels) of the object.
 | Height | Specifies the height (in pixels) of the object.
 |  | Click this button to redraw the object with the new settings.


5.1 Changing Bit State Using Bit Buttons

Changing Bit State Using Bit Buttons

You can touch a bit button to change the state of the specified bit.

You can complete all the settings of a bit button in the Bit Button property sheet. This sheet contains the following seven pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.1.4.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ On Macro
Described in Section 15.2.6.

■ OFF Macro
Described in Section 15.2.6.


5.1.1 Basic Operations

Bit Button - Basic Operations

A bit button can be configured to perform the following operations:

Operation | Description
Set ON | Sets the specified bit to On when the button is pressed.
Set OFF | Sets the specified bit to Off when the button is pressed.
Set ON Pulse | Sets the specified bit to On when the button is pressed and then sets the bit to Off to generate a positive pulse with the specified pulse width.
Set OFF Pulse | Sets the specified bit to Off when the button is pressed and then sets the bit to On to generate a negative pulse with the specified pulse width.
Momentary ON | Sets the specified bit to On when the button is pressed and sets the bit to Off when the button is released. Note: Pressing and releasing a momentary button quickly might generate a pulse that is too short to be detected by the controller. To avoid this problem, specify a sufficient minimum pulse width for the operation; so the setting of the bit to Off is delayed if necessary to generate a pulse that is always detectable.
Momentary OFF | Sets the specified bit to Off when the button is pressed and sets the bit to On when the button is released. Note: See the note above.
Invert | Inverts the state of the specified bit when the button is pressed.

Note: You can configure a bit button to operate a bit of a word or a bit of a double-word. In these instances, you need to specify the number of the bit to be operated.


5.1.2 Operation Options

Bit Button - Operation Options

The following operation options can be selected for a bit button to make it more informative, secure, and useful. You need to select and set those options in the Bit Button property sheet.

Option | Description
Monitor | The bit button can be configured to monitor a bit. When this option is selected, the state of the button is controlled by the monitored bit. With the monitored bit, you can control the color and label of the bit button.
ON Macro, OFF Macro | An ON Macro is a macro that is run when the associated button is activated to set a bit to 1 (On). An OFF Macro, on the contrary, is a macro that is run when the associated button is activated to set a bit to 0 (Off). The following table shows the macros that each bit button operation can support.
 | Operation | ON Macro | OFF Macro
 | Set ON | ● |
 | Set OFF |  | ●
 | Set ON Pulse | ● |
 | Set OFF Pulse |  | ●
 | Momentary ON | ● | ●
 | Momentary OFF | ● | ●
 | Invert |  |
 | Select these options in the General Page. Specify and edit the ON macro in the ON Macro page. Specify and edit the OFF macro in the OFF Macro page. Note: When an ON macro or OFF macro is specified, the associated bit setting operation is not performed until the macro is completely executed. Therefore, it is important to keep ON and OFF macros as short as possible so as not to delay the bit setting operation.
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation of the button will not be activated until the button is pressed and held down for the specified time period (Minimum Hold Time). Set this option in the Advanced page.
Operator Confirmation | This option is available for the following bit button operations: Set ON, Set OFF, Set ON Pulse, Set OFF Pulse, and Invert. The Confirmation box will display when the button is touched. If the operator selects “Yes” in the Confirmation box, the button will proceed to perform its operation. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the button will stop performing its operation. Select and set this option in the Advanced page.
Notification | The button can be configured to notify a bit upon completion of the bit setting operation when the button is pressed. Select and set this option in the Advanced page.
Operation Logging | Each touch operation of the button can be recorded in the operation log. Select and set this option in the Advanced page.
Change User Level | The button can be configured to change the current user level when it is activated to perform the function. Select and set this option in the Advanced page.
Invisible | The button can be invisible and still touch operable. Select this option in the Visibility page.
Visibility Control | The button can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.1.3 Settings

Bit Button - Settings

You can complete all the settings of a bit button in the Bit Button property sheet. This sheet contains the following seven pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.1.4.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ On Macro
Described in Section 15.2.6.

■ OFF Macro
Described in Section 15.2.6.


5.1.4 General Settings

Bit Button - General Settings

This section describes how to define the general settings for the bit buttons in the General page of the Bit Button property sheet. The following is an example of the General page.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the bit buttons is BBnnnn.
Note |  | You can type a note for the bit button.
Transparent |  | Select this option if you want the object to have a transparent background.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Picture Shape, [image] , Touch Response, [image] , Border Color, Pattern, Foreground Color, Background Color.
External Label |  | Check this option if you want the bit button to have an external label. Set up the external label in the External Label page.
 |  | Click this button to change the object state to 1 (On) so you can view and set the object appearance for state 1 (On).
 |  | Click this button to change the object state to 0 (Off) so you can view and set the object appearance for state 0 (Off).
Operation |  | Select the operation for the bit button. There are 7 choices: Set ON, Set OFF, Set ON Pulse, Set OFF Pulse, Momentary ON, Momentary OFF, and Invert. For details, see Section 5.1.1 Basic Operations.
Activation |  | Select to activate the bit button when it is released. This option is available only for Set ON, Set OFF, and Invert operations.
Hold Down To Repeat Operation |  | Check the option to repeat operation when holding down the object.
Address Type |  | Specifies the type of variable in the Write Address field. The bit buttons support the following three variable types:
 |  | Variable Type | Description
 |  | Bit | The variable is a bit variable.
 |  | Word | The variable is a word variable. You need to specify which bit of the word variable is to be operated. Specify the bit number (0~15) in the Bit Number field.
 |  | Double-word | The variable is a double-word variable. You need to specify which bit of the double-word variable is to be operated. Specify the bit number (0~31) in the Bit Number field.
 |  | Byte | The variable is a byte variable. You need to specify which bit of the byte variable is to be operated. Specify the bit number (0~7) in the Bit Number field.
Write Address | Write Address | Specifies the bit variable to be operated when the Address Type is Bit. Specifies the word variable that contains the bit to be operated when the Address Type is Word. Specifies the double-word variable that contains the bit to be operated when the Address Type is Double-word. Specifies the byte variable that contains the bit to be operated when the Address Type is Byte.
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the Write Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select the desired tag for the Write Address field.
 | Bit Number | Specifies which bit of the variable specified in the Write Address field is to be operated. The field is available only when the address type is Word and Double Word.
Minimum Pulse Width |  | The minimum width of the pulse that the Momentary ON and Momentary OFF operations must generate. There are six choices available: 0.05, 0.1, 0.2, 0.3, 0.4, and 0.5 second.
Pulse Width |  | The width of the pulse generated by the Set ON Pulse and Set OFF Pulse operations. There are six choices available: 0.05, 0.1, 0.2, 0.3, 0.4, and 0.5 second.
Monitor |  | Check this option if you want the bit button to monitor a specified bit and display its state.
Monitor Address identical to Write Address |  | Specifies that the Monitor Address is identical to the Write Address. With this item checked, you don’t need to specify the Monitor Address again. This item is available when the Monitor option is checked.
Monitor Address | Monitor Address | Specifies the bit variable to be monitored when the Address Type is Bit. Specifies the word variable that contains the bit to be monitored when the Address Type is Word. Specifies the double-word variable that contains the bit to be monitored when the Address Type is Double-word.
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the Monitor Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select the desired tag for the Monitor Address field.
 | Monitored Bit Number | Specifies which bit of the variable specified in the Monitor Address field is to be operated. The field is available only when the address type is Word and Double Word.
ON Macro |  | Check this option if you want the button to have an ON macro. Specify and edit the ON macro in the ON Macro page. This option is available when the bit button operation is Set ON, Set ON Pulse, Momentary ON, or Momentary OFF.
OFF Macro |  | Check this option if you want the button to have an OFF macro. Specify and edit the OFF macro in the OFF Macro page. This option is available when the bit button operation is Set OFF, Set OFF Pulse, Momentary ON, or Momentary OFF.
Key |  | The hard key that is used to operate the bit button. This item is available only when the target panel has hard keys.
Touch Operable |  | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.


5.2 Toggling Bit State Using Toggle Switches

Toggling Bit State Using Toggle Switches

You can touch a toggle switch to toggle the state of the specified bit.

The difference between a toggle switch and a bit button performing the Invert operation is described below:

  1. A toggle switch performs the toggle operation by writing the inverse state of the monitored bit to the destination bit.
  2. A bit button performs the Invert operation by inverting the destination bit directly, regardless of the monitored bit.

You can complete all the settings of a toggle switch in the Toggle Switch property sheet. This sheet contains the following seven pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.2.2.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ On Macro
Described in Section 15.2.6.

■ OFF Macro
Described in Section 15.2.6.


5.2.1 Settings

Toggle Switch - Settings

You can complete all the settings of a toggle switch in the Toggle Switch property sheet. This sheet contains the following seven pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.2.2.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ On Macro
Described in Section 15.2.6.

■ OFF Macro
Described in Section 15.2.6.


5.2.2 General Settings

Toggle Switch - General Settings

This section describes how to define the general settings for a toggle switch.

The above is an example of the General page of the Toggle Switch property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for toggle switches is TSnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Transparent, Picture Shape, [image] , Touch Response, [image] , Border Color, Pattern, Foreground Color, Background Color.
External Label |  | Check this option if you want the bit button to have an external label. Set up the external label in the External Label page.
 |  | Click this button to change the object state to 1 (On) so you can view and set the object appearance for state 1 (On).
 |  | Click this button to change the object state to 0 (Off) so you can view and set the object appearance for state 0 (Off).
Write Address | Write Address | Specifies the bit variable or a word's bit variable to be operated.
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the Write Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select the desired tag for the Write Address field.
Monitor Address identical to Write Address |  | Specifies that the Monitor Address is identical to the Write Address. With this item checked, you don’t need to specify the Monitor Address again. This item is available when the Monitor option is checked.
Monitor Address | Monitor Address | Specifies the bit variable or a word's bit variable to be monitored.
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the Monitor Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select the desired tag for the Monitor Address field.
ON Macro |  | Check this option if you want the button to have an ON macro. Specify and edit the ON macro in the ON Macro page.
OFF Macro |  | Check this option if you want the button to have an OFF macro. Specify and edit the OFF macro in the OFF Macro page.
Key |  | The hard key that is used to operate the bit button. This item is available only when the target panel has hard keys.
Touch Operable |  | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.


5.3 Changing Screens Using Screen Buttons

Changing Screens Using Screen Buttons

You can touch a screen button to open or close a screen.

You can complete all the settings of a screen button in the Screen Button property sheet. This sheet contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.3.4.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ Macro
Described in Section 15.2.6.


5.3.1 Basic Operations

Screen Button - Basic Operations

A screen button can be configured to perform one of the following screen switching operations:

Operation | Description
Open Screen | Opens the specified screen.
Previous Screen | Closes the current main screen and opens the previous main screen. Note: The panel can display many window screens but only one normal screen at a time, so a normal screen is also called a main screen. The panel can remember up to 32 previously opened main screens.
Close & Open Screen | Closes the window screen where the screen button is located and opens the specified screen.
Close Screen | Closes the window screen where the screen button is located.


5.3.2 Operation Options

Screen Button - Operation Options

The following operation options can be selected for a screen button to make it more informative, secure, and useful. You need to select and set these options in the Screen Button property sheet.

Options | Description
Change User Level | The button can be configured to change the current user level when it is activated to perform the function.
Acknowledge Alarm | The button can be configured to acknowledge the associated alarm on the screen where it is located. You can configure an alarm to display an (alarm) screen. The alarm is then the screen’s associated alarm.
Indicate Screen Already Opened | The button can be configured to indicate that a specified screen is opened. The indication is done by exchanging the button’s FG color with its text color.
Macro | You can specify a macro that will run when the screen button is activated to perform its operation. Select this option in the General page. Specify and edit the macro in the Macro page. Note: The screen switching operation will not be performed until the macro is completely executed. Therefore, it is important to keep the macro as short as possible so as not to delay the operation.
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation of the button will not be activated until the button is pressed and held down for the specified time period (Minimum Hold Time). Select and set this option in the Advanced page.
Notification | The screen button can be configured to notify a bit of the completion of the screen switching operation. Select and set this option in the Advanced page.
Operation Logging | Each touch operation of the button can be recorded in the operation log. Select and set this option in the Advanced page.
Invisible | The button can be invisible and still touch operable. Select this option in the Visibility page.
Visibility Control | The button can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.3.3 Settings

Screen Button - Settings

You can complete all the settings of a screen button in the Screen Button property sheet. This sheet contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.3.4.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ Macro
Described in Section 15.2.6.


5.3.4 General Settings

Screen Button - General Settings

This section describes how to define the general settings for a screen button.

The above is an example of the General page of the Screen Button dialog box.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for screen buttons is SBnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Transparent, Picture Shape, [image] , Touch Response, [image] , Border Color, Pattern, Foreground Color, Background Color
External Label |  | Check this option if you want the bit button to have an external label. Set up the external label in the External Label page.
Operation |  | Specifies the operation that you want the screen button to perform. There are four choices: Open Screen, Previous Screen, Close and Open Screen, and Close Screen. For details, see Section 5.3.1 Basic Operations.
Screen |  | Specifies the screen to be opened.
Menu Screen Position |  | Select one of the following 6 positions for the specified menu screen to be displayed. This field will be displayed only when the specified screen is a menu screen.
 |  | Position | Description
 |  | Screen Left Side | The menu screen slides into view horizontally from the left side of the screen.
 |  | Screen Right Side | The menu screen slides into view horizontally from the right side of the screen.
 |  | Button Left Side & Downward | The menu screen appears on the left side of the button and slides downward into view.
 |  | Button Left Side & Upward | The menu screen appears on the left side of the button and slides upward into view.
 |  | Button Right Side & Downward | The menu screen appears on the right side of the button and slides downward into view.
 |  | Button Right Side & Upward | The menu screen appears on the right side of the button and slides upward into view.
Change User Level | <Check Box> | Check this option if you want the button to change the current user level.
 | New User Level | The new user level to replace the current user level.
Acknowledge Alarm |  | Check this option if you want the button to acknowledge the associated alarm of the screen where the button is located. You can configure an alarm to display an (alarm) screen. The alarm is then the screen’s associated alarm.
Indicate Screen Already Opened |  | Check this option if you want the button to indicate the specified screen is already open.
Macro |  | Check this option if you want the button to have a macro. Specify and edit the macro in the Macro page.
Activation | Button Down | Specifies that the touch operation is activated when the button is pushed.
 | Button Up | Specifies that the touch operation is activated when the button is released.
Key |  | The hard key that is used to operate the object. This item is available only when the target panel has hard keys.
Touch Operable |  | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.


5.4 Performing Built-in Function Using Function Buttons

Performing Built-in Function Using Function Buttons

You can touch a function button to perform the specified built-in function provided by the target panel.

You can complete all the settings of a function button in the Function Button property sheet. This sheet contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.4.4.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ Macro
Described in Section 15.2.6.


5.4.1 Basic Operations

Function Button - Basic Operations

A function button can be configured to perform the following operations:

Category | Operation | Description
Setting up Panel | Increase Brightness/Contrast | Increases either the brightness or the contrast of the display depending on the target panel. Not all target panels support this operation. Check the hardware manual for details.
 | Decrease Brightness/Contrast | Decreases either the brightness or the contrast of the display depending on the target panel. Not all target panels support this operation. Check the hardware manual for details.
 | Save Brightness/Contrast | Saves the setting of either the brightness or the contrast of the display depending on the target panel. Not all target panels support this operation. Check the hardware manual for details.
 | Enter Panel Setup Mode | Exits the application and enters the panel setup mode.
 | Start Transparent Communication | Starts the transparent communication.
 | End Transparent Communication | Ends the transparent communication.
 | Show Real Time Clock | Displays the settings of the Real Time Clock so you can change the settings.
 | Turn Backlight Off | Turns off the backlight of the display. To turn on the backlight, touch the screen. Not all target panels support this operation. Check the hardware manual for details.
 | Turn Off Buzzer Response | Turns off the buzzer if it becomes annoyed while working on the touch panel.
 | Turn On Buzzer Response | Turns on the buzzer as a reminder when you perform an action such as pressing the button.
 | Format Built-in Flash Disk | Format the built-in flash disk (C:). This operation requires a user level of 8 or higher.
 | Calibrate Touch Panel | Allows the operator to calibrate the touch panel without entering Panel Setup.
Setting up Application | Log In | Displays the password keypad so you can enter a password to change the current user level.
 | Log Out | Changes the current user level to 0.
 | Show Password Table | Displays the password table so you can change the passwords. The password table only lists the passwords whose user level is equal to or less than the current user level.
 | Acknowledge Alarm | Acknowledges multiple alarms of the screen that the button is located at a time. You can select to acknowledge The associated alarm, Level 1 alarms, Level 1-2 alarms, Level 1-3 alarms, Level 1-4 alarms, Level 1-5 alarms, Level 1-6 alarms, Level 1-7 alarms, or All alarms.
 | Change Language | Change the current language to the specified language.
 | Show Folder Selection Box | Displays the Folder Selection box and saves the result into pathname buffer.
 | Show File Selection Box | Displays the File Selection box for the specified purpose. The following table lists the five purposes:
 |  | Purpose | Description
 |  | Open to Read | Open the specified file for reading. The file must exist.*
 |  | Open/create to Write | Open the specified file for reading. A new file is created when the specified file does not exist. If the specified file exists, it will be over written.*
 |  | Open/create to Append | Open the specified file for appending data. A new file is created when the specified file does not exist.*
 |  | Delete | Delete the specified file.
 |  | Rename | Rename the specified file.
 |  | You can specify the File Extension Name that will limit the File Selection Box to list only the files of the specified type. The specified extension name can only have ASCII characters and at most 3 characters. Note: * You need to specify the File I/O Control Block Address, an internal variable that receives the result of the file open operation. You can specify a macro that will run when the specified file is opened successfully. It is important to close an opened file with the macro command CLOSE_FILE when you finish the operation, or the file data will be lost.
Saving Data to File | Save Recipe Data To File | Saves the data of the specified recipe block in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel. Note that the current language's data item names are used as the column names.
 | Save Recipe Data (.prd file) | Saves the data of the specified recipe block in a file using the PRD format. The file can be read by the Recipe Editor and the target panel.
 | Save Logged Data To File | Saves the data collected by the specified data logger in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel.
 | Save Logged Data (.ldf file) | Saves the data collected by the specified data logger in an LDF file. The file can be read by the target panel only.
 | Save Alarm History To File | Saves the alarm history in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel.
 | Save Alarm Counts To File | Saves the alarm counts in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel.
 | Save Operation History To File | Saves the operation history in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel.
 | Save Line Chart Data To File | Saves the data collected by the specified line chart in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel.
 | Save Scatter Chart Data To File | Saves the data collected by the specified scatter chart in a text file. The file can be read by any text editor, Microsoft Excel, and the target panel.
 | Save Application Configuration Data (.plf file) | Saves the application configuration data that was downloaded to the target panel previously in a PLF file. The file can be used by the software.
 | Save System and Application to File (.prp file) | Saves the system programs and the application runtime data in a PRP file. The file can be used by the software and compatible target panels.
 | Eject Micro SD Card Safely | To assure all the file operations concerning the micro SD card are done before removing it from the HMI unit, it is recommended that the operator presses a function button with the operation Eject Micro SD Card Safely when the operator intends to remove the card. The operator is allowed to remove the card after the message "Safe to remove micro SD card" is displayed.
 | Eject USB Memory Stick Safely | To assure all the file operations concerning the USB memory stick are done before removing it from the HMI unit, it is recommended that the operator presses a function button with the operation Eject USB Memory Stick Safely when the operator intends to remove the memory stick. The operator is allowed to remove the memory stick after the message "Safe to remove USB memory stick" is displayed.
Loading Data from File | Load Recipe Data From File | Loads the data of the specified recipe block from a text file.
 | Load Recipe Data (.prd file) | Loads the data of the specified recipe block from a PRD file.
 | Load Logged Data From File | Loads the data of the specified data logger from a text file (.txt file) or an excel file (.csv file).
 | Load Logged Data (.ldf file) | Loads the data of the specified data logger from a LDF file.
 | Load Line Chart Data From File | Loads the data of the specified line chart from a text file.
 | Load Scatter Chart Data From File | Loads the data of the specified scatter chart from a text file.
 | Load Logged Alarms From File |
Transferring Data | Write Recipe to Controller | Writes the current recipe, which is determined by the current recipe block and the current recipe number, to the specified controller. The controller and the destination address are specified in the settings of the recipe block.
 | Read Recipe from Controller | Updates the current recipe, which is determined by the current recipe block and the current recipe number, by reading a recipe from the specified controller. The controller and the source address are specified in the settings of the recipe block.
 | Save Recipe Data to Flash ROM | Saves the data of the specified recipe block to the target panel’s flash ROM. The option “Need space in flash ROM to save backup” must be selected in the settings of the recipe block to make this operation available.
 | Load Recipe Data from Flash ROM | Loads the data of the specified recipe block from the target panel’s flash ROM. The option “Need space in flash ROM to save backup” must be selected in the settings of the recipe block to make this operation available.
Printing Screen | Print Screen | Prints the screen where the button is located. The printed area is specified in the settings of the screen properties.
 | Print Screen to File (256-color .bmp) | Prints the screen where the button is located to a file with the BMP format of 256 colors. The printed area is specified in the settings of the screen properties.
 | Print Screen to File (64K-color .bmp) | Prints the screen where the button is located to a file with the BMP format of 64K colors. The printed area is specified in the settings of the screen properties.
 | Print Screen to File (True-color.bmp) | Prints the screen where the button is located to a file with the BMP format. The color resolution is the same as the target panel’s display. The printed area is specified in the settings of the screen properties.
 | Print Screen to File (.jpg) | Prints the screen where the button is located to a file with the JPG format. The printed area is specified in the settings of the screen properties.
Clearing Data | Clear Logged Data | Clears the data of the specified data logger.
 | Clear Logged Data (All) | Clears the data of all the data loggers.
 | Clear Alarm History | Clears the alarm history.
 | Clear Alarm Counts | Resets the alarm counts to 0.
 | Clear Operation History | Clears the operation history.
Running Application | Restart Application | Restarts the application.
 | Update System and Application From File (.prp) | Updates the system programs and the application runtime data from a PRP file. The original system programs and the application runtime data are replaced by the new ones.
 | Stop Running | Exists the application.
 | Stop Operation Safely | Stops the HMI operation before turning the power off and it guarantees that all operations with the non-volatile storage devices are safely completed. Please see 3.1.5 Avoiding Data Corruption Due To Random Power-off for details.
 | Boot from File (.prp) | Loads-and-runs the system programs and the application runtime data from a PRP file. The original system programs and runtime data remain intact. The loaded system programs and the runtime data will be lost after power off.
Multimedia | Play Sound | Plays the specified sound file.
 | Stop Playing Sound | Stops playing the current sound file.
 | Take Picture | Takes a picture with the specified USB camera.
 | Select Video | Selects a video with specified video channel ID.
 | View Video | Views the video in the associated camera view object.
 | Freeze Video | Freezes the video showing in the associated camera view object.
 | Save Frozen Picture | Saves the frozen picture of the video showing in the associated camera view object to the jpg file.
 | Load JPEG Picture | Loads JPEG picture and displays it in the associated picture display object. The state type of the picture display object must be "Display a picture loaded by an associated function button".
Adjusting Viewing Range | Zoom In | Makes the viewing range of the associated object half the size so the object shows less content but with more detail.
 | Zoom Out | Makes the viewing range of the associated object twice the size so the object shows more content but with less detail.
 | Restore to Normal View | Restores the viewing range to the original setting.
 | Zoom All | Allows to automatically zoom in or out the view to show all the collected data altogether in the display area of the associated object such as historic trend graph.
Scrolling Content | Scroll Left | Scrolls the content displayed by the associated object to the left.
 | Scroll Right | Scrolls the content displayed by the associated object to the right.
 | Scroll Up | Scrolls the content displayed by the associated object to the top.
 | Scroll Down | Scrolls the content displayed by the associated object to the bottom.
 | Scroll Page Left | Scrolls the content displayed by the associated object to the left by a page.
 | Scroll Page Right | Scrolls the content displayed by the associated object to the right by a page.
 | Scroll Page Up | Scrolls the content displayed by the associated object to the top by a page.
 | Scroll Page Down | Scrolls the content displayed by the associated object to the bottom by a page.
 | Scroll to Left End | Scrolls the content displayed by the associated object to the left end.
 | Scroll to Right End | Scrolls the content displayed by the associated object to the right end.
 | Scroll to Bottom End | Scrolls the content displayed by the associated object to the bottom end.
 | Scroll to Top End | Scrolls the content displayed by the associated object to the top end.
Changing Data | Select Date | Selects date and shows the value of the associated object on that date.
 | Select Date And Time | Selects date/time and shows the value of the associated object on that time.
 | Select Next Data Entry Object | Selects the next data entry object on the screen where the button is on.
 | Select Previous Data Entry Object | Selects the previous data entry object on the screen where the button is on.
 | Increase Value by One | Activates the selected data entry object to set its specified variable to the value obtained by increasing the value of its monitored variable by one. The operation is available for multi-state buttons whose property “Activation” is set to “Indirect”. The operation is available for numeric entries whose property “Data Entry” is set to “On-screen Keypad and/or Function Keys”.
 | Decrease Value by One | Activates the selected data entry object to set its specified variable to the value obtained by decreasing the value of its monitored variable by one. The operation is available for multi-state buttons whose property “Activation” is set to “Indirect”. The operation is available for numeric entries whose property “Data Entry” is set to “On-screen Keypad and/or Function Keys”.
File Operation | Copy File | The Copy File operation of function buttons supports: 1) Copy a selected file with the specified extension name. 2) Copy all the files with the specified extension name under a selected folder. Perform either 1) or 2) chosen at runtime.
 | Delete File | The Delete File operation of function buttons supports: 1) Delete a selected file with the specified extension name. 2) Delete all the files with the specified extension name under a selected folder. Perform either 1) or 2) chosen at runtime.
 | Make File Folder | Makes a new file folder.
Tools | Run .EXE Program | Runs the .exe program.
 | Calculator | Runs a simple calculator.


5.4.2 Operation Options

Function Button - Operation Options

The following operation options can be added to a function button to make it more informative, secure, and useful. You need to select and set these options in the Function Button property sheet.

Option | Description
Macro | You can specify a macro that will be run when a file is successfully opened. Select this option in the General page. Specify and edit the macro in the Macro page.
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation of the button will not be activated until the button is pressed and held down for the specified time period (Minimum Hold Time). Set this option in the Advanced page.
Operator Confirmation | The Confirmation box will display when the button is touched. If the operator selects “Yes” in the Confirmation box, the button will proceed to perform its operation. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the button will stop performing its operation. Select and set this option in the Advanced page.
Notification | The button can be configured to notify a bit upon completion of the bit setting operation when the button is pressed. Select and set this option in the Advanced page.
Operation Logging | Each touch operation of the button can be recorded in the operation log. Select and set this option in the Advanced page.
Change User Level | The button can be configured to change the current user level when it is activated to perform the function. Select and set this option in the Advanced page.
Invisible | The button can be invisible and still touch operable. Select this option in the Visibility page.
Visibility Control | The button can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.4.3 Settings

Function Button - Settings

You can complete all the settings of a function button in the Function Button property sheet. This sheet contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.4.4.

■ Label
Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ Macro
Described in Section 15.2.6.


5.4.4 General Settings

Function Button - General Settings

This section describes how to define the general settings for a function button.

The above is an example of the General page of the Function Button dialog box.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the ID’s for function buttons is FBnnnn.
Note |  | You can type a note for the bit button.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Transparent, Picture Shape, [image] , Touch Response, [image] , Border Color, Pattern, Foreground Color, Background Color
External Label |  | Check this option if you want the bit button to have an external label. Set up the external label in the External Label page.
Operation |  | Specifies the operation that you want the function button to perform. About the available operations, see Section 5.4.1 Basic Operation.
File Extension |  | Specifies the file extension.
Filename Specified In Pathname Buffer |  | Check this option if you want the file name specified in the pathname buffer.
ID, Purpose, or Language | Associated Object ID | The ID of the object associated with the selected operation.
 | Data Logger / Associated Data Logger | The ID of the data logger associated with the selected operation.
 | Line Chart | The ID of the line chart associated with the selected operation.
 | Recipe Block | The ID of the recipe block associated with the selected operation.
 | Scatter Chart | The ID of the scatter chart associated with the selected operation.
 | Purpose | The purpose for the Show File Selection Box operation.
 | Language | The language for the Change Language operation.
 | Sound | The ID of the sound for the Play Sound operation.
 | Camera ID & Picture Type | The camera ID and the picture file type for the Take Picture operation.
 | Associated Camera View Object ID | The ID of the camera view associated with the selected operation.
 | Associated Picture Display Object ID | The ID of the picture display associated with the selected operation.
 | Video Channel ID | The ID of the video channel associated with the selected operation.
 | Target | Select what you want to copy or delete for Copy File/Delete File operation.
 | Delete | Select what you want to delete for clear alarm History operation.
Filename, Extension name, Method | Default Filename | The default filename for the selected operation. The name can only have ASCII characters and at most 80 characters.
 | File Extension Name | The file extension name for the selected operation. The name can only have ASCII characters and at most 3 characters.
 | Number of Plays | The method for the Play Sound operation. Specifies how many times you want to play the sound.
Filename Selectable |  | Check this item so the File Selection box will display for the operator to select a file. The selected file will be used for the selected operation.
File Buffer ID |  | Select a file buffer ID where to save the logged data or alarms.
File Buffer Size (records) |  | Select the file buffer size to save specified records.
Tabular Format |  | Select either row-wise or column-wise format to save the logged data.
File I/O Control Block Address | <Edit Box> | Specifies the internal variable to receive the result of the file open operation. The memory block requires 44 words.
 |  | Word | Description
 |  | 0,1 | A 32-bit word to store the handle of an opened file.
 |  | 2,3 | A 32-bit word to store the size (in byte) of the file.
 |  | 4-43 | A byte array to store the filename and the extension name of the opened file; the maximum length of the filename and the extension name is 80 characters
 |  | Click this icon to bring up the Address Input Keypad and specify an internal address for this property.
 |  | Click this icon to bring up the Select Tag dialog box and select an internal tag for this property.
Pathname Buffer | <Edit Box> | Specifies the internal variable to save the path name of the file load operation.
 |  | Click this icon to bring up the Address Input Keypad and specify an internal address for this property.
 |  | Click this icon to bring up the Select Tag dialog box and select an internal tag for this property.
 | Pathname Buffer Size | Specifies the buffer size in characters/bytes. The path name can only have ASCII characters and at most 127 characters. The default size is 48 characters/bytes.
Break Between Plays (in Second) |  | Specifies an interval between two plays. You can select 0s, 0.2s, 0.4s, 0.6s, 0.8s, 1s, 2s, 3s, 4s, 5s.
Macro |  | Check this option if you want the button to have a macro. Specify and edit the macro in the Macro page.
Key |  | The hard key that is used to operate the object. This item is available only when the target panel has hard keys.
Touch Operable |  | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.


5.5 Selecting Word Value Using Slide Switches

Selecting Word Value Using Slide Switches

You can touch the knob of a slide switch and move the knob to select a desired value. The selected value is written to the specified variable when you release the knob.

You can complete all the settings of a slide switch in the Slide Switch dialog box. This dialog box contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.5.4.

■ Scale
  Described in Section 4.4.4.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


5.5.1 Basic Operations

Slide Switch - Basic Operations

The above are two examples of slide switches. The right one shows a slide switch whose knob is being touched.

You specify the variable to be controlled, the minimum of the variable, and the maximum of the variable for a slide switch. The variable is monitored, and its value combined with the specified minimum and maximum determines the knob position of the slide switch. You can touch and move the knob to select a desired value. The selected value is shown when the knob is being held. When you release the knob, the selected value is written to the specified variable.

You can choose one of the following four directions for a slide switch:

Direction | Description
Upward | The knob can move vertically. The knob is at the top end when the variable value is equal to or greater than the specified maximum. The knob is at the bottom end when the variable value is equal to or less than the specified minimum. When the variable value is between the maximum and minimum, the knob is at a proportional position between the top end and the bottom end.
Downward | The knob can move vertically. The knob is at the bottom end when the variable value is equal to or greater than the specified maximum. The knob is at the top end when the variable value is equal to or less than the specified minimum. When the variable value is between the maximum and minimum, the knob is at a proportional position between the bottom end and the top end.
Leftward | The knob can move horizontally. The knob is at the left end when the variable value is equal to or greater than the specified maximum. The knob is at the right end when the variable value is equal to or less than the specified minimum. When the variable value is between the maximum and minimum, the knob is at a proportional position between the left end and the right end.
Rightward | The knob can move horizontally. The knob is at the right end when the variable value is equal to or greater than the specified maximum. The knob is at the left end when the variable value is equal to or less than the specified minimum. When the variable value is between the maximum and minimum, the knob is at a proportional position between the right end and the left end.


5.5.2 Operation Options

Slide Switch - Operation Options

The following operation options can be added to a slide switch to make it more informative, secure, and useful. You need to select and set these options in the Slide Switch dialog box.

Options | Description
Scale | The switch can have a scale. Select and set this option in the Scale page.
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Notification | The switch can be configured to notify a bit upon completion of the bit setting operation when the button is pressed. Select and set this option in the Advanced page.
Operation Logging | Each change to the specified variable can be recorded in the operation log. Select and set this option in the Advanced page.
Visibility Control | The switch can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.5.3 Settings

Slide Switch - Settings

You can complete all the settings of a slide switch in the Slide Switch dialog box. This dialog box contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.5.4.

■ Scale
  Described in Section 4.4.4.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


5.5.4 General Settings

Slide Switch - General Settings

This section describes how to define the general settings for a slide switch.

The above is an example of the General page of the Slide Switch dialog box.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for slide switches is SWnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
External Label |  | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Direction |  | Specifies the direction of the slide switch. For details, see 5.5.1 Basic Operations.
Data Type |  | The data type of the variable to be controlled by the object.
Write Address | Write Address | Specifies the variable to be controlled by the object.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for this field.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for this field.
Dynamic Range | Dynamic Range | Check this option so the minimum and maximum of the variable will be specified at runtime. When this option is selected, the minimum and maximum of the marks for the scale of the slide switch can be specified at runtime as well. The data that specifies the above two ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block for the slide switch in the Dynamic Range Parameter Block field.
 | Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the slide switch when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block when the data type is 16-bit and the scale of the slide switch is not dynamic.
 |  | Word | Parameter
 |  | 0 | The minimum of the variable
 |  | 1 | The maximum of the variable
 |  | The following table shows the data arrangement of the parameter block when the data type is 16-bit and the scale of the slide switch is dynamic.
 |  | Word | Parameter
 |  | 0 | The minimum of the variable
 |  | 1 | The maximum of the variable
 |  | 2, 3 | The minimum of the mark for the scale; 32-bit integer number
 |  | 4, 5 | The maximum of the mark for the scale; 32-bit integer number
 |  | The following table shows the data arrangement of the parameter block when the data type is 32-bit and the scale of the slide switch is not dynamic.
 |  | Word | Parameter
 |  | 0, 1 | The minimum of the variable
 |  | 2, 3 | The maximum of the variable
 |  | The following table shows the data arrangement of the parameter block when the data type is 32-bit and the scale of the slide switch is dynamic.
 |  | Word | Parameter
 |  | 0, 1 | The minimum of the variable
 |  | 2, 3 | The maximum of the variable
 |  | 4, 5 | The minimum of the mark for the scale; 32-bit integer number
 |  | 6, 7 | The maximum of the mark for the scale; 32-bit integer number
Minimum |  | The minimum of the variable to be controlled.
Maximum |  | The maximum of the variable to be controlled.
Knob | Border Color | The border color of the knob. To specify the color, click the corresponding Color icon and select a color from the Color palette.
 | BG Color | The color inside the border. To specify the color, click the corresponding Color icon and select a color from the Color palette.
Show the selected number while the knob is being pressed |  | Check this option if you want to show the selected number on the left-top corner while the knob is being pressed.


5.6 Setting Word Value Using Word Buttons

Setting Word Value Using Word Buttons

You can touch a word button to set a value to the specified variable.

You can complete all the settings of a word button in the Word Button property sheet. This sheet contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.6.4.

■ Label
  Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


5.6.1 Basic Operations

Word Button - Basic Operations

A word button can be configured to perform one of the following operations:

Operation | Description
Set Constant | Writes the specified constant to the specified variable.
Enter Value | Allows you to enter a value to change the specified variable. The Numeric Keypad displays when the button is pressed and released. After a value is entered with the keypad, the button checks if the value is within the range of the specified minimum and maximum. If the value is valid, the button writes the entered value to the specified variable. If the value is invalid, the operator has to enter another value or quit the operation.
Enter Password | Allows you to enter a value to change the specified variable. The keypad shows the input with a string of asterisks so others cannot know the input value. The Numeric Keypad displays when the button is pressed and released. The keypad shows the operator input with a string of asterisks so others do not know the input value. After a value is entered with the keypad, the button checks if the value is within the range of the specified minimum and maximum. If the value is valid, the button writes the entered value to the specified variable. If the value is invalid, the operator has to enter another value or quit the operation.
Add | Increases the specified variable by the specified constant. If the result of the increase is greater than the specified maximum, the variable is set to the maximum. You can also associate a word button with Add operation to a numeric entry. With the association, you can see the change of the value while you are pressing the word button. Also you can enter a number directly for the variable that the word button controls.
Subtract | Decreases the specified variable by the specified constant. If the result of the decrease is less than the specified minimum, the variable is set to the minimum.You can also associate a word button with Subtract operation to a numeric entry. With the association, you can see the change of the value while you are pressing the word button. Also you can enter a number directly for the variable that the word button controls.


5.6.2 Operation Options

Word Button - Operation Options

The following operation options can be added to a word button to make it more informative, secure, and useful. You need to select and set these options in the Word Button dialog box.

Options | Description
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation of the button will not be activated until the button is pressed and held down for the specified time period (Minimum Hold Time). Set this option in the Advanced page.
Operator Confirmation | The Confirmation box will be displayed when the button is touched. If the operator selects “Yes” in the Confirmation box, the button will proceed to perform its operation. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the button will stop performing its operation. Select and set this option in the Advanced page. Note: that this option is not available for the Enter Password operation.
Notification | The button can be configured to notify a bit upon the completion of the specified operation. Select and set this option in the Advanced page.
Operation Logging | Each touch operation of the button can be recorded in the operation log. Select and set this option in the Advanced page.
Change User Level | The current user level can be changed after the operation is performed. Select and set up this option in the Advanced page.
Designated Keypad | The Object will have its own keypad other than the system keypad or the customized keypad for the whole panel. Select and set up this option in the Advanced page.
Invisible | The button can be invisible and still touch operable. Select this option in the Visibility page.
Visibility Control | The button can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.6.3 Settings

Word Button - Settings

You can complete all the settings of a word button in the Word Button property sheet. This sheet contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.6.4.

■ Label
  Described in Section 4.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


5.6.4 General Settings

Word Button - General Settings

This section describes how to define the general settings for a word button.

The above is an example of the General page of the Word Button property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for word buttons is WBnnnn.
Note |  | You can type a note for the word button.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Transparent, Picture Shape, [image] , Touch Response, [image] , Border Color, Pattern, Foreground Color, Background Color.
External Label |  | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Operation |  | Specifies the operation that the word button performs. For details, see Section 5.6.1 Basic Operations.
Data Type |  | The data type of the variable to be controlled.
Associated Numeric Entry |  | Specify the associated numeric entry object for Add or Subtract operation. With the association, you can see the value change for the numeric entry while you are pressing the word button.
Write Address | Write Address | Specifies the variable to be controlled.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for this property.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for this property.
Constant |  | The constant for the specified operation.
Variable Max./Min. |  | Check this option if the minimum and maximum are specified by the designated variables at runtime.
Minimum |  | Specifies the minimum for Add or Subtract operation when the Variable Max./Min. is not selected. Or specifies the variable that stores the minimum at runtime. Click [image] to enter an address. Click [image] to select a tag.
Maximum |  | Specifies the maximum for Add or Subtract operation when the Variable Max./Min. is not selected. Or specifies the variable that stores the maximum at runtime. Click [image] to enter an address. Click [image] to select a tag.
Total Digits |  | The number of digits to be displayed for the Minimum and the Maximum on the numeric keypad.
Fractional Digits |  | When the Data Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed for the Minimum and Maximum on the numeric keypad. When the Data Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown and entered as a fixed point number. When the Fractional Digits is nonzero, say N, the entered value will be converted to an integer according to the following formula before being output. OutputValue = EnteredValue * (Nth power of 10) Example:
 |  | Display Type | Total Digits | Fractional Digits | Entered Value | Output Value
 |  | 32-bit Floating Point | 4 | 2 | 12.34 | 12.34
 |  | 32-bit Floating Point | 4 | 2 | 123.4 | Error!
 |  | 16-bit Signed Decimal | 5 | 2 | 123.45 | 12345
 |  | 16-bit Signed Decimal | 5 | 2 | -0.05 | -5
 |  | 16-bit Signed Decimal | 5 | 2 | 3 | 300
Activation | Button Down | Select this item so the touch operation will be activated when the button is touched.
 | Button Up | Select this item so the touch operation will be activated when the button is released.
Macro | Use | Check this option if you want the button to have a macro. Specify and edit the macro in the Macro page.
 | When To Run | Select the time to run the macro. You can choose to run the macro before or after setting a value to the specified variable.
Key | Key | The hard key that is used to operate the word button. This item is available when the target panel has hard keys.
 | Touch Operable | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.


5.7 Selecting Work Value Using Multi-state Switches

Selecting Work Value Using Multi-state Switches

You can use a multi-state switch to change the state of the specified variable.

You can complete all the settings of a multi-state switch in the Multi-state Switch dialog box. This dialog box contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.7.4.

■ Text
  Described in Section 4.3.6.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ Picture
  Described in Section 4.3.7.

■ External Label
Described in Section 4.3.8.


5.7.1 Basic Operations

Multistate Switch - Basic Operations

A multi-state switch can be configured to perform as one of the following types of controls:

By default, the list box lists the text of all states of the switch one state per line starting from state 0. The text of the current state is highlighted. If the desired state is not in view, you can use the scroll bar attached to the right side of the list to scroll the text. When you select a desired state by touching its text, the switch writes the value of the selected state to the specified variable and closes the list box.

Control Type | Description
Button | The multi-state switch is a push button. It changes the state of the specified variable to the next state when it is touched. Note: The next state is not necessarily the current state plus one.
List | By default the multi-state switch is a list box. It lists the text of all the states of the switch one state per line starting from state 0 as shown in the following example. The text of the current state is highlighted. If the desired state is not in view, you can use the scroll bar attached to the right side of the list box to scroll the text. If the tabular list is checked, the multi-state will lists the text of all the states in column-wise tabular format starting from start 0 as shown in the following example. The text of the current state is highlighted. When you select a desired state by touching its text, the list box writes the value of the selected state to the specified variable.
Drop-down List | The multi-state switch is a drop-down list. It displays the text of the current state and a button with the down arrow symbol as shown in the following example. When the button is touched, the switch list displays a list box or a tabular list if selected beneath itself as shown in the following examples. When you select a desired state by touching its text, the switch writes the value of the selected state to the specified variable and closes the list box. If you want to cancel the operation when the list box is showing, touch anywhere other than the text in the list box or a tabular list. Note: About the difference between a list box and a tabular list, please see detail explanation in List control type.
Throw-up List | The multi-state switch is a throw-up list. It displays the text of the current state and a button with the up arrow symbol as shown in the following example. When the button is touched, the switch list displays a list box or a tabular list if selected above itself as shown in the following example. When you select a desired state by touching its text, the switch writes the value of the selected state to the specified variable and closes the list box. If you want to cancel the operation when the list box is showing, touch anywhere other than the text in the list box. Note: About the difference between a list box and a tabular list, please see detail explanation in List control type.


5.7.2 Operation Options

Multistate Switch - Operation Options

The following operation options can be added to a multi-state switch to make it more informative, secure, and useful. You need to select and set these options in the Multi-state Switch dialog box.

Options | Description
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation of the switch will not be activated until the switch is pressed and held down for the specified time period (Minimum Hold Time). Set this option in the Advanced page.
Notification | The switch can be configured to notify a bit of the completion of the specified operation. Select and set this option in the Advanced page.
Operation Logging | Each data change performed by the switch can be recorded in the operation log. Select and set this option in the Advanced page.
Invisible | The switch can be invisible and still touch operable. Select this option in the Visibility page.
Visibility Control | The switch can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.7.3 Settings

Multistate Switch - Settings

You can complete all the settings of a multi-state switch in the Multi-state Switch dialog box. This dialog box contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.7.4.

■ Text
  Described in Section 4.3.6.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ Picture
  Described in Section 4.3.7.

■ External Label
Described in Section 4.3.8.


5.7.4 General Settings

Multistate Switch - General Settings

This section describes how to define the general settings for a multi-state switch. The following is an example of the General page of the Multi-state Switch property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for multi-state switch is MSnnnn.
Note |  | You can type a note for the multi-state switch.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Picture Shape, [image] , VFTA, [image] , Border Color, Pattern, FG Color, BG Color.
External Label |  | Check this option if you want the multi-state switch to have an external label. Set up the external label in the External Label page.
State |  | The current state of the multi-state switch that you can view and set the object appearance for.
State Type |  | The state type of the monitored variable. There are two options: Value and LSB. For details, see Section 4.4.1.1 State Types.
Control Type |  | Specifies the control type that the multi-state switch will perform as. There are three types you can choose: Button, List, and Drop-down List, Throw-up List. For details, see Section 5.7.1 Basic Operations.
Tabular List |  | Check the option if you want the multi-state switch supports tabular list for List, Drop-down List, and Throw-up List.
Number of Columns |  | Specify the total columns in the tabular list.
Data Type |  | The data type of the variables specified in this page.
Write Address | Write Address | Specifies the variable to be controlled.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for this property.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for this property.
Total States |  | Specifies the number of valid states that the monitored variable has. Note: The last state is state N-1 when the Total States is N.
 |  | Click the button to bring up the Custom State Value dialog box to assign a positive integer for each state in the dialog box. Please see details in Section 4.4.1.2 Setting the Custom States of an Object.
Next State |  | Specifies the method of calculating the next state for the Button control type.
 | +1 (Wrap) | The next state is the current state plus one when the current state is not the last state. When the current state is the last state, the next state is state 0.
 | -1 (Wrap) | The next state is the current state minus one when the current state is not state 0. When the current state is state 0, the next state is the last state.
 | +1/-1 (Retreat) | With this method, the switch is either in the increasing mode or in the decreasing mode for the next state calculation. The switch is in the increasing mode initially. Assume that the total states of the switch is N. When the switch is in the increasing mode, the next state is the current state plus one, if the current state is not the last state, i.e. state N-1. If the current state is the last state, the switch changes into the decreasing mode, and the next state is the current state minus one, i.e. state N-2. When the switch is in the decreasing mode, the next state is the current state minus one if the current state is not state 0. If the current state is state 0, the switch changes into the increasing mode and the next state is the current state plus one, i.e. state 1.
 | +1 (Keep) | If the current state is not the last state, the next state is the current state plus one; If the current state is the last state, the next state keeps at the last state.
 | -1 (Keep) | If the current state is not state 0, the next state is the current state minus one; If the current state is state 0, the next state keeps at state 0.
Activation |  | Specifies how the multi-state switch is activated for the Button control type.
 | Direct | The multi-state switch is activated when the button is touched.
 | Indirect | The multi-state switch is activated when it is selected, and a function button on the same screen with the operation of “Increase Value By One” or “Decrease Value y One” is touched.
Monitor Address identical to Write Address |  | Specifies that the Monitor Address is identical to the Write Address. With this item checked, you don’t need to specify the same variable for the Monitor Address field.
Monitor Address | Monitor Address | Specifies the variable to be monitored.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for the Monitor Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for the Monitor Address field.
Key |  | The hard key that is used to operate the multi-state switch. This item is available when the target panel has hard keys.
Touch Operable |  | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.


5.8 Setting Word State Using Radio Button Groups

Setting Word State Using Radio Button Groups

You can press a button of a radio button group to change the state of the controlled variable.

You can complete all the settings of a radio button group in the Radio Button Group dialog box. This dialog box contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.8.4.

■ Text
  Described in Section 4.3.6.

■ Picture
  Described in Section 4.3.7.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


5.8.1 Basic Operations

Radio Button Group - Basic Operations

A radio button group has as many radio buttons as the number of states it has. Each radio button corresponds to a state. When a radio button is pressed, the value of that button’s associated state is written to the controlled variable. The state of a radio button group is determined by the state of the controlled variable. A radio button is highlighted when its associated state is the current state.


5.8.2 Operation Options

Radio Button Group - Operation Options

The following operation options can be added to a radio button group to make it more informative, secure, and useful. You need to select and set these options in the Radio Button Group dialog box.

Options | Description
Touch Operation Control | The touch operation of the radio button group can be enabled and disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation will not be activated until a button of the radio button group is pressed and held down for the specified time period (Minimum Hold Time). Set this option in the Advanced page.
Operation Logging | Each data change performed by the radio button group can be recorded in the operation log. Select and set this option in the Advanced page.
Visibility Control | The radio button group can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.8.3 Settings

Radio Button Group - Settings

You can complete all the settings of a radio button group in the Radio Button Group dialog box. This dialog box contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.8.4.

■ Text
  Described in Section 4.3.6.

■ Picture
  Described in Section 4.3.7.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


5.8.4 General Settings

Radio Button Group - General Settings

This section describes how to define the general settings for a radio button group. The following is an example of the General page of the Radio Button Group property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for radio button groups is RBnnnn.
Note |  | You can type a note for the radio button group.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Picture Shape, [image] , VFTA, [image] , Border Color, BG Color.
External Label |  | Check this option if you want the radio button group to have an external label. Set up the external label in the External Label page.
State |  | Specifies the current state of the radio button group. You can set the appearance of the button associated with the current state. Note: Although you can set the appearance for the button of the current state, you cannot view all the changes immediately. This is because the button is highlighted with the BG color and the text color set for the Current State. You can change the current state so the button is shown with new settings instead of being highlighted.
State Type |  | The state type of the controlled variable. There are three options: Value, LSB, and Custom. For details, see Section 4.4.1.1 State Types.
State Order |  | Specifies how to arrange the radio buttons. There are four kinds of order:
 |  | State Order | Description
 |  | Left to Right | The buttons are arranged in order, in a row with the button of state 0 at the left most position.
 |  | Right to Left | The buttons are arranged in order, in a row with the button of state 0 at the right most position.
 |  | Top to Bottom | The buttons are arranged in order, in a column with the button of state 0 at the top position.
 |  | Bottom to Top | The buttons are arranged in order, in a column with the button of state 0 at the bottom position.
Data Type |  | The data type of the variables specified in this page.
Write Address | Write Address | Specifies the variable to be controlled.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for this property.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for this property.
Total States |  | Specifies the number of valid states that the controlled variable has.
Custom State Value |  | Click this button to define the state value for each state when the State Type is Custom. For details, see Section 4.4.1.2 Setting the Custom States of an Object.
Indication of Current Selection | Method | Choose the method from Display Text With Different Colors, Use Round Mark or Use Square Mark to indicate the current selection.
 | BG Color | The color to replace the shape’s BG color when selected.
 | Text / Mark | The color to replace the text or mark color when selected.
Button Spacing |  | The distance in pixels between two adjacent radio buttons.


5.9 Customizing the Keypad Using Keypad Buttons

Customizing the Keypad Using Keypad Buttons

A keypad button inputs a character to the keypad buffer or issues a command to the keypad buffer when it is pressed. You can use keypad buttons to create your own keypads.

You can complete all the settings of a keypad button in the Keypad Button dialog box. This dialog box contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.9.3.

■ Label
Described in Section 4.3.5.

■ Visibility
Described in Section 4.4.6.

■ Macro
Described in Section 15.2.6.


5.9.1 Operation Options

Keypad Button - Operation Options

The following operation options can be added to a keypad button to make it more useful. You need to select and set these options in the Keypad Button dialog box.

Options | Description
Macro | The keypad button can have a macro to execute when being pressed. Specify and edit the macro in the Macro page.
Visibility Control | The keypad button can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.9.2 Settings

Keypad Button - Settings

You can complete all the settings of a keypad button in the Keypad Button dialog box. This dialog box contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.9.3.

■ Label
Described in Section 4.3.5.

■ Visibility
Described in Section 4.4.6.

■ Macro
Described in Section 15.2.6.


5.9.3 General Settings

Keypad Button - General Settings

This section describes how to define the general settings for a keypad button. The following is an example of the General page of the Keypad Button property sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for keypad buttons is KBnnnn.
Note | You can type a note for the keypad button group.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Picture Shape, [image] , Touch Response, [image] , Border Color, Pattern Color, FG Color, BG Color.
Enter Character | Select this item if the button is used to input the specified character to the keypad buffer.
Character Set | Select one of the following three character sets to encode the entering character.
 | Character Set | Description
 | ASCII (US) | Defines 128 characters.
 | ISO-8859-1 (Western European) | Covers mostly Western European languages.
 | ISO-8859-5 (Cyrillic) | Covers languages using a Cyrillic alphabet such as Bulgarian, Belarusian, Russian, Serbian and Macedonian.
Character | Available when Enter Character is selected. Specifies the character to be entered in the keypad buffer.
Enter Command | Select this item if the button is used to issue the specified command to the keypad buffer.
Command | Available when Enter Command is selected. Specifies the command to be issued to the keypad buffer. There are four commands available:
 | Command | Description
 | Enter | Completes data entry and sends the input string to the associated object or the system.
 | Escape | Cancels the data entry operation.
 | Clear | Clears the keypad buffer.
 | Backspace | Removes the last character in the keypad buffer.
 | Increase By One | Increases the keypad input buffer ($S0 ~ $S25) by one.
 | Decrease By One | Decreases the keypad input buffer ($S0 ~ $S25) by one.
 | No operation | Issue to request a response from the device without requesting any other actions. Such a command can be used to ensure the connection is still alive.
Key | The hard key that is used to operate the keypad button. This item is available only when the target panel has hard keys.
Touch Operable | Check this option if you want the button is still operable by using the touch panel even it is configured to be operated by the key.
Macro | Check this option if you want the button to have a macro. Specify and edit the macro in the Macro page.


5.9.4 Creating your own keypads

Creating your own keypads

You can create your own keypads using keypad buttons as custom keypads for your application. The following is an example of a custom numeric keypad.

To create your own keypads, please do the following:

  1. Create a window screen, please see Section 3.9.2 Creating and Opening Screens for details.
  2. Create a Character Display with the following settings to display characters when the keypad button is pressed.

  3. Create a Character Display with the following settings to display an allowable input range.

  4. Create keypad buttons to customize the keypad.
  5. Set up the Custom page of the General Setup dialog box to use the custom keypad instead of the built-in keypad. Please see Section 3.1.2 Custom Settings for details.


5.10 Scrolling Object Content Using Scroll Button Groups

Scrolling Object Content Using Scroll Button Groups

You can use the buttons of a scroll button group to scroll the content displayed by the associated object.

You can complete all the settings of a scroll button group in the Scroll Button Group dialog box. This dialog box contains the following two pages.

■ General
Described in Section 5.10.4.

■ Visibility
Described in Section 4.4.6.


5.10.1 Basic Operations

Scroll Button Group - Basic Operations

A scroll button group with the horizontal button alignment can have the following buttons:

Button | Example | Description
Scroll to Right End |  | Scrolls the content displayed by the associated object to the right end.
Scroll Page Right |  | Scrolls the content displayed by the associated object to the right by one page.
Scroll Right |  | Nudges the content displayed by the associated object to the right.
Scroll Left |  | Nudges the content displayed by the associated object to the left.
Scroll Page Left |  | Scrolls the content displayed by the associated object to the left by one page.
Scroll to Left End |  | Scrolls the content displayed by the associated object to the left end.
Pause |  | This is for a toggle switch. It stops the auto-scrolling of the content displayed by the associated object when it is touched. When you touch it again, it resumes the auto-scrolling operation.

A scroll button group with the vertical button alignment can have the following buttons:

Button | Example | Description
Scroll to Top End |  | Scrolls the content displayed by the associated object to the top end.
Scroll Page Up |  | Scrolls the content displayed by the associated object to the top by one page.
Scroll Up |  | Nudges the content displayed by the associated object to the top.
Scroll Down |  | Nudges the content displayed by the associated object to the bottom.
Scroll Page Down |  | Scrolls the content displayed by the associated object to the bottom by one page.
Scroll to Bottom End |  | Scrolls the content displayed by the associated object to the bottom end.
Pause |  | This is for a toggle switch. It stops the auto-scrolling of the content displayed by the associated object when it is touched. When you touch it again, it resumes the auto-scrolling operation..


5.10.2 Operation Options

Scroll Button Group - Operation Options

The following operation option can be added to a scroll button group. You need to select and set this option in the Scroll Button Group dialog box.

Options | Description
Visibility Control | The scroll button group can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.10.3 Settings

Scroll Button Group - Settings

You can complete all the settings of a scroll button group in the Scroll Button Group dialog box. This dialog box contains the following two pages.

■ General
Described in Section 5.10.4.

■ Visibility
Described in Section 4.4.6.


5.10.4 General Settings

Scroll Button Group - General Settings

This section describes how to define the general settings for a scroll button group. The following is an example of the General page of the Scroll Button Group property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the scroll button groups is SBNnnnn.
Note |  | You can type a note for the scroll button group.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color.
Legend Color |  | The color of the legend for every button of the scroll button group.
Button Alignment | Horizontal | The buttons of the scroll button group are aligned in a row.
 | Vertical | The buttons of the scroll button group are aligned in a column.
Associated Object ID |  | The ID of the object that the scroll button group will be used to scroll its content. You can select the associated object from this drop-down list which displays the IDs of objects on the same screen that support the scroll operation.
End buttons |  | Check this item if you want the scroll button group to include the buttons that scroll the content to the start or to the end.
Page buttons |  | Check this item if you want the scroll button group to include the buttons that scroll the content each time by one page.
Nudge buttons |  | Check this item if you want the scroll button group to include the buttons that nudge the content.
Pause button |  | Check this item if you want the scroll button group to include the Pause button.
Button Spacing |  | The distance in pixels between two adjacent buttons.


5.11 Scrolling Object Content Using Scroll Bars

Scrolling Object Content Using Scroll Bars

You can use a scroll bar to scroll the content displayed by the associated object. The associated objects include Historic Data Display, Historic Message Display, Historic Trend Display, Operation Log Display, Alarm Display, Recipe Table, and Sub-link Table.

You can complete all the settings of a scroll bar in the Scroll Bar property sheet. This sheet contains the following two pages.

■ General
Described in Section 5.11.4.

■ Visibility
Described in Section 4.4.6.


5.11.1 Basic Operations

Scroll Bar - Basic Operations

A horizontal scroll bar has the following buttons:

Button | Description
Scroll Right | Scrolls the content displayed by the associated object to the right.
Scroll Page Right | Scrolls the content displayed by the associated object to the right by one page.
Slide Bar | You can push and move the slide bar to scroll the content displayed by the associated object. The content is scrolled in the same direction as you move the slide bar. The amount of scrolling is proportional to the displacement of the slide bar. The position of the slide bar in the scroll bar indicates the position of the viewable part of the content. The width of the slide bar indicates how much of the content is viewable.
Scroll Page Left | Scrolls the content displayed by the associated object to the left by one page.
Scroll Left | Scrolls the content displayed by the associated object to the left.

A vertical scroll bar has the following buttons:

Button | Description
Scroll Up | Scrolls the content displayed by the associated object to the top.
Scroll Page Up | Scrolls the content displayed by the associated object to the top by one page.
Slide Bar | You can push and move the slide bar to scroll the content displayed by the associated object. The content is scrolled in the same direction as you move the slide bar. The amount of scrolling is proportional to the displacement of the slide bar. The position of the slide bar in the scroll bar indicates the position of the viewable part of the content. The height of the slide bar indicates how much of the content is viewable.
Scroll Page Down | Scrolls the content displayed by the associated object to the bottom by one page.
Scroll Down | Scrolls the content displayed by the associated object to the bottom.


5.11.2 Operation Options

Scroll Bar - Operation Options

The following operation option can be added to a scroll bar. You need to select and set this option in the Scroll Bar property sheet.

Options | Description
Visibility Control | The scroll bar can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.11.3 Settings

Scroll Bar - Settings

You can complete all the settings of a scroll bar in the Scroll Bar property sheet. This sheet contains the following two pages.

■ General
Described in Section 5.11.4.

■ Visibility
Described in Section 4.4.6.


5.11.4 General Settings

Scroll Bar - General Settings

This section describes how to define the general settings for a scroll bar. The following is an example of the General page of the Scroll Bar property sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the scroll bars is SBRnnnn.
Note | You can type a note for the scroll bar.
Type | The type of scroll bar. There are two types; horizontal and vertical.
Associated Object ID | The ID of the object that will use the scroll bar to scroll its content. You can select the associated object from this drop-down list which shows the IDs of objects on the same screen that support the scroll operation.
Bar Color | The color of the scroll bar.
Legend Color | The color of the legend for the buttons of the scroll bar.


5.12 Stepping Through Word State Using Step Buttons

Stepping Through Word State Using Step Buttons

You can press a step button to write the value of the button’s next state to the specified variable.

You can complete all the settings of a step button in the Step Button property sheet. This sheet contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.12.4.

■ Text
  Described in Section 4.3.6.

■ Picture
  Described in Section 4.3.7.

■ Advanced
  Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
  Described in Section 4.3.8.


5.12.1 Basic Operations

Step Button - Basic Operations

Unlike most of the other objects, a step button displays all the states at once, with the current state highlighted, instead of displaying just the current state. A step button can let the operators know all the available states, and what the next state will be when they touch it.

The state of a step button is determined by the value of the specified variable and the specified state type. When a step button is pressed, it calculates the value of the next state, and writes that value to the specified variable. The next state is the current state plus one, when the current state is not the last state. When the current state is the last state, the next state is state 0.


5.12.2 Operation Options

Step Button - Operation Options

The following operation options can be added to a step button to make it more informative, secure, and useful. You need to select and set these options in the Step Button property sheet.

Options | Description
Touch Operation Control | The touch operation of the step button can be enabled and disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Minimum Hold Time | The touch operation will not be activated until the step button is pressed and held down for the specified time period (Minimum Hold Time). Set this option in the Advanced page.
Operation Logging | Each data change performed by the step button can be recorded in the operation log. Select and set this option in the Advanced page.
Visibility Control | The step button can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


5.12.3 Settings

Step Button - Settings

You can complete all the settings of a step button in the Step Button property sheet. This sheet contains the following six pages. Some of the pages appear only when they are needed.

■ General
Described in Section 5.12.4.

■ Text
  Described in Section 4.3.6.

■ Picture
  Described in Section 4.3.7.

■ Advanced
  Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
  Described in Section 4.3.8.


5.12.4 General Settings

Step Button - General Settings

This section describes how to define the general settings for a step button. The following is an example of the General page of the Step Button property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the step buttons is STBnnnn.
Note |  | You can type a note for this object.
Shape settings |  | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. , VFTA, [image] , Border Color, BG Color.
External Label |  | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
State |  | Select a state as the current state so you can set the BG Color for that state. You can also see how the step button looks when the selected state is highlighted. Note: The current state is always highlighted by the settings defined in the Highlight Current State group. Therefore, you cannot see the change of the BG color you made for the current state immediately. To see the change, select another state as the current state.
State Type |  | The state type of the step button. The supported types are: Value, LSB, and Custom. For details, see Section 4.4.1.1 State Types.
State Order |  | Specifies how to arrange the states on the step button. There are four different orders:
 |  | State Order | Example
 |  | Left to Right |
 |  | Right to Left |
 |  | Top to Bottom |
 |  | Bottom to Top |
Data Type |  | The data type for the variable in the Write Address field. The supported types are: 16-bit Unsigned Integer, 16-bit BCD, 32-bit Unsigned Integer, and 32-bit BCD.
Write Address | Write Address | Specifies the variable to be controlled by the step button. This variable will also be monitored to decide the state of the step button.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for this property.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for this property.
Total States |  | Specifies the number of states that the step button can display and process.
Custom State Value… |  | Click this button to define the state value for each state of the step button when the State Type is Custom. For details, see Section 4.4.1.2 Setting the Custom States of an Object.
Indication of current selection | Method | Choose the method from Display Text With Different Colors, Use Round Mark or Use Square Mark to indicate the current selection.
 | BG Color | The color to replace the shape’s BG color when selected.
Text/Mark |  | The color to replace the text or mark color when selected.
Separator Color |  | The color of the lines that are drawn between two states.


5.13 Displaying Window Screen as Information Page Using Page Selectors

Displaying Window Screen as Information Page Using Page Selectors

In a page selector, you can press a tab to view the associated page (window screen).

You can complete all the settings of a page selector in the Page Selector property sheet. This sheet contains the following three pages.

■ General
Described in Section 5.13.3.

■ Text
  Described in Section 4.3.6.

■ Picture
  Described in Section 4.3.7.


5.13.1 Basic Operations

Page Selector - Basic Operations

You can configure a page selector to contain up to 8 window screens. Each of the specified window screens is a page, and each page has an associated tab. You can specify the text and picture for each tab. At runtime, a page selector shows one of the specified pages in its viewing area. You can select a desired page to view by pressing the associated tab.


5.13.2 Settings

Page Selector - Settings

You can complete all the settings of a page selector in the Page Selector property sheet. This sheet contains the following three pages.

■ General
Described in Section 5.13.3.

■ Text
  Described in Section 4.3.6.

■ Picture
  Described in Section 4.3.7.


5.13.3 General Settings

Page Selector - General Settings

This section describes how to define the general settings for a page selector. The following is an example of the General page of the Page Selector property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the page selectors is PSnnnn.
Note |  | You can type a note for this object.
Shape settings |  | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. Picture Shape, [image] , VFTA, [image] , Border Color, BG Color.
Tab |  | Select a tab as the current tab so you can set the BG Color for that tab. You can also see how the tabs look when the selected tab is highlighted. Note: The current tab is always highlighted by the settings defined in the Highlight Current Tab group. Therefore, you cannot see the change of the BG color you made for the current tab immediately. To see the change, select another tab as the current tab.
Tab Position |  | You can select Top/Bottom/Left/Right for the location of the tab.
Number of Pages |  | Specifies the number of window screens this page selector contains.
Specify Page… |  | Click this button to open the Specify Page dialog box. You can specify the window screen for each page in this dialog box.
Highlight Current Tab |  | The settings for highlighting the text of the current tab.
 | BG Color | The color to replace the BG color of the current tab when highlighted.
 | Text Color | The color to replace the text color of the current tab when highlighted.
Tab Height |  | The height of each tab.


6.1.1 Basic Operations

Bit Lamp - Basic Operations

You can use a bit to control the appearance of a bit lamp.

A bit lamp has two states, i.e. state 0 (Off) and state 1 (On). You can set the appearance of a bit lamp for each of the two states. At runtime, a bit lamp is displayed with the appearance settings corresponding to the state of the monitored bit.

You can complete all the settings of a bit lamp in the Bit Lamp property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 6.1.4.

■ Label
Described in Section 4.3.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


6.1.2 Operation Options

Bit Lamp - Operation Options

The following operation option can be added to a bit lamp. You need to select and set this option in the Bit Lamp property sheet.

Operation | Description
Visibility Control | The object can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


6.1.3 Settings

Bit Lamp - Settings

You can complete all the settings of a bit lamp in the Bit Lamp property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 6.1.4.

■ Label
Described in Section 4.3.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


6.1.4 General Settings

Bit Lamp - General Settings

This section describes how to define the general settings for a bit lamp.

The above is an example of the General page of the Bit Lamp dialog box.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the bit lamps is BLnnnn.
Note |  | You can type a note for the object.
Transparent |  | Select this option if you want the object to have a transparent background.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. Picture Shape, [image] , Border Color, Pattern, Foreground Color, Background Color.
External Label |  | Check this option if you want the bit lamp to have an external label. Set up the external label in the External Label page.
State |  | Click this button to change the object state to 1 (On) so you can view and set the object appearance for state 1 (On).
 |  | Click this button to change the object state to 0 (Off) so you can view and set the object appearance for state 0 (Off).
Monitor Address | Address Type | Specifies the type of variable in the Monitor Address field. The bit lamp supports the following three variable types:
 |  | Variable Type | Description
 |  | Bit | The variable is a bit variable.
 |  | Word | The variable is a word variable. You need to specify which bit in the word variable is to be monitored. Specify the bit number (0~15) in the Bit Number field.
 |  | Double-word | The variable is a double-word variable. You need to specify which bit in the double-word variable is to be monitored. Specify the bit number (0~31) in the Bit Number field.
 |  | Byte | The variable is a byte variable. You need to specify which bit in the byte variable is to be monitored. Specify the bit number (0~7) in the Bit Number field.
 | Monitor Address | Specifies the bit variable to be monitored when the Address Type is Bit. Specifies the word variable that contains the bit to be monitored when the Address Type is Word. Specifies the double-word variable that contains the bit to be monitored when the Address Type is Double-word. Specifies the byte variable that contains the bit to be monitored when the Address Type is Byte.
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the Monitor Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select the desired tag for the Monitor Address field.
 | Bit Number | Specifies which bit of the variable specified in the Monitor Address field is to be monitored.


6.2.1 Basic Operations

Multistate Lamp - Basic Operations

You can use a variable to control the appearance of a multi-state lamp.

A multi-state lamp can have up to 256 states. The maximum number of states that a multi-state lamp can have is determined by the state type and the data type of the monitored variable. The following table shows the maximum in each case.

 |  | 16-bit Variable | 32-bit variable
State Type
 | Value | 256 | 256
 | LSB | 16 | 32

You need to specify the number of states for a multi-state lamp, and the number must not exceed the allowed maximum. You can set the appearance of a multi-state lamp for each of its states. At runtime, a multi-state lamp is displayed with the appearance settings corresponding to the state of the monitored variable. The state of the monitored variable is determined by the state type and value of the variable.

You can complete all the settings of a multi-state lamp in the Multi-state Lamp property sheet. This dialog box contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 6.2.4.

■ Text
Described in Section 4.3.6.

■ Picture
Described in Section 4.3.7.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


6.2.2 Operation Options

Multistate Lamp - Operation Options

The following operation option can be added to a multi-state lamp. You need to select and set this option in the Multi-state Lamp property sheet.

Operation | Description
Visibility Control | The object can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


6.2.3 Settings

Multistate Lamp - Settings

You can complete all the settings of a multi-state lamp in the Multi-state Lamp property sheet. This dialog box contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 6.2.4.

■ Text
Described in Section 4.3.6.

■ Picture
Described in Section 4.3.7.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


6.2.4 General Settings

Multistate Lamp - General Settings

This section describes how to define the general settings for a multi-state lamp. The following is an example of the General page of the Multi-state Lamp property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the multi-state lamps is MLnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object , Picture Shape, [image] , Border Color, Pattern, FG Color, BG Color
External Label |  | Check this option if you want the multi-state lamp to have an external label. Set up the external label in the External Label page.
State |  | Select a state as the current state of the multi-state lamp so you can view and set the object appearance for that state.
Data Type |  | The data type of the monitored variable. The supported data types include: 16-bit Unsigned Integer, 16-bit Signed Integer, 16-bit BCD, 32-bit Unsigned Integer, 32-bit Signed Integer, and 32-bit BCD.
Monitor Address | Monitor Address | Specifies the variable to be monitored.
 |  | Click this icon to bring up the Address Input Keypad and specify an address for the Monitor Address field.
 |  | Click this icon to bring up the Select Tag dialog box and select a tag for the Monitor Address field.
State Type |  | The state type for the state of the monitored variable. The supported state types include Value, LSB and Custom. For details, see Section 4.4.1.1 State Types.
Total States |  | Specifies the number of states that the multi-state lamp can display.
 |  | Click the button to bring up the Custom State Value dialog box to assign a positive integer for each state in the dialog box. Please see details in Section 4.4.1.2 Setting the Custom States of an Object.


6.3.1 Basic Operations

Message Display - Basic Operations

You can use a variable to select and display a predefined message with a message display.

A message display can have up to 20000 states. Each state can have a predefined message. The maximum number of states that a message display can have is determined by the state type and data type of the monitored variable. The following table shows the maximum in each case.

 |  | Type of Variable | Maximum
State Type | Bit | Bit | 2
 | Value | 16-bit | 256
 |  | 32-bit | 256
 | LSB | 16-bit | 17
 |  | 32-bit | 33
 | Value as string number | 16-bit | 20000
 |  | 32-bit | 20000

If the state type is Bit or Value or LSB, you need to specify the number of states for a message display, and the number must not exceed the allowed maximum. You can set the text (message) for each state. At runtime, a message display shows the message corresponding to the state of the monitored variable. The state of the monitored variable is determined by the state type and value of the variable.

If the state type is Value as string number, you need to select a text table and specify the first and last string number in the text table for a message display. And the string number must not exceed the allowed maximum. At runtime, a message display shows the message corresponding to data value of the monitored variable. The data value specifies intended string number in a pre-designated text table.

For example:

Text Table A is selected. The string number range is from 1 to 100

Data Value | String Number | State | String ID | Comment
0 | 0 | Invalid |  | No string is identified.
5 | 5 | 5 | A00005 |
200 | 200 | Invalid |  | Out of range. No string is identified.

Note: The differences between Message Display and Lamps are:

Lamps can display either text or picture, or both; while message display can only display text. Both message displays and lamps can display predefined text by changing the value of the monitored variable. However, only message displays can perform as a marquee that is controlled by the value of the monitored variable and a specified running speed.

You can complete all the settings of a message display in the Message Display dialog box. This dialog box contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 6.3.4.

■ Text
Described in Section 4.3.6.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


6.3.2 Operation Options

Message Display - Operation Options

The following operation option can be added to a message display. You need to select and set this option in the Message Display dialog box.

Operation | Description
Marquee | The displayed message scrolls automatically in the specified direction. When the displayed message is not long enough to cover the entire display area, the message is duplicated to fill the uncovered area in sequence. uncover
Visibility Control | The object can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


6.3.3 Settings

Message Display - Settings

You can complete all the settings of a message display in the Message Display dialog box. This dialog box contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 6.3.4.

■ Text
Described in Section 4.3.6.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


6.3.4 General Settings

Message Display - General Settings

This section describes how to define the general settings for a message display. The following is an example of the General page of the Message Display property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the message displays is MDnnnn.
Note |  | You can type a note for the object.
Transparent Background |  | Select this option if you want the object to have a transparent background.
Shape settings |  | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. , Border Color, Pattern, FG Color, BG Color
External Label |  | Check this option if you want the message display to have an external label. Set up the external label in the External Label page.
State |  | Select a state as the current state of the message display so you can view and set the Pattern, FG Color, BG Color for that state.
State Type |  | The state type of the variable that controls the message display. The supported state types include Bit, Value, LSB and Value as string number. For details, see Section 6.3.1 Basic Operations.
Data Type |  | The data type of the variable that controls the message display. The supported data types include: Bit, 16-bit Unsigned Integer, 16-bit Signed Integer, 16-bit BCD, 32-bit Unsigned Integer, 32-bit Signed Integer, and 32-bit BCD.
Monitor Address |  | Specifies the variable that controls the message display. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Total States |  | Specifies the number of states of the message display if the state type is Bit, Value or LSB.
Text Table | Text Table | Select a text table with messages for the object if the state type is Value as string number.
 | First String Number | Specifies the first string number from 1 to 20000.
 | Last String Number | Specifies the last string number from 1 to 20000.
Marquee | Marquee | Select this item if you want the displayed message to scroll automatically.
 | Running Speed | The speed of scrolling. Select from 1 to 10, 1 being the slowest and 10 being the fastest.
 | Direction | The direction of scrolling. The supported directions include Leftward, Rightward, and Upward.
Text can be scrolled by the vertical scroll bar or button |  | Select this option so you can scroll the content of the message display vertically using the associated scroll buttons or scroll bar.


7.1 Numeric Entries

Numeric Entries

You can enter a value and change the specified variable using a numeric entry.

You can complete all the settings of a numeric entry in the Numeric Entry property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.1.3.

■ Advanced
Described in Section 7.1.4.

■ Visibility
Described in Section 4.4.6.

■ Macro
Described in Section 15.2.6.

■ External Label
Described in Section 4.3.8.


7.1.1 Operation Options

Numeric Entry - Operation Options

The following operation options can be added to a numeric entry. Select and set up the options in the Numeric Entry property sheet.

Operation |  | Description
Scaling | Gain/Offset | The value of the monitored variable will be displayed in a scaled manner. The following is the scaling formula. DisplayedValue = MonitoredValue * Gain + Offset If the option is selected, the entered value will be scaled by the following formula with the same coefficients (Gain and Offset) before it is output. OutputValue = (EnteredValue – Offset) / Gain Select and set this option in the Advanced page. Note: The Gain and Offset are 32-bit floating point numbers. They have, at most, 6 significant digits. Rounding and truncation errors may occur.
 | Max./Min. | Set the Display Min/Max corresponding to the Data Min/Max. If this option is selected, the value of the monitored variable will be scaled to fit the display range before displayed. And the entered value will be scaled to fit the data range before it is output.
Range Check |  | Numeric entry will verify an entered value according to the specified maximum and minimum. If the entered value is not within the allowable range, the value will not be output. Select and set this option in the Advanced page. Note 1: When the scaling option is selected, the output value is verified instead of the entered value. OutputValue = (EnteredValue – Offset) / Gain Note 2: When the scaling option is selected, the allowable maximum and minimum shown on the numeric keypad are the scaled versions of the specified maximum and minimum. ScaledMaximum = Maximum * Gain + Offset ScaledMinimum = Minimum * Gain + Offset
Touch Operation Control |  | You can enable or disable the touch operation of the object by the specified bit or by the current user level. Select and set up this option in the Advanced page.
Timeout |  | If the keypad for data entry receives no input for the specified time period, the data entry operation will be cancelled.
Notification |  | The Object will notify the specified bit of a successful data entry operation. Select and set up this option in the Advanced page.
Operator Confirmation |  | When a value is entered by the operator, the Confirmation box will be displayed to receive the operator’s confirmation. If the operator selects “Yes”, the object will write the entered data to the specified variable. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the data entry operation will be cancelled. Select and set up this option in the Advanced page.
Change User Level |  | The current user level can be changed after the operation is performed. Select and set up this option in the Advanced page.
Operation Logging |  | The entered value and the time of the data entry will be recorded. Select and set up this option in the Advanced page.
Present the keypad at random position to lengthen the life of touch panel |  | The keypad is shown at the random position to lengthen the life time of touch panel. Select and set up this option in the Advanced page.
Designated Keypad |  | The Object will have its own keypad other than the system keypad or the customized keypad for the whole panel. Select and set up this option in the Advanced page.
Visibility Control |  | You can show or hide the object by the specified bit or by the current user level. Select and set up this option in the Visibility page.
Macro |  | Numeric entry can run a macro before or after setting a value to the specified variable. Specify and edit the macro in the Macro page.


7.1.2 Settings

Numeric Entry - Settings

You can complete all the settings of a numeric entry in the Numeric Entry property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.1.3.

■ Advanced
Described in Section 7.1.4.

■ Visibility
Described in Section 4.4.6.

■ Macro
Described in Section 15.2.6.

■ External Label
Described in Section 4.3.8.


7.1.3 General Settings

Numeric Entry - General Settings

This section describes how to define the general settings for a numeric entry. The following is an example of the General page of the Numeric Entry property sheet.

The following table describes each property in the General page.

Property

 Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the numeric entries is NEnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color.
External Label | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Data Type | The data type of the destination variable and the monitored variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), 32-Bit Signed BCD (LMD), 8-Bit Unsigned Integer and 8-bit Signed Integer.
Display Type | The display type of the value of the monitored variable. The following table shows the available display types for each data type.
Data Type | Available Display Types
16-Bit Unsigned Integer | 16-Bit Unsigned Decimal, 16-Bit Hexadecimal, 16-Bit Octal,16-Bit Binary
32-Bit Unsigned Integer | 32-Bit Unsigned Decimal, 32-Bit Hexadecimal, 32-Bit Octal, 32-Bit Binary, Password, IP Address
16-Bit Signed Integer | 16-Bit Signed Decimal
32-Bit Signed Integer | 32-Bit Signed Decimal
16-Bit BCD | 16-Bit Unsigned Decimal
32-Bit BCD | 32-Bit Unsigned Decimal
32-Bit Floating Point | 32-Bit Floating Point, Exponential Format (eg.: -1.2345e+20)
16-Bit Signed BCD (LMB) | 16-Bit Signed Decimal
32-Bit Signed BCD (LMB) | 32-Bit Signed Decimal
16-Bit Signed BCD (LMD) | 16-Bit Signed Decimal
32-Bit Signed BCD (LMD) | 32-Bit Signed Decimal
8-Bit Unsigned Integer | 8-Bit Unsigned Decimal, 8-Bit Hexadecimal, 8-Bit Binary
8-Bit Signed Integer | 8-Bit Signed Decimal
Note:

LMB: Stands for "Left Most Bit". If the left most bit of a value is "1", the value represents a negative value.

LMD: Stands for "Left Most Digit". If the left most byte of a value is "F", the value represents a negative value.

Separator | Check this option if you want the binary number to display with dot separator positioned in every four numbers. Available only when the display type is 8-Bit Binary,16-Bit Binary and 32-Bit Binary. eg.: 1111.1011.1000.0101
Write Address Specifies the destination variable where the entered value will be written.
Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Monitor Address identical to Write Address | Specifies that the monitored variable is the same as the destination variable. With this item checked, you don’t need to specify the monitored variable in the Monitor Address field.
Monitor Address Specifies the monitored variable.
Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Font | The font of the displayed value. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current text. You can change the font templates before selecting a font in that dialog box.
Text Color | The color of the displayed value.
Total Digits The number of digits to be displayed.
Note: This property applies to the display of the initial value, the allowable minimum, and the allowable maximum on the numeric keypad.
Fractional Digits When the Display Type is 32-bit Floating Point, this property specifies the number of fractional digits displayed.
When the Display Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits displayed, but also the number of least significant digits displayed as the fractional part. With this feature, an integer can be shown and entered as a fixed point number. When the Fractional Digits is nonzero, say N, the entered value will be converted to an integer according to the following formula before being output.
OutputValue = EnteredValue * (Nth power of 10)
Example 1:
Display Type | Total Digits | Fractional Digits | Justification | Monitored Value | Displayed Value
32-bit Floating Point | 4 | 2 | Zero Suppress | 12.34 | 12.34
32-bit Floating Point | 4 | 2 | Zero Suppress | 123.4 | 23.40
16-bit Signed Decimal | 5 | 2 | Zero Suppress | 12345 | 123.45
16-bit Signed Decimal | 5 | 2 | Zero Suppress | -5 | -0.05

Example 2:
Display Type | Total Digits | Fractional Digits | Entered Value | Output Value
32-bit Floating Point | 4 | 2 | 12.34 | 12.34
32-bit Floating Point | 4 | 2 | 123.4 | Error!
16-bit Signed Decimal | 5 | 2 | 123.45 | 123.45
16-bit Signed Decimal | 5 | 2 | -0.05 | -5
16-bit Signed Decimal | 5 | 2 | 3 | 300
Note: This property applies to the display of the initial value, the allowable minimum, and the allowable maximum on the numeric keypad.
Alignment | The alignment of the displayed value. There are three types of alignment: Left, Center, and Right.
Justification The justification of the displayed value. There are three types of justification:
Option | Description
Zero Suppress | The leading digits will not be displayed when they are 0.
Leading Zeros | All digits will be displayed.
Leading Spaces | The leading digits will be displayed as a blank character when they are 0.
Data Entry | Specifies how to enter a value for the numeric entry at runtime. There are two options:
Option | Description
Pop-up Keypad | You can bring up the keypad by pressing numeric entry and then enter a value with the keypad.
On-screen Keypad and/or Function Keys | You can move the cursor by using the function buttons with the operation of “Select Next Data Entry Object” or “Select Previous Data Entry Object” to select numeric entry. If there is an on-screen keypad, you can enter a value for the numeric entry immediately. You can also use the function buttons with the operation of “Increase Value By One” or “Decrease Value By One” to change the value of the destination variable.
Note: When On-screen Keypad and/or Function Keys option is selected, you can only enter a value for the numeric entry with the input focus. To set the input focus on the corresponding object, you need to click the object first.
Macro
Use | Check this option if you want the numeric entry to have a macro. Specify and edit the macro in the Macro page.
When to Run | Select the time to run the macro. A macro can be run before or after the entered value is output.


7.1.4 Advanced Settings for Numeric Entries

Advanced Settings for Numeric Entries

This section describes how to define the advanced settings for numeric entries. The following is an example of the Advanced page of the Numeric Entry property sheet.

The following table describes each property in the Advanced page.

Property |  | Description
Scaling | Scaling | Check this option if you want the displayed/output value not same as the original (monitored/entered value) but in a specified scaled version.
 | Gain/Offset | Set the Gain and Offset of the scaling formula. If this option is selected, the monitored value will be scaled by the following formula with specified gain and offset. DisplayedValue = MonitoredValue * Gain + Offset And the entered value will be scaled by the following formula with the same coefficients (Gain and Offset) before it is output. OutputValue = (EnteredValue – Offset) / Gain Note: The Gain and Offset are 32-bit floating point numbers. They have, at most, 6 significant digits. Rounding and truncation errors may occur.
 | Max/Min | Set the minimal and maximal values of the data and their corresponding display values If this option is selected, the value of the monitored variable will be scaled to fit the display range before displayed. And the entered value will be scaled to fit the data range before it is output.
Range Check | Range Check | Check this option if you want numeric entry to verify an entered value according to the specified minimum and maximum. If the entered value is not within the allowable range, the entered value will not be output. Note 1: When the scaling option is selected, the output value is verified instead of the entered value. OutputValue = (EnteredValue – Offset) / Gain Note 2: When the scaling option is selected, the allowable maximum and minimum shown on the keypad are the scaled versions of the specified maximum and minimum. ScaledMaximum = Maximum * Gain + Offset ScaledMinimum = Minimum * Gain + Offset
 | Variable Range | Check this option if the minimum and maximum are specified by the designated variables at runtime.
 | Min. | Specifies the minimum when the Variable Range is not selected. When the Variable Range is selected, this property specifies the variable that stores the minimum at runtime. Click [image] to enter an address. Click [image] to select a tag.
 | Max. | Specifies the maximum when the Variable Range is not selected. When the Variable Range is selected, this property specifies the variable that stores the maximum at runtime. Click [image] to enter an address. Click [image] to select a tag.
Touch Operation Control | Enabled by Bit | Check this option so the touch operation of numeric entry will be enabled and disabled by the specified bit.
 | Control Bit | Specifies the bit that enables and disables the touch operation. Click [image] to enter a bit address. Click [image] to select a bit tag.
 | Enabling State | Specifies the state (On or Off) that enables the touch operation.
 | Enabled by User Level | Check this item so the touch operation of numeric entry will be enabled and disabled by the current user level.
 | Lowest Enabling User Level | Specifies the lowest user level that is required to enable the touch operation.
 | Show Disabled Sign | Check this option so the touch operation disabled sign will be shown on numeric entry when the touch operation is disabled.
Timeout | Timeout | Check this option so data entry will be cancelled if the numeric keypad does not receive any input within the specified time.
 | Timeout Time | Specifies the maximum time that the numeric keypad will wait to receive a new input. If there is no input within the specified time, the numeric keypad will be closed and data entry will be cancelled.
Notification | Notification | Check this option so numeric entry will notify the specified bit after it finishes outputting the entered value to the destination variable.
 | Signal | Select one of the following signals for the notification:
 |  | Signal | Description
 |  | Level | Set a specified bit to the specified state.
 |  | Pulse | Send a positive pulse to the specified bit.
 | Bit | Specifies the bit that receives the notification.
 | State | Specifies the state (On or Off) that is used for the notification.
Operator Confirmation | Operator Confirmation | Check this option if you want the operator to confirm what he/she enters for the numeric entry. The Confirmation box will be displayed when a value is entered for numeric entry. If the operator selects “Yes” in the Confirmation box, numeric entry will write the entered value to the specified variable. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), numeric entry will cancel the data entry operation.
 | Maximum Waiting Time | Specifies the maximum time that numeric entry will wait for the operator’s confirmation. Data entry will be cancelled if the operator does not respond within this time.
Change User Level | Change User Level | Check this option if you want to change the current user level after the operation is performed.
 | New User Level | Set the new current user level.
Operation Logging | Operation Logging | Check this option so the following three items will be recorded in the operation log when numeric entry outputs the entered value. There are three recorded items: 1) The time when the operation is performed 2) The entered value 3) The predefined operation message
 | Message | Enter the operation message of the first language.
 |  | Click this button to bring up the Operation Message dialog box so that you can edit the operation message for all the languages.
Present the keypad at random position to lengthen the life of touch panel |  | Check this option if you want the keypad displayed at the random position.
Designated Keypad | Designated Keypad | Check this option if you want the numeric entry to have an independent keypad other than the system keypad or the customized keypad used for whole panel application.
 | Screen | Select a window screen as the keypad.


7.2 Numeric Displays

Numeric Displays

You can use a numeric display to show the value of the specified variable.

You can complete all the settings of a numeric display in the Numeric Display property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.2.3.

■ Advanced
Described in Section 7.2.4.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


7.2.1 Operation Options

Numeric Display - Operation Options

The following operation options can be added to a numeric display. Select and set up the options in the Numeric Display property sheet.

Operation |  | Description
Scaling | Gain/Offset | The value of the monitored variable will be scaled by the following formula before it is displayed. DisplayedValue = MonitoredValue * Gain + Offset Select and set this option in the Advanced page. Note: The Gain and Offset are 32-bit floating point numbers. They have, at most, 6 significant digits. Rounding and truncation errors may occur.
 | Max./Min. | Set the Display Min/Max corresponding to the Data Min/Max. If this option is selected, the value of the monitored variable will be scaled to fit the display range before displayed. And the entered value will be scaled to fit the data range before it is output.
Range Display |  | You can specify a low limit and a high limit for the numeric display. The limits can be constants or variables. At runtime, when the value of the monitored variable is below the low limit, the numeric display will show the value with the text color and the BG color set for the low limit. When the value of the monitored variable is above the high limit, the numeric display will show the value with the text color and the BG color set for the high limit.
Visibility Control |  | You can show and hide the numeric display by the specified bit or the current user level. Select and set this option in the Visibility page.


7.2.2 Settings

Numeric Display - Settings

You can complete all the settings of a numeric display in the Numeric Display property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.2.3.

■ Advanced
Described in Section 7.2.4.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


7.2.3 General Settings

Numeric Display - General Settings

This section describes how to define the general settings for a numeric display. The following is an example of the General page of the Numeric Display property sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the numeric displays is NDnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object.. , Border Color, BG Color
External Label | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Data Type | The data type of the monitored variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), 32-Bit Signed BCD (LMD), 8-Bit Unsigned Integer and 8-Bit Signed Integer.
Display Type | The display type of the value of the monitored variable. The following table shows the available display types for each data type:
 | Data Type |  | Available Display Types
 | 16-Bit Unsigned Integer |  | 16-Bit Unsigned Decimal, 16-Bit Hexadecimal, 16-Bit Octal, 16-Bit Binary
 | 32-Bit Unsigned Integer |  | 32-Bit Unsigned Decimal, 32-Bit Hexadecimal, 32-Bit Octal, 32-Bit Binary
 | 16-Bit Signed Integer |  | 16-Bit Signed Decimal
 | 32-Bit Signed Integer |  | 32-Bit Signed Decimal
 | 16-Bit BCD |  | 16-Bit Unsigned Decimal
 | 32-Bit BCD |  | 32-Bit Unsigned Decimal
 | 32-Bit Floating Point |  | 32-Bit Floating Point, Exponential Format
 | 16-Bit Signed BCD (LMB) |  | 16-Bit Signed Decimal
 | 32-Bit Signed BCD (LMB) |  | 32-Bit Signed Decimal
 | 16-Bit Signed BCD (LMD) |  | 16-Bit Signed Decimal
 | 32-Bit Signed BCD (LMD) |  | 32-Bit Signed Decimal
 | 8-Bit Unsigned Integer |  | 8-Bit Unsigned Decimal, 8-Bit Hexadecimal, 8-Bit Binary
 | 8-Bit Signed Integer |  | 8-Bit Signed Decimal
Separator | Check this option if you want the binary number to display with dot separator positioned in every four numbers. Available only when the display type is 8-Bit Binary,16-Bit Binary and 32-Bit Binary.
Monitor Address | Specifies the monitored variable. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Font | The font of the displayed value.
Text Color | The color of the displayed value.
Total Digits | The number of digits to be displayed.
Fractional Digits | When the Display Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed. When the Display Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown as a fixed point number. Example:
 | Display Type | Total Digits | Fractional Digits | Justification | Monitored Value | Displayed Value
 | 32-bit Floating Point | 4 | 2 | Zero Suppress | 12.34 | 12.34
 | 32-bit Floating Point | 4 | 2 | Zero Suppress | 123.4 | 23.40
 | 16-bit Signed Decimal | 5 | 2 | Zero Suppress | 12345 | 123.45
 | 16-bit Signed Decimal | 5 | 2 | Zero Suppress | -5 | -0.05
Alignment | The alignment of the displayed value. There are three types of alignment: Left, Center, and Right.
Justification | The justification of the displayed value. There are three types of justification:
 | Option | Description
 | Zero Suppress | The leading digits will not be displayed when they are 0.
 | Leading Zeros | All digits will be displayed.
 | Leading Spaces | The leading digits will be displayed as blank characters when they are 0.


7.2.4 Advanced Settings

Numeric Display - Advanced Settings

This section describes how to define the advanced settings for a numeric display. The following is an example of the Advanced page of the Numeric Display property sheet.

The following table describes each property in the Advanced page.

Property |  |  | Description
Scaling | <Check Box> |  | Check this option if you want the value of the monitored variable to be displayed in a scaled manner.
 | Gain/Offset |  | The Gain and Offset of the scaling formula. If this option is selected, the monitored value will be scaled by the following formula with specified gain and offset. DisplayedValue = MonitoredValue * Gain + Offset Note: The Gain and Offset are 32-bit floating point numbers. They have at most 6 significant digits. The rounding and truncation may happen.
 | Max/Min |  | Set the Display Min/Max corresponding to the Data Min/Max. If this option is selected, the value of the monitored variable will be scaled to fit the display range before displayed. And the entered value will be scaled to fit the data range before it is output.
Range Display | <Check Box> |  | Check this option if you want the numeric display to display the value with a different color when it is below the specified low limit or above the specified high limit.
 | Variable Range |  | Check this option if you want the low limit and high limit to be specified by the designated variables at runtime.
 | Low Limit |  | Specifies the low limit when the Variable Range is not selected. When the Variable Range is selected, this property specifies the variable that stores the low limit at runtime. Click [image] to enter an address. Click [image] to select a tag.
 | High Limit |  | Specifies the high limit when the Variable Range is not selected. When the Variable Range is selected, this property specifies the variable that stores the high limit at runtime. Click [image] to enter an address. Click [image] to select a tag.
 | Below Low Limit | Text Color | The text color for the low limit.
 |  | Background Color | The shape’s BG color for the low limit.
 |  | Display a string of the special character instead of the number | Check the option if you want to show a string of the designated character instead of the number when the number is below the low limit.
 |  | Special Character | Select a character to indicate that the number is below the low limit. The character can be any of "! * + - ?".
 | Above High Limit | Text Color | The text color for the high limit.
 |  | Background Color | The shape’s BG color for the high limit.
 |  | Display a string of the special character instead of the number | Check the option if you want to show a string of the designated character instead of the number when the number is above the high limit.
 |  | Special Character | Select a character to indicate that the number is above the high limit. The character can be any of "! * + - ?".


7.3.1 Advanced Features

Advanced Numeric Displays

An advanced numeric display provides the following advanced features:
1) You can specify an arithmetic expression or a macro for the object to calculate the display value.
2) You can specify an arithmetic expression or a macro for the object to convert an operator entered value to an output value.
3) You can specify up to 10 ranges for the object to display.

You can complete all the settings of a numeric display in the Numeric Display property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.3.4.

■ Range
Described in Section 7.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ Display Macro
Described in Section 15.2.6.

■ Output Macro
Described in Section 15.2.6.


7.3.2 Operation Options

Advanced Numeric Display - Operation Options

The following operation options can be added to an advanced numeric display. Select and set the options in the Advanced Numeric Display property sheet.

Options | Description
Range Display | The advanced numeric display can support up to 10 fixed ranges or 3 variable ranges. You can define the text color, BG color, and lower bound for each range. At runtime, the advanced numeric display displays the value using color settings for the range to which the value belongs.
Range Check | The advanced numeric display will verify the entered value according to the specified maximum and minimum. If the entered value is not within the allowable range, the value will not be output. Select and set this option in the Range page. Note: If the output expression or the output macro is defined, the converted value stored in the variable $W is verified instead of the entered value.
Touch Operation Control | You can enable and disable the touch operation of the advanced numeric display by the specified bit or the current user level. Select and set this option in the Advanced page.
Timeout | The keypad displayed for the advanced numeric display will be closed and the data entry operation cancelled after the keypad receives no input for the specified time period.
Notification | The advanced numeric display will notify the specified bit when it finishes outputting the entered value. Select and set this option in the Advanced page.
Operator Confirmation | The Confirmation box will be displayed when a value is entered for the advanced numeric display. If the operator selects “Yes” in the Confirmation box, the advanced numeric display will write the entered value to the specified variable. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the advanced numeric display will cancel the data entry operation. Select and set this option in the Advanced page.
Change User Level | The current user level can be changed after the operation is performed. Select and set up this option in the Advanced page.
Operation Logging | The time, the entered value, and the predefined operation message will be recorded when the advanced numeric display outputs the entered value. Select and set this option in the Advanced page.
Designated Keypad | The Object will have its own keypad other than the system keypad or the customized keypad for the whole panel. Select and set up this option in the Advanced page.
Visibility Control | You can show and hide the advanced numeric display by the specified bit or the current user level. Select and set this option in the Visibility page.


7.3.3 Settings

Advanced Numeric Display - Settings

You can complete all the settings of a numeric display in the Numeric Display property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.3.4.

■ Range
Described in Section 7.3.5.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.

■ Display Macro
Described in Section 15.2.6.

■ Output Macro
Described in Section 15.2.6.


7.3.4 General Settings

Advanced Numeric Display - General Settings

This section describes how to define the general settings for an advanced numeric display. The following is an example of the General page of the Advanced Numeric Display property sheet.

The following table describes each property in the General page.

Property

 Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the advanced numeric displays is ANDnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object, [image], Border Color, BG Color
External Label | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Data Type | The data type of the variables, arithmetic expressions, and macros of the advanced numeric display. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), and 32-Bit Signed BCD (LMD).
Display Type | The display type of the advanced numeric display. The following table shows the available display types for each data type.
Data Type | Available Display Types
16-Bit Unsigned Integer | 16-Bit Unsigned Decimal, 16-Bit Hexadecimal, 16-Bit Octal
32-Bit Unsigned Integer | 32-Bit Unsigned Decimal, 32-Bit Hexadecimal, 32-Bit Octal
16-Bit Signed Integer | 16-Bit Signed Decimal
32-Bit Signed Integer | 32-Bit Signed Decimal
16-Bit BCD | 16-Bit Unsigned Decimal
32-Bit BCD | 32-Bit Unsigned Decimal
32-Bit Floating Point | 32-Bit Floating Point, Exponential Format
16-Bit Signed BCD (LMB) | 16-Bit Signed Decimal
32-Bit Signed BCD (LMB) | 32-Bit Signed Decimal
16-Bit Signed BCD (LMD) | 16-Bit Signed Decimal
32-Bit Signed BCD (LMD) | 32-Bit Signed Decimal
Display Monitor Address Select this option so the advanced numeric display will monitor the variable specified in the Monitor Address field and display its value. When this option is selected, you need to specify the monitored variable.
Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Expression Select this option so the advanced numeric display will display the result of the arithmetic expression specified in the Expression field. ?When this option is selected, you need to specify the arithmetic expression that calculates the value to be displayed.
Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Macro | Select this option so the advanced numeric display will run the macro defined in the Display Macro page before displaying the value of the internal variable $D. The macro can decide the value displayed by saving the desired value in the internal variable $D.
Operator Input | Select this option so the advanced numeric display will allow the operator to enter values for it.
Write Address | Specifies the destination variable where the entered value will be written to when the Operator Input is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Output | Direct | Select this option so the advanced numeric display will write the entered value to the destination variable specified in the Write Address field directly.
Expression Select this option so the advanced numeric display will write the result of the arithmetic expression specified in the Expression field. When this option is selected, you need to specify the arithmetic expression that calculates the value to be output. To use the entered value as an operand in the expression, specify the internal variable $K for the entered value.
Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Macro | Select this option so the advanced numeric display will run the macro defined in the Output Macro page before writing the value of the internal variable $W to the destination variable. The macro can decide the value to be output by saving the desired value in the internal variable $W. To use the entered value in macro commands as a parameter, specify the internal variable $K for the entered value.
Font | The font of the displayed value. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current displayed value. You can change the font templates before selecting a font in that dialog box.
Text Color | The color of the displayed value.
Total Digits The number of digits to be displayed.
Note: This property applies to the display of the initial value, the allowable minimum, and the allowable maximum on the numeric keypad.
Fractional Digits When the Display Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed.
When the Display Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown and entered as a fixed point number. When the Fractional Digits is nonzero, say N, the entered value will be converted to an integer according to the following formula before being output.
OutputValue = EnteredValue * (Nth power of 10)
Example 1:
Display Type | Total Digits | Fractional Digits | Justification | Monitored Value | Displayed Value
32-bit Floating Point | 4 | 2 | Zero Suppress | 12.34 | 12.34
32-bit Floating Point | 4 | 2 | Zero Suppress | 123.4 | 23.40
16-bit Signed Decimal | 5 | 2 | Zero Suppress | 12345 | 123.45
16-bit Signed Decimal | 5 | 2 | Zero Suppress | -5 | -0.05

Example2:
Display Type | Total Digits | Fractional Digits | Entered Value | Output Value
32-bit Floating Point | 4 | 2 | 12.34 | 12.34
32-bit Floating Point | 4 | 2 | 123.4 | Error!
16-bit Signed Decimal | 5 | 2 | 123.45 | 12345
16-bit Signed Decimal | 5 | 2 | -0.05 | -5
16-bit Signed Decimal | 5 | 2 | 3 | 300
Note: This property applies to the display of the initial value, the allowable minimum, and the allowable maximum on the numeric keypad.
Alignment | The alignment of the displayed value. There are three types of alignment: Left, Center, and Right.
Justification The justification of the displayed value. There are three types of justification:
Option | Description
Zero Suppress | The leading digits will not be displayed when they are 0.
Leading Zeros | All digits will be displayed.
Leading Spaces | The leading digits will be displayed as blank characters when they are 0.


7.3.5 Range Settings

Advanced Numeric Display - Range Settings

This section describes how to define the range settings for an advanced numeric display. The following is an example of the Range page of the Advanced Numeric Display property sheet.

The following table describes each property in the Range page.

Property |  |  | Description
Range Display | Range Display |  | Check this option if you want the advanced numeric display to support the range display. The advanced numeric display can support up to 10 fixed ranges or 3 variable ranges. You can define the text color, BG color, and lower bound for each range. At runtime, the monitored value within a range will be displayed with the color setting for that range.
 | Variable Bound (3 ranges) |  | Check this option so the lower bounds of range 1 and range 2 will be determined at runtime by the variables specified in the Lower Bound fields for Range 1 and Range 2. The advanced numeric display supports 3 ranges when Variable Bound is selected. When Variable Bound is not selected, the advanced numeric display can support up to 10 ranges. You need to specify the lower bounds for every range except the lowest range.
 | Number of Ranges |  | The number of ranges that the advanced numeric display supports.
 | Range 1(Highest) | Lower Bound | Specifies the lower bound of range 1 when Variable Bound is not selected. When Variable Bound is selected, this property specifies the variable whose value will be the lower bound of range 1 at runtime. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 |  | Text Color | The text color for range 1.
 |  | BG Color | The shape’s BG color for range 1.
 |  | Blink | Check the item when you want range 1 to be displayed as blinking.
 | Range 2 | Lower Bound | Specifies the lower bound of range 2 when Variable Bound is not selected. When Variable Bound is selected, this property specifies the variable whose value will be the lower bound of range 2 at runtime. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 |  | Text Color | The text color for range 2.
 |  | BG Color | The shape’s BG color for range 2.
 |  | Blink | Check the item when you want range 2 to be displayed as blinking.
 | Range 3 to Range 10 | Lower Bound | Specifies the lower bound of the corresponding range when the range is not the lowest range.
 |  | Text Color | The text color for the corresponding range.
 |  | BG Color | The shape’s BG color for the corresponding range.
 |  | Blink | Check the item when you want the corresponding range to be displayed as blinking.
Range Check | Range Check |  | Check this option if you want the advanced numeric display to verify the entered value according to the specified minimum and maximum. If the entered value is not within the allowable range, the entered value will not be output. Note: If the output expression or the output macro is defined, the converted value stored in the variable $W is verified instead of the entered value.
 | Variable Range |  | Check this option so the minimum and maximum will be determined at runtime by the variables specified in the Minimum and Maximum fields.
 | Min. |  | Specifies the minimum when the Variable Range is not selected. When the Variable Range is selected, this property specifies the variable whose value is the minimum. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Max. |  | Specifies the maximum when the Variable Range is not selected. When the Variable Range is selected, this property specifies the variable whose value is the maximum. Click [image] to enter an address for this field. Click [image] to select a tag for this field.


7.4 Character Entries

Character Entries

You can enter an ASCII or Western European or Cyrillic or simplified Chinese string for a variable using a character entry. If the target panel is the HMI Runtime, you can also use this object to enter a Unicode string. For the applications that the operator needs to switch between the ASCII character keypad and the Pinyin keypad, the HMI unit can memorize the type of keypad that was used the last time and display the same type of keypad for the next character entry.

You can complete all the settings of a character entry in the Character Entry property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.4.3.

■ Advanced
Described in Section 7.4.4.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


7.4.1 Operation Options

Character Entry - Operation Options

The following operation options can be added to a character entry. Select and set up the options in the Character Entry property sheet.

Option | Description
Touch Operation Control | You can enable or disable the touch operation of the object by the specified bit or by the current user level. Select and set up this option in the Advanced page.
Timeout | If the keypad for data entry receives no input for the specified time period, the data entry operation will be cancelled.
Notification | The Object will notify the specified bit of a successful data entry operation. Select and set up this option in the Advanced page.
Operator Confirmation | When a character string is entered by the operator, the Confirmation box will be displayed for the operator’s confirmation. If the operator selects “Yes”, the object will write the entered data to the specified variable. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the data entry operation will be cancelled. Select and set up this option in the Advanced page.
Change User Level | The current user level can be changed after the operation is performed. Select and set up this option in the Advanced page.
Operation Logging | The entered character string and time of data entry will be recorded. Select and set up this option in the Advanced page.
Designated Keypad | The Object will have its own keypad other than the system keypad or the customized keypad for the whole panel. Select and set up this option in the Advanced page.
Visibility Control | You can show or hide the object by the specified bit or by the current user level. Select and set up this option in the Visibility page.


7.4.2 Settings

Character Entry - Settings

You can complete all the settings of a character entry in the Character Entry property sheet. This sheet contains the following four pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.4.3.

■ Advanced
Described in Section 7.4.4.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


7.4.3 General Settings

Character Entry - General Settings

This section describes how to define the general settings for character entries. The following is an example of the General page of the Character Entry property sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for Character entries is TEnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
External Label | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Character Set | Select one of the following five character sets to encode characters into a string of code units.
 | Character Set |  | Description
 | ASCII (US) |  | Defines 128 characters. Uses 8 or 16 bits per character.
 | ISO-8859-1 (Western European) |  | Covers mostly Western European languages. Uses 8 or 16 bits per character.
 | ISO-8859-5 (Cyrillic) |  | Covers languages using a Cyrillic alphabet such as Bulgarian, Belarusian, Russian, Serbian and Macedonian. Uses 8 or 16 bits per character.
 | Unicode |  | Available only when the target panel is the HMI Runtime. Each character occupies one word and the code is Unicode.
 | Unicode (Chinese Class 1 & 2, PRC ) |  | Covers mostly Simplified Chinese characters for use in mainland China. Each character occupies one word and the code is Unicode.
Write Address | Specifies the destination variable where the entered character string will be written to. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Total Characters | Specifies the number of characters that the Character entry can display and the destination variable can receive.
Append a null character | Check this option so the Character entry will always append a null character to the entered character string before outputting it.
Accept Bar Code Input | Check this option so the bar code input from the bar code reader connected to the specified USB port will be displayed on the character keypad.
Byte Swap | Check this option to display high byte first and then low byte.
Monitor Address identical to Write Address | Specifies that the monitored variable is the same as the destination variable. With this item checked, you don’t need to specify the monitored variable in the Monitor Address field.
Monitor Address | Specifies the monitored variable. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Null Terminated | When Null Terminated is not selected, the object will display all the characters in the associated memory up to the specified length. For the character of code 0, the object will display a space instead. When Null Terminated is selected, the object will display all the characters in the associated memory up to the specified length if there is no character of code 0. If there is a character of code 0, the object will not display the character of code 0 and the remaining characters after it.
Font | The font of the displayed string. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current displayed string. You can change the font templates before selecting a font in that dialog box.
Text Color | The color of the displayed string.
Alignment | The alignment of the displayed value. There are three types of alignment: Left, Center, and Right.
Code Type | Select one of the following two code types.
 | Type | Description
 | Byte | Each character occupies one byte.
 | Word | Each character occupies one word.
 | Available only when the character set is ASCII (US) or ISO-8859-1 (Western European) or ISO-8859-5 (Cyrillic).
Data Entry | Specifies how to enter a character string for the Character entry at runtime. There are two options:
 | Option | Description
 | Pop-up Keypad | You can bring up the keypad by pressing the Character entry, and then enter a character string with the keypad.
 | On-screen Keypad and/or Function Keys | You can move the cursor by using the function buttons with the operation of “Select Next Data Entry Object” or “Select Previous Data Entry Object” to select the Character entry. If there is an on-screen keypad, you can enter a character string for the Character entry with that keypad.
 | Note: When the On-screen Keypad and/or Function Keys option is selected, you can only enter a character string for the Character entry with the input focus. To set the input focus to the corresponding object, you need to click that object first.


7.4.4 Advanced Settings

Character Entry - Advanced Settings

This section describes how to define the advanced settings for character entries. The following is an example of the Advanced page.

The following table describes each property in the Advanced page.

Property |  | Description
Touch Operation Control | Enabled by Bit | Check this option so the touch operation of the Character entry will be enabled and disabled by the specified bit.
 | Control Bit | Specifies the bit that enables and disables the touch operation. Click [image] to enter a bit address. Click [image] to select a bit tag.
 | Enabling State | Specifies the state (On or Off) that enables the touch operation.
 | Enabled by User Level | Check this item so the touch operation of the Character entry will be enabled and disabled by the current user level.
 | Lowest Enabling User Level | Specifies the lowest user level that is required to enable the touch operation.
 | Show Disabled Sign | Check this option for the touch operation disabled sign to be displayed on the Character entry when the touch operation is disabled.
Timeout | Timeout | Check this option so data entry will be cancelled if the numeric keypad does not receive any input within the specified time.
 | Timeout Time | Specifies the maximum time that the numeric keypad will wait to receive a new input. If there is no input within the specified time, the Character keypad will be closed and data entry will be cancelled.
Notification | Notification | Check this option so the Character entry will notify the specified bit after it finishes outputting the entered value to the destination variable.
 | Signal | Select one of the following signals for the notification:
 |  | Signal | Description
 |  | Level | Set the specified bit to the specified state.
 |  | Pulse | Send a positive pulse to the specified bit.
 | Bit | Specifies the bit that receives the notification.
 | State | Specifies the state (On or Off) that is used for the notification.
Operator Confirmation | Operator Confirmation | Check this option if you want the operator to confirm what he/she enters into the numeric entry. The Confirmation box will be displayed when a value is entered into the Character entry. If the operator selects “Yes” in the Confirmation box, the numeric entry will write the entered value to the specified variable. If the operator selects “No” or the operator does not respond within the specified time period (Maximum Waiting Time), the Character entry will cancel the data entry operation.
 | Maximum Waiting Time | Specifies the maximum time that the Character entry will wait for the operator’s confirmation. Data entry will be cancelled if the operator does not respond within this time.
Change User Level | Change User Level | Check this option if you want to change the current user level after the operation is performed.
 | New User Level | Set the new current user level.
Operation Logging | Operation Logging | Check this option so the following three items will be recorded in the operation log when the Character entry outputs the entered value. There are three recorded items: 1) The time when the operation is performed 2) The entered Character 3) The predefined operation message
 | Message | Enter the operation message of the first language here.
 |  | Click this button to bring up the Operation Message dialog box so that you can edit the operation message for all the languages.
Designated Keypad | Designated Keypad | Check this option if you want the character entry to have an independent keypad other than the system keypad or the customized keypad used for whole panel application.
 | Screen | Select a window screen as the keypad.


7.5 Character Displays

Character Displays

You can use a character display to display the string stored in a variable. This object can display Unicode string if the target panel is the HMI Runtime.
Note: The difference between a character display and a text object is:

A character display is used either to display text, request text, or both. The text of the Character display is not allowed to be set at design time but can easily be set at run time. You can specify the text by changing its defined variable.
A text object can be used to create a label at design time, which is a short text that accompanies another control to indicate its use. The text object cannot be changed at run time.

You can complete all the settings of a character display in the Character Display property sheet. This sheet contains the following three pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.5.3.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


7.5.1 Operation Options

Character Display - Operation Options

The following operation option can be added to a character display. Select and set up the option in the Character Display property sheet.

Options | Description
Visibility Control | You can show or hide the Character display by the specified bit or by the current user level. Select and set up this option in the Visibility page.


7.5.2 Settings

Character Display - Settings

You can complete all the settings of a character display in the Character Display property sheet. This sheet contains the following three pages. Some of the pages appear only when they are needed.

■ General
Described in Section 7.5.3.

■ Visibility
Described in Section 4.4.6.

■ External Label
Described in Section 4.3.8.


7.5.3 General Settings

Character Display - General Settings

This section describes how to define the general settings for character displays. The following is an example of the General page of the Character Display property sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for Character displays is TDnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
External Label | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Character Set | The types of character codes of the string in the monitored variable. You can select ASCII (US) code or ISO-8859-1(Western European) or ISO-8859-5(Cyrillic) or Unicode (Chinese Class 1 & 2, PRC) or Unicode (Chinese Class 1 & 2, PRC & Taiwan) . If the target panel is a PC, the Unicode is also an option.
Used for keypad display | Check this option if the character display is used to display the input from a custom keypad.
Display asterisks(*) instead | If the character display is used for custom keypad, you can check this option to display asterisks instead of the character.
Monitor Address | Specifies the monitored variable. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Total Characters | Specifies the number of characters that the Character display can display.
Null Terminated | When Null Terminated is not selected, the object will display all the characters in the associated memory up to the specified length. For the character of code 0, the object will display a space instead. When Null Terminated is selected, the object will display all the characters in the associated memory up to the specified length if there is no character of code 0. If there is a character of code 0, the object will not display the character of code 0 and the remaining characters after it.
Font | The font of the displayed string. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current displayed string. You can change the font templates before selecting a font in that dialog box.
Text Color | The color of the displayed string.
Alignment | The alignment of the displayed value. There are three types of alignment: Left, Center, and Right.
Code Size | The size of each character. You can select Byte or Word.
Byte Swap | Check this option to display high byte first and then low byte.


7.6 Time Displays

Time Displays

You can use a time display to show the time of the panel.

You can complete all the settings of a time display in the Time Display dialog box. This dialog box contains the following one pages.

■ General
Described in Section 7.6.1.


7.6.1 Settings

Time Display - Settings

You can complete all the settings of a time display in the Time Display property sheet. The following is an example of the sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the time displays is TDnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Format | The format of how the time is displayed. There are two formats available.
 | Format | Description
 | HH:MM | HH: 00-23 (hour); MM: 00-59 (minute)
 | HH:MM:SS | HH: 00-23 (hour); MM: 00-59 (minute); SS: 00-59 (second)
 | MM:SS | MM: 00-59 (minute); SS: 00-59 (second)
 | HH:MM PM | HH: 00-23 (hour); MM: 00-59 (minute); PM/AM: Prior to Midnight / After Midnight
 | HH:MM:SS PM | HH: 00-23 (hour); MM: 00-59 (minute); SS: 00-59 (second); PM/AM: Prior to Midnight / After Midnight
Font | The font of the text. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current time. You can change the font templates before selecting a font in that dialog box.
Text Color | The color of the text.
Alignment | The alignment of the text in the object. There are three kinds of alignment available: Left, Center, and Right.


7.7 Date Displays

Date Displays

You can use a date display to show the date of the panel.

You can complete all the settings of a time display in the Time Display dialog box. This dialog box contains the following one pages.

■ General
Described in Section 7.7.1.


7.7.1 Settings

Date Display - Settings

You can complete all the settings of a date display in the Date Display property sheet. The following is an example of the sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the date displays is DDnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Format | The format of how the date is displayed. There are 13 formats available: dd/mm/yy, mm/dd/yy, yy/mm/dd, dd.mm.yy, mm.dd.yy, yy.mm.dd, dd-mm-yy, mm-dd-yy, yy-mm-dd, dd-MMM-yy, MMM-dd-yy, yy-MMM-dd and yyyy/mm/dd. To change the date display format, choose one from the drop-down table. Note: dd: 01-31 (day); mm: 01-12 (month); yy: 00-99 (year); yyyy: 0000-9999(year); MMM: JAN-DEC (month)
Font | The font of the text. You can use the drop-down list to select a font, or click [image] to bring up the Font Templates dialog box and select a font for the current date. You can change the font templates before selecting a font in that dialog box.
Text Color | The color of the text.
Alignment | The alignment of the text in the object. There are three kinds of alignment available: Left, Center, and Right.


7.8 Day-of-week Displays

Day-of-week Displays

You can use a day-of-week display to show the day-of-week of the panel.

You can complete all the settings of a day-of-week display in the Day-of-week Display property sheet. This sheet contains the following two pages.

■ General
Described in Section 7.8.2.

■ Text
Described in Section 4.3.6.

Note: When using the Text page to specify the text for each day, note that state 0 corresponds to Sunday, state 1 corresponds to Monday, and so on.


7.8.1 Settings

Day-of-week Display - Settings

You can complete all the settings of a day-of-week display in the Day-of-week Display property sheet. This sheet contains the following two pages.

■ General
Described in Section 7.8.2.

■ Text
Described in Section 4.3.6.

Note: When using the Text page to specify the text for each day, note that state 0 corresponds to Sunday, state 1 corresponds to Monday, and so on.


7.8.2 General Settings

Day-of-week Display - General Settings

This section describes how to define the general settings for a day-of-week display. The following is an example of the General page of the Day-of-week property sheet.

The following table describes each property in the General page of the Day-of-week property sheet.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the day-of-week displays is DWnnnn.
Note | You can type a note for the object.
Transparent Background | Select this option if you want the object to have a transparent background.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, Pattern, FG Color, BG Color
Day | Select a day from 0 to 6 so you can view and set the Pattern, FG Color, and BG Color for that day. Day 0 corresponds to Sunday, day 1 corresponds to Monday, and so on.


8.1.1 Basic Operations

Bar Graph - Basic Operations

A bar graph shows the value of a monitored variable by displaying a bar with variable length. When the value of the variable increases or decreases, the length of the bar increases or decreases accordingly. A bar graph can have a scale and the scale enables you to measure the length of the bar and read the current value of the monitored variable.
There are two bar types that a bar graph can have: a polar bar and a bipolar bar. The polar bar can only move at one end, but the bipolar bar can move both ends. The bar and the scale can be displayed in any of the following four directions:

Type | Upward | Downward | Leftward | Rightward
Polar Bar (Monitored Value = 60) | upward-polar bar | downward-polar bar | leftward-polar bar | rightward-polar bar
Bipolar Bar (Monitored Value = 60 Middle Point = 50) | upward-bipolar bar | downward-bipolar bar | leftward-bipolar bar | rightward-bipolar bar

A bar graph can also have a scale, forward markers, backward markers and a percentage display.

Note:
* If the bar graph is upward or downward, the scale and forward/backward markers will be located on the left or right sides.
* If the bar graph is leftward or rightward, the scale and forward/backward markers will be located at the top or bottom.

You can complete all the settings of a bar graph in the Bar Graph property sheet. This sheet contains the following six pages.

■ General
Described in Section 8.1.4.

■ Scale
Described in Section 4.4.4.

■ F. Marker
Described in Section 8.1.5.

■ B. Marker
Described in Section 8.1.5.

■ Advanced
Described in Section 8.1.6.

■ Visibility
Described in Section 4.4.6.


8.1.2 Operation Options

Bar Graph - Operation Options

The following operation options can be added to a bar graph to make it more informative. You need to select and set these options in the Bar Graph property sheet.

Options | Description
Bipolar Bar | A bar graph can be configured to display the difference between the monitored value and a specified value called the middle point. The bar can move at both ends, hence bipolar bar. Select and set this option in the General page.
Scale | A bar graph can have a scale. Select and set this option in the Scale page.
Forward / Backward Marker | The forward/backward markers of a bar graph can have up 12 marks. You can select equilateral triangle, triangle, diamond, or cone as the mark. The actual number of marks and the value of each mark is specified at runtime by the forward/backward marker control block. The position of a mark is determined by that mark’s value. The color of a mark is determined by comparing the monitored value to the mark’s value. Select and set Forward Marker option in the F. Marker page. Select and set Backward Marker option in the B. Marker page.
Range Display | You can specify a low limit and a high limit for a bar graph. The limits can be constants or variables. At runtime, when the monitored value is equal to or below the low limit, the bar graph shows the bar with the FG color and the BG color set for the low limit. When the monitored value is equal to or above the high limit, the bar graph shows the bar with the FG color and the BG color set for the high limit. Select and set this option in the Advanced page.
Percentage Display | A bar graph can show the current bar length as a percentage of the full bar length.
 | Type |  | Percentage
 | Polar Bar |  | D / L x 100%
 | Bipolar Bar | Value < Middle Point | -D / L x 100%
 |  | Value > Middle Point | D / L x 100%
 | Select and set this option in the Advanced page.
Visibility Control | A bar graph can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


8.1.3 Settings

Bar Graph - Settings

You can complete all the settings of a bar graph in the Bar Graph property sheet. This sheet contains the following six pages.

■ General
Described in Section 8.1.4.

■ Scale
Described in Section 4.4.4.

■ F. Marker
Described in Section 8.1.5.

■ B. Marker
Described in Section 8.1.5.

■ Advanced
Described in Section 8.1.6.

■ Visibility
Described in Section 4.4.6.


8.1.4 General Settings

Bar Graph - General Settings

This section describes how to define the general settings for a bar graph.

The above is an example of the General page of the Bar Graph dialog box.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the bar graphs is BGnnnn.
Note | You can type a note for the object.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object . , Border Color, BG Color
External Label | Check this option if you want the object to have an external label. Set up the external label in the External Label page.
Direction | Specifies the bar direction for the bar graph.
Data Type | The data type of the monitored variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), and 32-Bit Signed BCD (LMD)
Monitor Address | Specifies the variable to be monitored. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Dynamic Range | Check this option so the minimum and maximum of the monitored variable will be specified at runtime. When this option is selected, the minimum and maximum of the marks for the scale of the bar graph can be specified at runtime as well. The data that specifies the above two ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block for the bar graph in the Dynamic Range Parameter Block field.
Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the bar graph when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangements of the parameter block when the data type is 16-bit and the scale of the bar graph is not dynamic.
 | Word | Parameter
 | 0 | The minimum of the monitored variable
 | 1 | The maximum of the monitored variable
 | The following table shows the data arrangement of the parameter block when the data type is 16-bit and the scale of the bar graph is dynamic.
 | Word | Parameter
 | 0 | The minimum of the monitored variable
 | 1 | The maximum of the monitored variable
 | 2, 3 | The minimum of the mark for the scale; 32-bit integer number
 | 4, 5 | The maximum of the mark for the scale; 32-bit integer number
 | The following table shows the data arrangement of the parameter block when the data type is 32-bit and the scale of the bar graph is not dynamic.
 | Word | Parameter
 | 0, 1 | The minimum of the monitored variable
 | 2, 3 | The maximum of the monitored variable
 | The following table shows the data arrangement of the parameter block when the data type is 32-bit and the scale of the bar graph is dynamic.
 | Word | Parameter
 | 0, 1 | The minimum of the monitored variable
 | 2, 3 | The maximum of the monitored variable
 | 4, 5 | The minimum of the mark for the scale; 32-bit integer number
 | 6, 7 | The maximum of the mark for the scale; 32-bit integer number
Min. | Specifies the minimum of the monitored variable when Dynamic Range is not selected.
Max. | Specifies the maximum of the monitored variable when Dynamic Range is not selected.
Bipolar Bar | Check this option for the bar graph to display the difference between the monitored value and the value specified in the Middle Point field.
Middle Point | Specifies the reference value/point for the bipolar bar.
Bar Pattern | Select a pattern for the bar graph. The pattern will be used to fill the bar. When the pattern is filled in the bar, the black part of the pattern is painted with the color specified in the Bar FG Color field, and the white part of the pattern is painted with the color specified in the Bar BG Color field.
Bar FG Color | Select a color for painting the black part of the specified pattern.
Bar BG Color | Select a color for painting the white part of the specified pattern.


8.1.5 Forward and Backward Marker Settings

Bar Graph - Forward and Backward Marker Settings

This section describes how to define the forward marker and the backward marker settings for a bar graph. The following is an example of the Forward Marker page.

The following table describes each property in the Forward Marker page and the Backward Marker page.

Property |  | Description
Number of Marks |  | Specifies the maximum number of marks this marker can support.
Location |  | Select Up or Down for the location of the marker when the bar direction is Leftward or Rightward. Select Left or Right for the location of the marker when the bar direction is Upward or Downward.
Forward/Backward Marker Control Block |  | Specifies the variable that stores the marker control block. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the marker control block when the data type is 16-bit.
 |  | Word | Description
 |  | 0 | Specifies the actual number of marks that the marker will display.
 |  | 1 | The value of mark 1.
 |  | 2 | The value of mark 2
 |  | … | …
 |  | 12 | The value of mark 12
 |  | The following table shows the data arrangement of the marker control block when the data type is 32-bit.
 |  | Word | Description
 |  | 0,1 | Specifies the actual number of marks that the marker will display.
 |  | 2,3 | The value of mark 1.
 |  | 4,5 | The value of mark 2
 |  | … | …
 |  | 24,25 | The value of mark 12
 |  | Note: The data format of the mark values should be the same as that of the monitored variable.
Mark No. 1 - No. 12 | Style | Specifies the mark style. There are four mark styles: mark styles
 | Border Color | The border color of the mark.
 | LT Color | The fill color of the mark when the monitored value is less than the mark’s value.
 | EQ Color | The fill color of the mark when the monitored value is equal to the mark’s value.
 | GT Color | The fill color of the mark when the monitored value is greater than the mark’s value.


8.1.6 Advanced Settings

(Circular) Bar Graph - Advanced Settings

This section describes how to define the advanced settings for the bar graphs and circular bar graphs with the Advanced page. The following is an example of the Advanced page.

The following table describes each property in the Advanced page.

Property |  |  | Description
Range Display | Range Display |  | Check this option if you want the object to display the monitored value with different colors when the monitored value is below the specified low limit or above the specified high limit.
 | Variable Range |  | Check this option if the low limit and high limit are specified at runtime by the designated variables.
 | Low Limit |  | Specifies the low limit when Variable Range is not selected. When Variable Range is selected, this property specifies the variable whose value is the low limit. Click [image] to enter an address. Click [image] to select a tag.
 | High Limit |  | Specifies the high limit when Variable Range is not selected. When Variable Range is selected, this property specifies the variable whose value is the high limit. Click [image] to enter an address. Click [image] to select a tag.
 | High Color | FG Color | The bar FG color for the high limit.
 |  | BG Color | The bar BG color for the high limit.
 | Low Color | FG Color | The bar FG color for the low limit.
 |  | BG Color | The bar BG color for the low limit.
Percentage Display | Percentage Display |  | Check this option so the object will display the percentage that is calculated by the following formula: Percentage = (Value - Min.) / (Max. - Min.) * 100% If the bipolar bar is used, the percentage formula when Value > Middle Point is: Percentage = (Value – Middle Point) / (Max. - Middle Point) * 100% The percentage formula when Value < Middle Point is: Percentage = -(Middle Point - Value) / (Middle Point - Min.) * 100% The Value is the current value of the monitored variable. The Max. and Min. define the value range of the monitored variable and are defined in the General page of the property sheet.
 | Text Color |  | Select a color for the percentage display.
 | Font |  | Select a fixed size font for the percentage display.


8.2.1 Basic Operations

Meter - Basic Operations

A meter shows the value of a monitored variable by rotating its needle to the appropriate place. When the value of the variable increases or decreases, the rotation angle of the needle increases or decreases accordingly. A meter can have an arc/circle scale that enables you to measure the rotation angle of the needle and read the current value for the monitored variable. A meter can be configured to perform one of the following swing types:

Span and Origin | 360° & 90° | 360° & 0° | 360° & 270° | 360° & 180°
Example | 360 & 90 | 360 & 0 | 360 270 | 360 180
Span and Origin | 270° & 45° | 270° & 315° | 270° & 225° | 270° & 135°
Example | 270 45 | 270 315 | 270 225 | 270 135
Span and Origin | 180° & 90° | 180° & 0° | 180° & 270° | 180° & 180°
Example | 180 90 | 180 0 | 180 270 | 180 180
Span and Origin | 90° & 90° | 90° & 0° | 90° & 270° | 90° & 180°
Example | 90 90 | 90 0 | 90 270 | 90 180
Span and Origin | 90° & 45° | 90° & 315° | 90° & 225° | 90° & 135°
Example | 90 45 | 90 315 | 90 225 | 90 135

Note: The appearance of meters' needle and scale is improved by the anti-aliasing graphic functions.

You can complete all the settings of a meter in the Meter property sheet. This sheet contains the following four pages.

■ General
Described in Section 8.2.4.

■ Range
Described in Section 8.2.5.

■ Scale
Described in Section 4.4.4.

■ Visibility
Described in Section 4.4.6.


8.2.2 Operation Options

Meter - Operation Options

The following operation options can be added to a meter to make it more informative. You need to select and set these options in the Meter property sheet.

Options | Description
Range Display | The meter can display the low range mark and the high range mark along its swing path. The limits for range marks can be specified at runtime by the designated variables. Select and set this option in the Range page.
Scale | The meter can have a scale. The appearance of meters' scale is improved by the anti-aliasing graphic functions. Select and set this option in the Scale page.
Visibility Control | The meter can be shown or hidden either by a specified bit or by the current user level. Select and set this option in the Visibility page.


8.2.3 Settings

Meter - Settings

You can complete all the settings of a meter in the Meter property sheet. This sheet contains the following four pages.

■ General
Described in Section 8.2.4.

■ Range
Described in Section 8.2.5.

■ Scale
Described in Section 4.4.4.

■ Visibility
Described in Section 4.4.6.


8.2.4 General Settings

Meter - General Settings

This section describes how to define the general settings for a meter.

The above is an example of the General page of the Meter property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the meters is Mnnnn.
Note |  | You can type a note for the object.
Transparent |  | Select this option if you want the object to have a transparent background.
Picture Shape | Picture Shape | Check this option if you want to use a picture for the meter’s shape. You can use a picture to customize your own meter. For example: Note: If Picture Shape is checked, Shape…, Border Color and BG Color fields are not available to be used.
 | <Drop-down List> | The name of the picture. You can use the drop-down list to select a picture from the picture database.
 |  | Click this icon to select a picture file. After selection, the picture of the selected file is imported and saved in the picture database.
 |  | Click this icon to bring up the Select/Import from Library dialog box. Select a picture from a picture library file. After selection, the selected picture is imported and saved in the picture database.
Graphical shape settings |  | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Swing |  | Specifies the type of swing. For details, see Section 8.2.1 Basic Operation. The swing styles below are more space saving because their needles can be placed outside the shape by changing the position of Center X or Center Y.
Direction |  | Specifies the direction that the needle moves either clockwise or counter clockwise.
 |  | Counter clockwise | Clockwise
Data Type |  | The data type of the monitored variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), and 32-Bit Signed BCD (LMD).
Monitor Address |  | Specifies the variable to be monitored. Click [image] to enter an address for this field. Click [image] to select a tag for this field. If the application type is Tower Crane, the variable stores parameter block to displaying the tower crane. The following table shows the content of the parameter block when the data type is 16-bit :
 |  | Word | Parameter
 |  | 0 | The jib position in degree. The valid number is between 0 and 360.
 |  | 1 | The distance in pixel between the lifting hook position and the center.
 |  | 2 | The jib length in pixel which is the distance between the end of the jib and the center.
 |  | 3 | The counterjib length in pixel which is the distance between the end of the counterjib and the center.
 |  | 4 | The X position of the center (tower crane) which is relative to the upper-left corner of the panel.
 |  | 5 | The Y position of the center (tower crane) which is relative to the upper-left corner of the panel.
 |  | 6 | The X position of the upper-left corner of the viewable area.
 |  | 7 | The Y position of the upper-left corner of the viewable area.
 |  | 8 | The X position of the lower-right corner of the viewable area.
 |  | 9 | The Y position of the lower-right corner of the viewable area.
 |  | The following table shows the content of the parameter block when the data type is 32-bit
 |  | Word | Parameter
 |  | 0,1 | The jib position in degree. The valid number is between 0 and 360.
 |  | 2,3 | The distance in pixel between the lifting hook position and the center.
 |  | 4,5 | The jib length in pixel which is the distance between the end of the jib and the center.
 |  | 6,7 | The counterjib length in pixel which is the distance between the end of the counterjib and the center.
 |  | 8,9 | The X position of the center (tower crane) which is relative to the upper-left corner of the panel.
 |  | 10,11 | The Y position of the center (tower crane) which is relative to the upper-left corner of the panel.
 |  | 12,13 | The X position of the upper-left corner of the viewable area.
 |  | 14,15 | The Y position of the upper-left corner of the viewable area.
 |  | 16,17 | The X position of the lower-right corner of the viewable area.
 |  | 18,19 | The Y position of the lower-right corner of the viewable area.
 |  | Note: The part of the tower crane that is outside of the viewable area will not be drawn/shown.
Dynamic Range | Dynamic Range | Check this option so the minimum and maximum of the monitored variable will be specified at runtime. When this option is selected, the minimum and maximum of the marks for the scale of the meter can be specified at runtime as well. The data that specifies the above two ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block for the meter in the Dynamic Range Parameter Block field.
 | Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the meter when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the content of the parameter block when the data type is 16-bit and the scale of the meter is not dynamic.
 |  | Word | Parameter
 |  | 0 | The minimum of the monitored variable
 |  | 1 | The maximum of the monitored variable
 |  | The following table shows the content of the parameter block when the data type is 16-bit and the scale of the meter is dynamic.
 |  | Word | Parameter
 |  | 0 | The minimum of the monitored variable
 |  | 1 | The maximum of the monitored variable
 |  | 2, 3 | The minimum of the mark for the scale; 32-bit integer number
 |  | 4, 5 | The maximum of the mark for the scale; 32-bit integer number
 |  | The following table shows the content of the parameter block when the data type is 32-bit and the scale of the meter is not dynamic.
 |  | Word | Parameter
 |  | 0, 1 | The minimum of the monitored variable
 |  | 2, 3 | The maximum of the monitored variable
 |  | The following table shows the content of the parameter block when the data type is 32-bit and the scale of the meter is dynamic.
 |  | Word | Parameter
 |  | 0, 1 | The minimum of the monitored variable
 |  | 2, 3 | The maximum of the monitored variable
 |  | 4, 5 | The minimum of the mark for the scale; 32-bit integer number
 |  | 6, 7 | The maximum of the mark for the scale; 32-bit integer number
Min. |  | Specifies the minimum value of the monitored variable when Dynamic Range is not selected. Note that the data range of meters can be beyond -1000000 and 1000000.
Max. |  | Specifies the maximum value of the monitored variable when Dynamic Range is not selected. Note that the data range of meters can be beyond -1000000 and 1000000.
Swing Adjustment | Radius | You can adjust the radius of the swing of the needle. This field specifies the offset to be added to the default radius.
 | Angle | You can adjust the span of the swing of the needle. This field specifies the offset to be added to the default span.
 | Center X | You can adjust the horizontal position for the pivot of the needle. This field specifies the offset to be added to the default horizontal position.
 | Center Y | You can adjust the vertical position for the pivot of the needle. This field specifies the offset to be added to the default vertical position.
Needle | Type | Select a type for the needle. There are two types:
 |  | Type | Description
 |  | 1 |
 |  | 2 |
 | Color | Select a color for the needle. The appearance of meters' needle is improved by the anti-aliasing graphic functions.
 | Base Size | Select the radius in pixel of the circle base when the needle type is 2.
Application | Type | Select a meter type for the application.
 |  | Type | Description
 |  | Normal | For normal purpose, it shows the value of a monitored variable by rotating its needle to the appropriate place.
 |  | Tower Crane | For tower cranes, it shows how the jib rotates and the position of the lifting hook. For details, see Section 8.2.6. Anti-collision system for tower cranes.
 | Center Color | Select a color for the center. Available only when the application type is Tower Crane.
 | Lifting Hook Position Color | Select a color for the hook position. Available only when the application type is Tower Crane.


8.2.5 Range Settings

Meter - Range Settings

This section describes how to define the range settings for a meter. The following is an example of the Range page of the Meter property sheet.

The following table describes each property in the Range page.

Property | Description
Range Display | Check this option if you want the meter to display the range marks along its swing path.
Variable Range | Check this option so the low limit and high limit for the range marks will be specified at runtime by the designated variables.
Low Limit | Specifies the low limit of the low range mark when Variable Range is not selected. When Variable Range is selected, this property specifies the variable whose value is the low limit of the low range mark at runtime. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
High Limit | Specifies the high limit of the high range mark when Variable Range is not selected. When Variable Range is selected, this property specifies the variable whose value is the high limit of the high range mark at runtime. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Low Color | The color of the low range mark.
High Color | The color of the high range mark.


8.2.6. Anti-collision system for tower cranes

Anti-collision system for tower cranes

A meter can be used to display the tower crane in the anti-collision system. The following is an example of the anti-collision system with three meters. It helps to protect again the cranes on the same runway from colliding.

You can command the object to do the following:

1) Rotate the jib to the appropriate place.

2) Move the hook at runtime.

3) Make an arc/circle scale that enables you to measure the rotation angle of the needle and read the current value for the monitored variable.

4) Specify the counterjib length for any type of tower crane.

5) Show the rotation orbit with different type of swing.

6) Specify the rectangle viewable area to keep the tower crane working in.


8.3.1 Basic Operations

Circular Bar Graph - Basic Operations

A circular bar graph shows the value of a monitored variable by displaying a circular bar with variable length. When the value of the variable increases or decreases, the length of the circular bar increases or decreases accordingly. A circular bar graph can have a circular scale and the scale enables you to measure the length of the bar and read the current value of the monitored variable. The following table lists the supported styles of circular bar graphs.

Span and Origin | 360° & 90° | 360° & 0° | 360° & 270° | 360° & 180°
Example | 360 90 | 360 0 | 360 270 | 360 180
Span and Origin | 270° & 45° | 270° & 315° | 270° & 225° | 270° & 135°
Example | 270 45 | 270 315 | 270 225 | 270 135
Span and Origin | 180° & 90° | 180° & 0° | 180° & 270° | 180° & 180°
Example | 180 90 | 180 0 | 180 270 | 180 180
Span and Origin | 90° & 90° | 90° & 0° | 90° & 270° | 90° & 180°
Example | 90 90 | 90 0 | 90 270 | 90 180
Span and Origin | 90° & 45° | 90° & 315° | 90° & 225° | 90° & 135°
Example | 90 45 | 90 315 | 90 225 | 90 135

You can complete all the settings of a circular bar graph in the Circular Bar Graph property sheet. This sheet contains the following four pages.

■ General
Described in Section 8.3.4.

■ Scale
Described in Section 4.4.4.

■ Advanced
Described in Section 8.1.6.

■ Visibility
Described in Section 4.4.6.


8.3.2 Operation Options

Circular Bar Graph - Operation Options

The following operation options can be added to a circular bar graph to make it more informative. You need to select and set up these options in the Circular Bar Graph property sheet.

Options | Description
Range Display | You can specify a low limit and a high limit for the object. The limits can be constants or variables. At runtime, when the monitored value is below the low limit, the object shows the bar with the FG color and the BG color set for the low limit. When the monitored value is above the high limit, the object shows the bar with the FG color and the BG color set for the high limit.
Percentage Display | The object can show the current bar length as a percentage of the full bar length. current bar Select and set up this option in the Advanced page.
Scale | The circular bar graph can have a circular scale. Select and set up this option in the Scale page.
Visibility Control | The object can be shown or hidden either by a specified bit or by the current user level. Select and set up this option in the Visibility page.


8.3.3 Settings

Circular Bar Graph - Settings

You can complete all the settings of a circular bar graph in the Circular Bar Graph property sheet. This sheet contains the following four pages.

■ General
Described in Section 8.3.4.

■ Scale
Described in Section 4.4.4.

■ Advanced
Described in Section 8.1.6.

■ Visibility
Described in Section 4.4.6.


8.3.4 General Settings

Circular Bar Graph - General Settings

This section describes how to define the general settings for a circular bar graph.

circular bar graph

The above is an example of the General page of the Circular Bar Graph property sheet.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the circular bar graphs is PGnnnn.
Note | You can type a note for the object.
Shape settings | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object . , Border Color, BG Color
Style | Specifies the style of the circular bar graph. For details, see Section 8.3.1 Basic Operations.
Direction | Specifies the progress direction of the circular bar graph. Only Clockwise is available.
Data Type | The data type of the monitored variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, and 32-Bit Floating Point.
Monitor Address | Specifies the variable to be monitored. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Dynamic Range | Check this option so the minimum and maximum of the monitored variable will be specified at runtime. When this option is selected, the minimum and maximum of the marks of the scale of the circular bar graph can be specified at runtime as well. The data that specifies the above two ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block for the circular bar graph in the Dynamic Range Parameter Block field.
Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the circular bar graph when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the content of the parameter block when the data type is 16-bit and the scale of the circular bar graph is not dynamic.
 | Word | Parameter
 | 0 | The minimum of the monitored variable
 | 1 | The maximum of the monitored variable
 | The following table shows the content of the parameter block when the data type is 16-bit and the scale of the circular bar graph is dynamic.
 | Word | Parameter
 | 0 | The minimum of the monitored variable
 | 1 | The maximum of the monitored variable
 | 2, 3 | The minimum of the mark for the scale; 32-bit integer number
 | 4, 5 | The maximum of the mark for the scale; 32-bit integer number
 | The following table shows the content of the parameter block when the data type is 32-bit and the scale of the circular bar graph is not dynamic.
 | Word | Parameter
 | 0, 1 | The minimum of the monitored variable
 | 2, 3 | The maximum of the monitored variable
 | The following table shows the content of the parameter block when the data type is 32-bit and the scale of the circular bar graph is dynamic.
 | Word | Parameter
 | 0, 1 | The minimum of the monitored variable
 | 2, 3 | The maximum of the monitored variable
 | 4, 5 | The minimum of the mark for the scale; 32-bit integer number
 | 6, 7 | The maximum of the mark for the scale; 32-bit integer number
Min. | Specifies the minimum value of the monitored variable when Dynamic Range is not selected.
Max. | Specifies the maximum value of the monitored variable when Dynamic Range is not selected.
Bar Pattern | Select a pattern for the circular bar graph. The pattern will be used to fill the arc/circular strip of the circular bar graph. When the pattern fills in the circular bar graph, the black part of the pattern is painted with the color specified in the Bar FG Color field, and the white part of the pattern is painted with the color specified in the Bar BG Color field.
Bar FG Color | Select a color for painting the black part of the specified pattern.
Bar BG Color | Select a color for painting the white part of the specified pattern.
Back Color | Select a color as the background color for the arc/circular strip of the circular bar graph.


8.4.1 Basic Operations

Line Chart - Basic Operations

A line chart displays a set of data by drawing a data point for each datum and drawing a line that connects all the data points in sequence. The vertical position of a data point is determined by the value of the associated datum. The horizontal position of a data point is determined by the order of the associated datum in the data set.

A line chart can display up to 8 sets of data. The following example shows a line chart that displays 3 sets of data.

A line chart can provide a cursor for you to select desired data points. The cursor of the line chart is a vertical line segment. The user can move the cursor horizontally within a line chart to the desired data point(s). The values of the selected data points can be displayed and output to an internal variable called Cursor Data Receiving Buffer.

A line chart can be displayed in vertical direction with transparent background.

You can complete all the settings of a line chart in the Line Chart dialog box. This dialog box contains the following four pages.

■ General
Described in Section 8.4.4.

■ Pen
Described in Section 8.4.5.

■ XY Axis
Described in Section 8.4.6.

■ Visibility
Described in Section 4.4.6.


8.4.2 Operation Options

Line Chart - Operation Options

The following operation option can be added to a line chart. Select and set the option in the Line Chart dialog box.

Options | Description
Visibility Control | You can show and hide a line chart by a specified bit or the current user level. Select and set this option in the Visibility page.


8.4.3 Settings

Line Chart - Settings

You can complete all the settings of a line chart in the Line Chart dialog box. This dialog box contains the following four pages.

■ General
Described in Section 8.4.4.

■ Pen
Described in Section 8.4.5.

■ XY Axis
Described in Section 8.4.6.

■ Visibility
Described in Section 4.4.6.


8.4.4 General Settings

Line Chart - General Settings

This section describes how to define the general settings for a line chart. The following is an example of the General page of the Line Chart property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the line charts is LCnnnn.
Note |  | You can type a note for the object.
Transparent |  | Select this option if you want the object to have a transparent background.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object . , Border Color, BG Color
Chart BG Color |  | Select a color for the background of the chart.
Data Type |  | The type of the data that the line chart will display. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), and 32-Bit Signed BCD (LMD).
Read Trigger |  | The bit variable or the word's bit variable that will trigger the line chart to read and display data. The bit variable triggers the line chart when its state changes from off to on. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Read Address |  | The variable whose data is to be read and displayed. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following tables show the data arrangements of the variable. Data Type: 16-bit; Number of Data Sets: 1
 |  | Word | Description
 |  | 0 | Actual number of data points
 |  | 1 | Data point 0
 |  | 2 | Data point 1
 |  | … | …
 |  | n+1 | Data point n
 |  | Pulse | Send a positive pulse to the specified bit.
 |  | Data Type: 16-bit; Number of Data Sets: 2
 |  | Word | Description
 |  | 0 | Actual number of data points
 |  | 1 | Data point 0; Data set 1
 |  | 2 | Data point 0; Data set 2
 |  | 3 | Data point 1; Data set 1
 |  | 4 | Data point 1; Data set 2
 |  | … | …
 |  | 2n+1 | Data point n; Data set 1
 |  | 2n+2 | Data point n; Data set 2
 |  | Data Type: 16-bit; Number of Data Sets: 8
 |  | Word | Description
 |  | 0 | Actual number of data points
 |  | 1 | Data point 0; Data set 1
 |  | 2 | Data point 0; Data set 2
 |  | 3 | Data point 0; Data set 3
 |  | 4 | Data point 0; Data set 4
 |  | 5 | Data point 0; Data set 5
 |  | 6 | Data point 0; Data set 6
 |  | 7 | Data point 0; Data set 7
 |  | 8 | Data point 0; Data set 8
 |  | 9 | Data point 1; Data set 1
 |  | 10 | Data point 1; Data set 2
 |  | … | …
 |  | 8n+7 | Data point n; Data set 7
 |  | 8n+8 | Data point n; Data set 8
 |  | Data Type: 32-bit; Number of Data Sets: 1
 |  | Word | Description
 |  | 0,1 | Actual number of data points
 |  | 2,3 | Data point 0
 |  | 4,5 | Data point 1
 |  | … | …
 |  | 2n+2, 2n+3 | Data point n
 |  | Data Type: 32-bit; Number of Data Sets: 2
 |  | Word | Description
 |  | 0,1 | Actual number of data points
 |  | 2,3 | Data point 0; Data set 1
 |  | 4,5 | Data point 0; Data set 2
 |  | 6,7 | Data point 1; Data set 1
 |  | 8,9 | Data point 1; Data set 2
 |  | … | …
 |  | 4n+2, 4n+3 | Data point n; Data set 1
 |  | 4n+4, 4n+5 | Data point n; Data set 2
 |  | Data Type: 32-bit; Number of Data Sets: 8
 |  | Word | Description
 |  | 0,1 | Actual number of data points
 |  | 2,3 | Data point 0; Data set 1
 |  | 4,5 | Data point 0; Data set 2
 |  | 6,7 | Data point 0; Data set 3
 |  | 8,9 | Data point 0; Data set 4
 |  | 10,11 | Data point 0; Data set 5
 |  | 12,13 | Data point 0; Data set 6
 |  | 14,15 | Data point 0; Data set 7
 |  | 16,17 | Data point 0; Data set 8
 |  | 18,19 | Data point 1; Data set 1
 |  | 20,21 | Data point 1; Data set 2
 |  | … | …
 |  | 16n+14, 16n+15 | Data point n; Data set 7
 |  | 16n+16, 16n+17 | Data point n; Data set 8
Number of Data Sets |  | Specifies how many data sets the line chart will read. The line chart displays one line for each data set. A line chart can display up to 8 lines.
Maximum Number of Data Points Per Data Set |  | Specifies the maximum number of data points that the line chart will read for every data set. A line chart can display up to 500 data points for one data set. Note: The actual number of data points for every data set must be specified at runtime. The actual number must not exceed the maximum number.
Point Distribution |  | Select one of the following methods to distribute the data points of a data set:
 |  | Method | Description
 |  | Maximum Points | The data points of a data set are evenly distributed across the X axis of the line chart based on the maximum number of data points for every data set. Therefore, the space between two adjacent data points is fixed.
 |  | Actual Points | The data points of a data set are evenly distributed across the X axis of the line chart based on the actual number of data points. When the number of actual data points decreases, the space between two adjacent data points increases.
Direction |  | Specifies the direction that the line chart draws the data points.
Show Mark |  | Check this option so the line chart will put a square mark on every data point.
Show Line |  | Check this option so the line chart will display a line connecting all the data points of a data set in sequence.
Clear Trigger |  | The bit variable or the word's bit variable that will trigger the line chart to clear its content when its state changes from off to on. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Cursor | Show Cursor | Check this option so the line chart will display a cursor. You can touch and drag the cursor to the data point(s) that you want to select.
 | Cursor Color | Select a color for the cursor.
 | Value Display Font | Select a font for displaying the values of the selected data point(s).
 | Cursor Data Receiving Buffer | The variable that will receive the value(s) of the selected data point(s). It must be a piece of the internal memory. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the buffer when the data type is 16-bit.
 |  | Word | Description
 |  | 0 | The sequence number of the cursor selected data in the data set
 |  | 1 | The value of the selected data point of data set 1.
 |  | 2 | The value of the selected data point of data set 2.
 |  | … | …
 |  | 8 | The value of the selected data point of data set 8.
 |  | The following table shows the data arrangement of the buffer when the data type is 32-bit.
 |  | Word | Description
 |  | 0,1 | The sequence number of the cursor selected data in the data set
 |  | 2,3 | The value of the selected data point of data set 1.
 |  | 4,5 | The value of the selected data point of data set 2.
 |  | … | …
 |  | 16,17 | The value of the selected data point of data set 8.
Dynamic Range | Dynamic Range | Check this option so the minimum and the maximum of the pen for each data set will be specified at runtime. When this option is selected, the minimum and maximum of the marks for the X axis and Y axis can be specified at runtime too. The data that specifies the above two ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block in the Dynamic Range Parameter Block field.
 | Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the line chart when the Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block when the data type is 16-bit.
 |  | Word | Description
 |  | 0,1 | The minimum of the mark for the X axis; 32-bit integer number
 |  | 2,3 | The maximum of the mark for the X axis; 32-bit integer number
 |  | 4,5 | The minimum of the mark for the Y axis; 32-bit integer number
 |  | 6,7 | The maximum of the mark for the Y axis; 32-bit integer number
 |  | 8 | The minimum for pen #1; 16-bit integer number or 16-bit unsigned integer number
 |  | 9 | The maximum for pen #1; (Same as above)
 |  | 10 | The minimum for pen #2; (Same as above)
 |  | 11 | The maximum for pen #2; (Same as above)
 |  | … | …
 |  | 22 | The minimum for pen #8; (Same as above)
 |  | 23 | The maximum for pen #8; (Same as above)
 |  | The following table shows the data arrangement of the parameter block when the data type is 32-bit.
 |  | Word | Description
 |  | 0,1 | The minimum of the mark for the X axis; 32-bit integer number
 |  | 2,3 | The maximum of the mark for the X axis; 32-bit integer number
 |  | 4,5 | The minimum of the mark for the Y axis; 32-bit integer number
 |  | 6,7 | The maximum of the mark for the Y axis; 32-bit integer number
 |  | 8,9 | The minimum for pen #1; 32-bit integer number, 32-bit unsigned integer number, or 32-bit floating point number
 |  | 10,11 | The maximum for pen #1; (Same as above)
 |  | 12,13 | The minimum for pen #2; (Same as above)
 |  | 14,15 | The maximum for pen #2; (Same as above)
 |  | … | …
 |  | 36,37 | The minimum for pen #8; (Same as above)
 |  | 38,39 | The maximum for pen #8; (Same as above)


8.4.5 Pen Settings

Line Chart - Pen Settings

This section describes how to define the pens for the line charts. The following is an example of the Pen page.

The following table describes each property in the Pen page. Note that pen #1 is for data set 1; pen #2 is for data set 2; and so on.

Property |  | Description
Pen #1 to Pen #8 | Dynamic Range | Check this option so the minimum and the maximum of the associated data set will be specified at runtime. This option is available when the Dynamic Range option in the General page is selected.
 | Min. | The minimum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Max. | The maximum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Mark Size | Select a size for the data point mark. The selection is valid when the Show Mark option in the General page is selected.
 | Line Style | Select a style for the connecting lines. The selection is valid when the Show Line option in the General page is selected.
 | Color | Select a color for the connecting lines.
 | Show Value | Select one of the following methods for displaying the selected data point value.
 |  | Show Value | Description
 |  | (None) | Does not display the data point value.
 |  | Original | Displays the data point value without modification.
 |  | Scaled | Displays the corresponding Y axis value of the data point.
 |  | The selection is valid when the Show Cursor option in the General page is selected.
 | Fill | Check this option if you want the area below the line to be filled. And the area is filled with the specified pattern and colors.
 |  | Fill | Description
 |  | Fill Pattern | Specifies the fill pattern for the selected pen.
 |  | FG Color | Specifies the color for the selected pen that will be used for painting the black part of the fill pattern.
 |  | BG Color | Specifies the color for the selected pen that will be used for painting the white part of the fill pattern.


8.4.6 Axis Settings

Line Chart/Scatter Chart - Axis Settings

This section describes how to define the X axis and the Y axis for the line charts and the scatter charts.

The following is an example of the Axis page.

The following table describes each property in the Axis page.

Property |  | Description
X Axis | Show Ticks | Check this option if you want the X axis to have ticks.
 | Show Y-axis Grid | Select this option if you want the X axis to have vertical grids.
 | Axis/Tick Color | Select a color for the X axis and its ticks.
 | Grid Color | Select a color for the vertical grids.
 | Number of Major Divisions | The number of major divisions for the X axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Mark | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Min. | The minimum of the marks. It is a 32-bit integer.
 | Max. | The maximum of the marks. It is a 32-bit integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.
Y Axis | Show Ticks | Check this option if you want the Y axis to have ticks.
 | Show X-axis Grid | Select this option if you want the Y axis to have horizontal grids.
 | Axis/Tick Color | Select a color for the Y axis and its ticks.
 | Grid Color | Select a color for the horizontal grids.
 | Number of Major Divisions | The number of major divisions for the Y axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Mark | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Min. | The minimum of the marks. You can specify a 32-bit signed integer.
 | Max. | The maximum of the marks. You can specify a 32-bit signed integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.


8.5.1 Basic Operations

Scatter Chart - Basic Operations

A scatter chart displays a set of data by drawing a data point for each datum and drawing a line that connects all the data points in sequence. Each datum is a coordinate that contains an X value and a Y value. The vertical position of a data point is determined by the X value of the associated datum. The horizontal position of a data point is determined by the Y value of the associated datum.

A scatter chart can display up to 8 sets of data. The following example shows a scatter chart that displays 3 sets of data.

A scatter chart can provide a cursor for you to select desired data points. The cursor of the scatter chart is a cross. The user can move and snap the cursor vertically and horizontally within a scatter chart to the nearest data point. The value of the selected data point can be displayed and output to an internal variable called Cursor Data Receiving Buffer.

You can complete all the settings of a scatter chart in the Scatter Chart dialog box. This dialog box contains the following four pages.

■ General
Described in Section 8.5.4.

■ Pen
Described in Section 8.5.5.

■ XY Axis
Described in Section 8.4.6.

■ Visibility
Described in Section 4.4.6.


8.5.2 Operation Options

Scatter Chart - Operation Options

The following operation option can be added to a scatter chart. Select and set the option in the Scatter Chart dialog box.

Options | Description
Visibility Control | You can show and hide a scatter chart by a specified bit or the current user level. Select and set this option in the Visibility page.


8.5.3 Settings

Scatter Chart - Settings

You can complete all the settings of a scatter chart in the Scatter Chart dialog box. This dialog box contains the following four pages.

■ General
Described in Section 8.5.4.

■ Pen
Described in Section 8.5.5.

■ XY Axis
Described in Section 8.4.6.

■ Visibility
Described in Section 4.4.6.


8.5.4 General Settings

Scatter Chart - General Settings

This section describes how to define the general settings for a scatter chart. The following is an example of the General page of the Scatter Chart property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the scatter charts is SCnnnn.
Note |  | You can type a note for the object.
Transparent |  | Select this option if you want the object to have a transparent background.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object . , Border Color, BG Color
Chart BG Color |  | Select a color for the background of the char.
Data Type |  | The type of the data that the scatter chart will display. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), and 32-Bit Signed BCD (LMD).
Read Trigger |  | The bit variable or the word's bit variable that will trigger the scatter chart to read and display data. The bit variable triggers the scatter chart when its state changes from off to on. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Read Address |  | The variable whose data is to be read and displayed. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following tables show the data arrangements of the variable. Data Type: 16-bit; Number of Data Sets: 1
 |  | Word | Description
 |  | 0 | Actual number of data points
 |  | 1 | X value of data point 0
 |  | 2 | Y value of data point 0
 |  | 3 | X value of data point 1
 |  | 4 | Y value of data point 1
 |  | … | …
 |  | 2n+1 | X value of data point n
 |  | 2n+2 | Y value of data point n
 |  | Data Type: 16-bit; Number of Data Sets: 2
 |  | Word | Description
 |  | 0 | Actual number of data points
 |  | 1 | X value of data point 0; Data set 1
 |  | 2 | Y value of data point 0; Data set 1
 |  | 3 | X value of data point 0; Data set 2
 |  | 4 | Y value of data point 0; Data set 2
 |  | 5 | X value of data point 1; Data set 1
 |  | 6 | Y value of data point 1; Data set 1
 |  | 7 | X value of data point 1; Data set 2
 |  | 8 | Y value of data point 1; Data set 2
 |  | … | …
 |  | 4n+3 | X value of data point n; Data set 2
 |  | 4n+4 | Y value of data point n; Data set 2
 |  | Data Type: 16-bit; Number of Data Sets: 8
 |  | Word | Description | Word | Description
 |  | 0 | Actual number of data points | 11 | X value of data point 0; Data set 6
 |  | 1 | X value of data point 0; Data set 1 | 12 | Y value of data point 0; Data set 6
 |  | 2 | Y value of data point 0; Data set 1 | 13 | X value of data point 0; Data set 7
 |  | 3 | X value of data point 0; Data set 2 | 14 | Y value of data point 0; Data set 7
 |  | 4 | Y value of data point 0; Data set 2 | 15 | X value of data point 0; Data set 8
 |  | 5 | X value of data point 0; Data set 3 | 16 | Y value of data point 0; Data set 8
 |  | 6 | Y value of data point 0; Data set 3 | 17 | X value of data point 1; Data set 1
 |  | 7 | X value of data point 0; Data set 4 | 18 | Y value of data point 1; Data set 1
 |  | 8 | Y value of data point 0; Data set 4 | … | …
 |  | 9 | X value of data point 0; Data set 5 | 16n+15 | X value of data point n; Data set 8
 |  | 10 | Y value of data point 0; Data set 5 | 16n+16 | Y value of data point n; Data set 8
 |  | Data Type: 32-bit; Number of Data Sets: 1
 |  | Word | Description | Word | Description
 |  | 0,1 | Actual number of data points | 8,9 | Y value of data point 1
 |  | 2,3 | X value of data point 0 | … | …
 |  | 4,5 | Y value of data point 0 | 4n+2, 4n+3 | X value of data point n
 |  | 6,7 | X value of data point 1 | 4n+4, 4n+5 | Y value of data point n
 |  | Data Type: 32-bit; Number of Data Sets: 2
 |  | Word | Description | Word | Description
 |  | 0,1 | Actual number of data points | 12,13 | Y value of data point 1; Data set 1
 |  | 2,3 | X value of data point 0; Data set 1 | 14,15 | X value of data point 1; Data set 2
 |  | 4,5 | Y value of data point 0; Data set 1 | 16,17 | Y value of data point 1; Data set 2
 |  | 6,7 | X value of data point 0; Data set 2 | … | …
 |  | 8,9 | Y value of data point 0; Data set 2 | 8n+6, 8n+7 | X value of data point n; Data set 2
 |  | 10,11 | X value of data point 1; Data set 1 | 8n+8, 8n+9 | Y value of data point n; Data set 2
 |  | Data Type: 32-bit; Number of Data Sets: 8
 |  | Word | Description | Word | Description
 |  | 0,1 | Actual number of data points | 22,23 | X value of data point 0; Data set 6
 |  | 2,3 | X value of data point 0; Data set 1 | 24,25 | Y value of data point 0; Data set 6
 |  | 4,5 | Y value of data point 0; Data set 1 | 26,27 | X value of data point 0; Data set 7
 |  | 6,7 | X value of data point 0; Data set 2 | 28,29 | Y value of data point 0; Data set 7
 |  | 8,9 | Y value of data point 0; Data set 2 | 30,31 | X value of data point 0; Data set 8
 |  | 10,11 | X value of data point 0; Data set 3 | 32,33 | Y value of data point 0; Data set 8
 |  | 12,13 | Y value of data point 0; Data set 3 | 34,35 | X value of data point 1; Data set 1
 |  | 14,15 | X value of data point 0; Data set 4 | 36,37 | Y value of data point 1; Data set 1
 |  | 16,17 | Y value of data point 0; Data set 4 | … | …
 |  | 18,19 | X value of data point 0; Data set 5 | 32n+30, 32n+31 | X value of data point n; Data set 8
 |  | 20,21 | Y value of data point 0; Data set 5 | 32n+32, 32n+33 | Y value of data point n; Data set 8
Number of Data Sets |  | Specifies how many data sets the scatter chart will display. A scatter chart can display up to 8 sets of data.
Maximum Number of Data Points Per Data Set |  | Specifies the maximum number of data points that the scatter chart will display for every data set. A scatter chart can display up to 999 data points for one data set. Note: The actual number of data points for every data set is specified at runtime. The actual number must not exceed the maximum number.
Show Mark |  | Check this option so the scatter chart will show a square mark on every data point.
Show Line |  | Check this option so the scatter chart will display a line between two adjacent data points of a data set.
Clear Trigger |  | The bit variable or the word's bit variable that triggers the scatter chart to clear its content when its state changes from off to on. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Dynamic Range | Dynamic Range | Check this option so the minimum and the maximum for the X and Y values of each data set can be specified at runtime. When this option is selected, the minimum and maximum of the marks for the X axis and Y axis can be specified at runtime as well. The data that specifies the above two ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block in the Dynamic Range Parameter Block field.
 | Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the line chart when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block when the data type is 16-bit.
 |  | Word | Description
 |  | 0,1 | The minimum of the mark for the X axis; 32-bit integer number
 |  | 2,3 | The maximum of the mark for the X axis; 32-bit integer number
 |  | 4,5 | The minimum of the mark for the Y axis; 32-bit integer number
 |  | 6,7 | The maximum of the mark for the Y axis; 32-bit integer number
 |  | 8 | The minimum of X values for pen #1; 16-bit integer number or 16-bit unsigned integer number
 |  | 9 | The maximum of X values for pen #1; (Same as above)
 |  | 10 | The minimum of Y values for pen #1; (Same as above)
 |  | 11 | The maximum of Y values for pen #1; (Same as above)
 |  | 12 | The minimum of X values for pen #2; (Same as above)
 |  | 13 | The maximum of X values for pen #2; (Same as above)
 |  | … | …
 |  | 38 | The minimum of Y values for pen #8; (Same as above)
 |  | 39 | The maximum of Y values for pen #8; (Same as above)
 |  | The following table shows the data arrangement of the parameter block when the data type is 32-bit.
 |  | Word | Description
 |  | 0,1 | The minimum of the mark for the X axis; 32-bit integer number
 |  | 2,3 | The maximum of the mark for the X axis; 32-bit integer number
 |  | 4,5 | The minimum of the mark for the Y axis; 32-bit integer number
 |  | 6,7 | The maximum of the mark for the Y axis; 32-bit integer number
 |  | 8,9 | The minimum of X values for pen #1; 32-bit integer number, 32-bit unsigned integer number, or 32-bit floating point number
 |  | 10,11 | The maximum of X values for pen #1; (Same as above)
 |  | 12,13 | The minimum of Y values for pen #1; (Same as above)
 |  | 14,15 | The maximum of Y values for pen #1; (Same as above)
 |  | … | …
 |  | 64,65 | The minimum of X values for pen #8; (Same as above)
 |  | 66,67 | The maximum of X values for pen #8; (Same as above)
 |  | 68,69 | The minimum of Y values for pen #8; (Same as above)
 |  | 70,71 | The maximum of Y values for pen #8; (Same as above)
Cursor | Show Cursor | Check this option so the scatter chart will display a cursor. You can touch and drag the cursor within the chart.
 | Color | Select a color for the cursor.
 | Display Current Coordinate | Check this option to display the X and Y coordinate of the current cursor position.
 | Display Current Point Data | Check this option to display the X and Y value of the current selected data.
 | Font | Select a font for displaying the values of the selected data point.
 | Snap To The Nearest Data Point | Check this option to find the closest point to the current cursor position within the search circle as the selected point.
 | Search Radius | Specifies the radius of the search circle. The center of the search circle is at the current cursor position.
 | Cursor Data Receiving Buffer | The variable that will receive the value of the selected data point. It must be a piece of the internal memory. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the buffer when the data type is 16-bit.
 |  | Word | Description
 |  | 0,1 | X coordinate of the current cursor position.
 |  | 2,3 | Y coordinate of the current cursor position.
 |  | 4 | The data set number of the current selected data.
 |  | 5 | The sequence number of the current selected data.
 |  | 6 | X value of current selected data.
 |  | 7 | Y value of current selected data.
 |  | The following table shows the data arrangement of the buffer when the data type is 32-bit.
 |  | Word | Description
 |  | 0,1 | X coordinate of the current cursor position.
 |  | 2,3 | Y coordinate of the current cursor position.
 |  | 4 | The data set number of the current selected data.
 |  | 5 | The sequence number of the current selected data.
 |  | 6,7 | X value of current selected data.
 |  | 8,9 | Y value of current selected data.


8.5.5 Pen Settings

Scatter Chart - Pen Settings

This section describes how to define the pens for the scatter charts. The following is an example of the Pen page.

The following table describes each property in the Pen page. Note that pen #1 is for data set 1; pen #2 is for data set 2; and so on.

Property |  | Description
Pen #1 to Pen #8 | Dynamic Range | Check this option so the minimum and maximum for the X and Y values of the associated data set will be specified at runtime. This option is available when the Dynamic Range option in the General page is selected.
 | X Min. | The X minimum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | X Max. | The X maximum of the data value of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Y Min. | The Y minimum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Y Max. | The Y minimum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Mark Size | Select a size for the data point mark. The selection is valid when the Show Mark option in the General page is selected.
 | Line Style | Select a style for the connecting lines. The selection is valid when the Show Line option in the General page is selected.
 | Color | Select a color for the connecting lines.


8.6 Rotation Indicators

Rotation Indicators

A rotation indicator can display the status of a rotation device. It has a multiple of 4 lamps distributed evenly on its ring base as shown in the following figure. By controlling the lamps' on and off, it generates intuitively understandable messages for showing the status of the associated device.

You can command the object to do the following:

1) Turn off all the lamps to indicate that the device is off or inactive.

2) Turn on only the lamp that is the closest one to the specified angle to indicate the angular position of the device.

3) Make the lamps take turns to light in the specified sequence to generate the visual effect of rotation.

4) Turn on only the lamp of degree-zero to indicate that the device is ready or at its initial position.

5) Turn on all the lamps to indicate that the device is shut down or under initialization.

6) Blink all the lamps together with the specified speed to indicate that the device has an urgent condition.

7) Specify the degree-zero position on the left/right/top/bottom.

To create a rotation indicator, select the menu item "Object>>Graph/Chart>> [image] Range Indicator" and place the new object on the current screen.

You can complete all the settings of a rotation indicator in the Rotation Indicator property sheet. This sheet contains the following two pages.

■ General
Described in Section 8.6.3.

■ Visibility
Described in Section 4.4.6.


8.6.1 Operation Options

Rotation Indicator - Operation Options

The following operation option can be added to a rotation indicator. Select and set up the option in the Rotation Indicator property sheet.

Options | Description
Visibility Control | You can show or hide the Rotation Indicator by the specified bit or by the current user level. Select and set up this option in the Visibility page.


8.6.2 Settings

Rotation Indicator - Settings

You can complete all the settings of a rotation indicator in the Rotation Indicator property sheet. This sheet contains the following two pages.

■ General
Described in Section 8.6.3.

■ Visibility
Described in Section 4.4.6.


8.6.3 General Settings

Rotation Indicator - General Settings

This section describes how to define the general settings for rotation indicators. The following is an example of the General page of the Rotation Indicator property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for rotation indicators is RInnnn.
Note |  | You can type a note for the object.
Number of Lamps |  | Specifies how many lamps the object has. The maximum is 40.
Degree-0 Position |  | Select the position you want the degree-0 lamp located. The position can be on the left or the right or the top or the bottom.
Ring Base | Width | The thickness of the ring in pixel.
 | Color | The color of the ring.
 | Border Thickness | The thickness of the ring border in pixel. Select 0 if no border is desired.
 | Border Color | The color of the ring border.
Lamp | Radius | The radius of the lamps in pixel.
 | ON Color | The color of the lamps when they are turned on.
 | OFF Color | The color of the lamps when they are turned off.
 | Blink Color | The color of the lamps when they are turned on while blinking.
 | Border Thickness | The thickness of the lamps’ border in pixel. Select 0 if no border is desired.
 | Border Color | The Color of the lamps' border.
Data Type |  | The type of the data that controls the object.
Display Control Block |  | Specifies the address or tag of the display control block that controls the object. The display control block can be an unsigned word array or an unsigned double-word array with 3 data members. The following table shows the data members of the display control block.
 |  | Word No. or Double-word No. | Data Member |  | Description
 |  | 0 | Command Word |  | Stores the command code of the desired operation.
 |  | 1 | Speed Control Word |  | Specifies the speed for the animated rotation or the lamp blinking operation.
 |  | 2 | Angle Control Word |  | Stores the angle to be indicated by the object.
 |  | The following table describes the operation of each command code.
 |  | Command Code |  | Description
 |  | 0 |  | Turns off all lamps
 |  | 1 |  | Indicates the angle specified in the Angle Control Word, The angle is counted clockwise as shown below. Angle Control Word
 |  |  |  | Value | Description
 |  |  |  | 0-360 | Valid angles
 |  |  |  | Others | Invalid angles. The values are ignored.
 |  | 2 |  | Indicates the angle specified in the Angle Control Word. The angle is counted counter-clockwise as shown below. See the description of Angle Control Word in the above cell.
 |  | 3 |  | Shows the animated clockwise rotation with the speed specified in the Speed Control Word. Speed Control Word
 |  |  |  | Value | Description
 |  |  |  | 0 | Invalid number. Value 1 is assumed.
 |  |  |  | 1-1000 | The interval that a lamp takes turns to light. The unit is 0.01 second. If the object has N lamps and the value in the Speed Control Word is V, the time of one rotation is N x V x 0.01 second. For example, if the object has 20 lamps and the value is 5, the time of one rotation is 20 x 5 x 0.01 = 1 second. Note tha thte system may not be able to perform as fast as the specified.
 |  |  |  | Others | Invalid numbers. Value 1000 is assumed.
 |  | 4 |  | Shows the animated counter-clockwise rotation with the speed specified in the Speed Control Word. See the description of Speed Control Word in the above cell
 |  | 5 |  | Turns on the lamp of degree-zero only.
 |  | 6 |  | Turns on all the lamps.
 |  | 7 |  | Blinks all the lamps together at the speed specified in the Speed Control Word. Speed Control Word
 |  |  |  | Value | Description
 |  |  |  | 0 | Invalid number. The value 1 is assumed.
 |  |  |  | 1-100 | The interval to blink the lamps once. The unit is 0.1 second. For example, the value of 10 will cause the lamps to blink once every second. Note that the system may not be able to perform as fast as the specified.
 |  |  |  | Others | Invalid numbers. The value 100 is assumed.
 |  | Click [image] to bring up the Address Input Keypad and specify the desired address for the Display Control Block field. Click [image] to bring up the Select Tag dialog box and select the desired tag for the Write Display Control Block field.


9.1.1 Basic Operations

Pipeline - Basic Operations

A pipeline is composed of L/T/Cross connectors and pipes. With the software, you can create a pipeline easily and efficiently. You can also control a pipeline to change color, blink, and/or show the flow effect dynamically at runtime.

The following is a sample of a pipeline with the flow effect:

To draw a pipeline, you need to do the following:

  1. In the Object menu or Object toolbar, click Pipeline [image] to draw a pipeline.
  2. Move the cursor onto the screen where you want to draw a pipeline and click the position for the start point of the pipeline.
  3. Continue clicking on the screen to place as many L connectors needed for the pipes in the pipeline.
  4. Right-click to complete the pipeline.
  5. Drag one blue handle on the boundary of the pipeline at a time to resize the pipeline.
  6. Drag one blue or black handle on the pipeline at a time to adjust the position and length of the selected pipe of the pipeline. The pipe or connector with black handles represents the selected pipe or connector.

The picture on the left shows the handles of a pipeline. The blue handles on the boundary of the pipeline are for resizing the entire pipeline. The blue or black handles on the pipeline are for moving the vertices of the selected pipe.
Position the mouse pointer over one of the handles. When the cursor changes to 1 or 1 or 1 or 1 drag the handle until the pipeline is the shape and size you want.

  7. Right-click anywhere on the pipeline and use the Insert Connector command on the object pop-up menu to insert a new T/ Cross connector to the pipeline. Alternatively, right-click the existing connector or pipe of the pipeline and use the Delete Pipe Segment command on the object pop-up menu to delete the connector and its connected pipe.

Pop-up menu | Description
Insert Connector | Add an Up/Down T or Cross connector to the specified position on the horizontal pipe. add an up/down Add a Left/Right T or Cross connector to the specified position on the vertical pipe add a left/right
Delete Pipe Segment | Delete a selected pipe segment and its successor. selected pipe

You can complete all the settings of a pipeline in the Pipeline property sheet. This sheet contains the following three pages.

■ General
Described in Section 9.1.4.

■ Pipe
Described in Section 9.1.5.

■ Visibility
Described in Section 4.4.6.


9.1.2 Operation Options

Pipeline - Operation Options

The following operation option can be added to a pipeline. Select and set up the option in the Pipeline property sheet.

Options | Description
Visibility Control | You can show and hide a pipeline by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.1.3 Settings

Pipeline - Settings

You can complete all the settings of a pipeline in the Pipeline property sheet. This sheet contains the following three pages.

■ General
Described in Section 9.1.4.

■ Pipe
Described in Section 9.1.5.

■ Visibility
Described in Section 4.4.6.


9.1.4 General Settings

Pipeline - General Settings

This section describes how to define the general settings for the pipelines. The following is an example of the General page of the Pipeline property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the pipelines is PLnnnn.
Note |  | You can type a note for the object.
Type |  | The type of the pipeline. There are five types available:
 |  | Type | Example
 |  | 2D Type 1 | 2d type 1
 |  | 2D Type 2 | 2d type 2
 |  | 2D Type 3 | 2d type 3
 |  | 3D Type 1 | 3d type1
 |  | 3D Type 2 | 3d type 2
Shading |  | Select a shading method when the Type is “3D Type 1” or “3D Type 2”. There are three shading methods available: methods
Diameter |  | Specifies the diameter of the pipeline.
Border Color |  | Specifies the border color of the pipeline.
Body/Content Color |  | Specifies the body or content color of the pipeline.
Flow Effect On/Off Control |  | Check this option if you want to enable or disable the flow effect for the pipeline at runtime. The flow effect will be enabled when bit 3 of the control word is on.
Body/Content Color Changeable | <Check Box> | Check this option if you want to control the body/content color of the pipeline at runtime. The variable that controls the pipeline is called the control word and is specified in the Address field.
 | View Color | Select a color so you can view the pipeline painted with that color.
 |  | View Color | Painted With
 |  | 1 | Body/Content Color
 |  | 2 | Body/Content Color #2
 |  | 3 | Body/Content Color #3
 | Body/Content Color #2 | Select a color as the second body/content color for the pipeline. This color will be used to paint the pipeline when bit 0 of the control word is on.
 | Body/Content Color #3 | Select a color as the third body/content color for the pipeline. This color will be used to paint the pipeline when bit 1 of the control word is on.
 | Blink On/Off Control | Check this option if you want the pipeline to blink at runtime. The pipeline will blink when bit 2 of the control word is on.
Control Word | Size | Select Word or Double Word for the size of the control word.
 | Address | Specifies the variable that controls the pipeline. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the bit assignment data of the variable:
 |  | Bit | Assignment
 |  | 0 | Shows body/content color #2 when this bit is on
 |  | 1 | Shows body/content color #3 when this bit is on
 |  | 2 | Blinks when this bit is on
 |  | 3 | Shows the flow effect when this bit is on
Flow Effect | Default Symbols | Select a set of symbols as the default symbols for the flow effect. There are 14 available sets: available sets Click apply default symbols to make all pipes of the pipeline use the default symbols for the flow effect.
 | Default Color | Select a color as the default color for the flow symbols. Click apply default color to make all pipes of the pipeline use the default color for the flow symbols.
 | Default Length Ratio(%) | Specifies the length ratio between pipe and flow effect as the default length ratio. Click apply default length to make all pipes of the pipeline use the default length ratio for the flow effect.


9.1.5 Pipe Settings

Pipeline - Pipe Settings

This section describes how to define the pipes for the pipelines. The following is an example of the Pipe page.

The following table describes each property in the Pipe page.

Property |  | Description
Pipe | Type | Specifies the type of the selected pipe.
 | X1 | The horizontal coordinate of the upper-left corner of the selected pipe.
 | Y1 | The vertical coordinate of the upper-left corner of the selected pipe.
 | X2 | The horizontal coordinate of the lower-right corner of the selected pipe.
 | Y2 | The vertical coordinate of the lower-right corner of the selected pipe.
Flow Effect | <Check Box> | Select this option if you want the selected pipe to show the flow effect.
 | Symbol | Select a symbol for the flow effect.
 | Color | Select a color for the flow symbol
 | Length Ratio(%) | Specifies the length ratio between pipe and flow effect.


9.2 Dynamic Circles

Dynamic Circles

You can change the size, position, and/or color of a dynamic circle at runtime.

You can complete all the settings of a dynamic circle in the Dynamic Circle property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.2.3.

■ Visibility
Described in Section 4.4.6.


9.2.1 Operation Options

Dynamic Circle - Operation Options

The following operation option can be added to a dynamic circle. Select and set up the option in the Dynamic Circle property sheet.

Options | Description
Visibility Control | You can show and hide a dynamic circle by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.2.2 Settings

Dynamic Circle - Settings

You can complete all the settings of a dynamic circle in the Dynamic Circle property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.2.3.

■ Visibility
Described in Section 4.4.6.


9.2.3 General Settings

Dynamic Circle - General Settings

This section describes how to define the general settings for dynamic circles. The following is an example of the General page of the Dynamic Circle property sheet.

The following table describes each property in the General page.

Property |  |  | Description
ID |  |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the dynamic circles is DCnnnn.
Note |  |  | You can type a note for the object.
Data Type |  |  | The data type of the variable that controls the dynamic circle. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, and 32-Bit BCD.
Monitor Address |  |  | Specifies the variable that controls the dynamic circle. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the variable. Note: About color values, see Section 9.2.4.
Controllable |  | Center | Check this option if you want to control the center.
 |  | Radius | Check this option if you want to control the radius.
 |  | FG Color | Check this option if you want to control the FG color. This option is available when the Circle is Solid and the Pattern is not solid white.
Circle | Solid | <Check Box> | Check this option if you want the dynamic circle to be filled with the selected pattern.
 |  | Pattern | Select a pattern for filling the dynamic circle.
 |  | FG Color | Select a color to paint the black part of the pattern. This item is available when the Pattern is not solid white.
 |  | BG Color | Select a color to paint the white part of the pattern.
 | Border | <Check Box> | Check this option if you want the dynamic circle to have a border.
 |  | Border Color | The border color.


9.2.4.1 64K-color Models

64K-color Models

64K-color HMI models use one word to specify a color. The color word contains the three color components: red, green, and blue. The format to store the three color components of a color is described below.

Bit 0-4: 5 bits to store the blue component
Bit 5-10: 6 bits to store the green component
Bit 11-15: 5 bits to store the red component

Example

Color | Red | Green | Blue | Hex. Value | Decimal Value
Black | 0 | 0 | 0 | 0000H | 0
Blue | 0 | 0 | 16 | 0010H | 16
Green | 0 | 32 | 0 | 0400H | 1024
Cyan | 0 | 32 | 16 | 0410H | 1040
Red | 16 | 0 | 0 | 8000H | 32768
Magenta | 16 | 0 | 16 | 8010H | 32784
Brown | 16 | 32 | 0 | 8400H | 33792
Dark gray | 16 | 32 | 16 | 8410H | 33808
Gray | 24 | 48 | 24 | C618H | 50712
Light blue | 0 | 0 | 31 | 001FH | 31
Light green | 0 | 63 | 0 | 07E0H | 2016
Light cyan | 0 | 63 | 31 | 07FFH | 2047
Light red | 31 | 0 | 0 | F800H | 63488
Light magenta | 31 | 0 | 31 | F81FH | 63519
Yellow | 31 | 63 | 0 | FFE0H | 65504
White | 31 | 63 | 31 | FFFFH | 65535


9.2.4.2 256-color Models

256-color Models

The following table lists the color index values used by 256-color HMI models. You can use the color index values to specify the desired colors for your application.

Color Index Value | Color | Color Index Value | Color | Color Index Value | Color
0 | Black | 84 | Autumn Orange | 159 | Chalk
1 | Blue; 53% Blue | 85 | Light Orange | 166 | Deep Blue
2 | Red; 53% Red | 88 | Deep Navy Blue | 172 | Deep River
3 | Green; 53% Green | 91 | Grass Green | 174 | Twilight Blue
4 | Magenta; 53% Magenta | 94 | Deep Purple | 177 | Turquoise
5 | Cyan; 53% Cyan | 96 | Moss Green | 178 | Purple
6 | Brown; 53% Yellow | 97 | Kentucky Green | 179 | Majestic Purple
7 | Light blue | 103 | Army Green | 180 | Twilight Violet
8 | Gray; 50% Black | 107 | Crimson | 182 | Light Blue Green
9 | Light red | 109 | Khaki | 186 | Violet
10 | Light green | 110 | Dull Green | 187 | Pale Purple
11 | Light magenta | 113 | Regal red | 189 | Ghost Green
12 | Light gray; 20% Black | 117 | Moon Green | 193 | Pink
13 | Light cyan | 118 | Neon Red | 194 | Faded Pink
14 | Yellow | 120 | Tropical Pink | 195 | Pale Yellow
15 | White | 121 | Peach | 200 | Sky Blue
23 | Murky Green | 123 | Light Yellow | 209 | Deep Azure
29 | Walnut | 125 | Navy Blue | 210 | Electric Blue
34 | Ruby red | 130 | Storm Blue | 211 | Baby Blue
39 | Chartreuse | 132 | Desert Blue | 214 | Blue Purple
41 | Brick Red | 134 | Sea Green | 216 | Blue Violet
48 | Orange | 137 | Grape | 217 | Pastel Blue
50 | Deep Yellow | 139 | Ocean Green | 219 | Ice Blue
54 | Forest Green | 142 | Deep Violet | 221 | Neon Purple
62 | Spring Green | 144 | Dusty Plum | 222 | Light Purple
65 | Dark Brown | 146 | Faded Green | 223 | Easter Purple
66 | Olive Drab | 147 | Mint Green | 224 | Powder Blue
67 | Avocado Green | 149 | Deep Rose | 229 | Light Violet
73 | Olive | 150 | Dusty Rose |  |
74 | Martian Green | 155 | Hot Pink |  |
78 | Red Brown | 156 | Deep Pink |  |
79 | Gold | 157 | Soft Pink |  |
80 | Banana Yellow | 158 | Sand |  |


9.3 Dynamic Rectangles

Dynamic Rectangles

You can change the size, position, and/or color of a dynamic rectangle at runtime.

You can complete all the settings of a dynamic rectangle in the Dynamic Rectangle property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.3.3.

■ Visibility
Described in Section 4.4.6.


9.3.1 Operation Options

Dynamic Rectangle - Operation Options

The following operation option can be added to a dynamic rectangle. Select and set up the option in the Dynamic Rectangle property sheet.

Options | Description
Visibility Control | You can show and hide a dynamic rectangle by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.3.2 Settings

Dynamic Rectangle - Settings

You can complete all the settings of a dynamic rectangle in the Dynamic Rectangle property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.3.3.

■ Visibility
Described in Section 4.4.6.


9.3.3 General Settings

Dynamic Rectangle - General Settings

This section describes how to define the general settings for dynamic rectangles. The following is an example of the General page of the Dynamic Rectangle property sheet.

The following table describes each property in the General page.

Property |  |  | Description
ID |  |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the dynamic rectangles is DRnnnn.
Note |  |  | You can type a note for the object.
Data Type |  |  | The data type of the variable that controls the dynamic rectangle. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, and 32-Bit BCD.
Monitor Address |  |  | Specifies the variable that controls the dynamic rectangle. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the monitored variable. Note: About color values, see Section 9.2.4.
Controllable |  | Position | Check this option when you want to control the position.
 |  | Size | Check this option when you want to control the size.
 |  | FG Color | Check this option when you want to control the FG color. This option is available when the Rectangle is Solid and the Pattern is not solid white.
Anchor Point |  |  | Select one of the following four corners of the dynamic rectangle to stay fixed as its size changes: Upper Left, Upper Right, Lower Left, and Lower Right. This item is available when Size is controllable but Position is not controllable.
Rectangle | Solid | Solid | Check this option if you want the dynamic rectangle to be filled with the selected pattern.
 |  | Pattern | Select a pattern to fill the dynamic rectangle.
 |  | FG Color | Select a color to paint the black part of the pattern. This item is available when the Pattern is not solid white.
 |  | BG Color | Select a color to paint the white part of the pattern.
 | Border | Border | Check this option if you want the dynamic rectangle to have a border.
 |  | Border Color | The border color.


9.4 GIF Displays

GIF Displays

You can use a GIF display to show a GIF image or a transparent GIF image and control the animation of that image. The transparent GIF allows the background color or texture to show through the areas that you define as transparent in the image.

You can complete all the settings of a GIF display in the GIF Display property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.4.3.

■ Visibility
Described in Section 4.4.6.


9.4.1 Operation Options

GIF Display - Operation Options

The following operation option can be added to a GIF display. Select and set up the option in the GIF Display property sheet.

Options | Description
Visibility Control | You can show or hide a GIF display by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.4.2 Settings

GIF Display - Settings

You can complete all the settings of a GIF display in the GIF Display property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.4.3.

■ Visibility
Described in Section 4.4.6.


9.4.3 General Settings

GIF Display - General Settings

This section describes how to define the general settings for the GIF displays. The following is an example of the General page of the GIF Display property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the GIF displays is GDnnnn.
Note |  | You can type a note for the object.
Graphic |  | Select a GIF image for the GIF display. You can use the drop-down list to select a GIF image from the picture database. You can click [image] to select a GIF image from a file. You can click [image] to select a GIF image from a library file. If the selected GIF image is not from the picture database, it is imported and saved in the picture database.
Keep Graphic Size |  | Check this option so the size of the selected graphic will not change with the object’s size.
Animation | Enabled By Bit | Check this option so the animation will be enabled by the specified bit variable.
 |  | Specifies the bit variable or the word's bit variable that enables the animation. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The animation is enabled when the state of the variable is on.
 | Speed Controlled By Word | Check this option so the speed of the animation will be controlled by the specified word variable.
 |  | Specifies the variable that controls the speed of the animation. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The value of the variable can be from 0 to 10. The slowest speed is 1 and the highest speed is 10. The value 0 disables the animation.
 | Speed | Select a speed from 1 to 10 for the animation. The slowest speed is 1 and the highest speed is 10.
run testing |  | Click this button to see the animation of the GIF display with the current settings on the screen.


9.5.1 Basic Operations

Picture Display - Basic Operations

You can use a variable to select and display a predefined picture with a picture display.

A picture display can have up to 256 states. Each state can have a predefined picture. The maximum number of states that a picture display can have is determined by the state type and the data type of the monitored variable. The following table shows the maximum in each case.

State Type | Type of Variable | Maximum
Bit | Bit | 2
Value | 16-bit | 256
 | 32-bit | 256
LSB | 16-bit | 17
 | 32-bit | 33
Animation | Bit | 256 Note: This is a special state type that is unique to picture displays. The bit variable is used to control the animation. When the bit is on, the animation is enabled. When the bit is off, the animation is disabled. The animation is performed by showing the picture of each state one by one at a specified change frequency.

You need to specify the number of states for a picture display and the number must not exceed the allowable maximum. You can define a picture for each state. At runtime, a picture display shows the picture corresponding to the state of the monitored variable. The state of the monitored variable is determined by the state type and value of the variable.

You can complete all the settings of a picture display in the Picture Display property sheet. This sheet contains the following three pages.

■ General
Described in Section 9.5.4.

■ Picture
Described in Section 4.3.7.

■ Visibility
Described in Section 4.4.6.


9.5.2 Operation Options

Picture Display - Operation Options

The following operation option can be added to a picture display. Select and set up the option in the Picture Display property sheet.

Options | Description
Visibility Control | You can show or hide a picture display by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.5.3 Settings

Picture Display - Settings

You can complete all the settings of a picture display in the Picture Display property sheet. This sheet contains the following three pages.

■ General
Described in Section 9.5.4.

■ Picture
Described in Section 4.3.7.

■ Visibility
Described in Section 4.4.6.


9.5.4 General Settings

Picture Display - General Settings

This section describes how to define the general settings for the picture displays. The following is an example of the General page of the Picture Display property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the picture displays is PDnnnn.
Note |  | You can type a note for the object.
Shape | Shape | Check this option if you want the picture display to have a frame.
 | Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, Pattern, FG Color, BG Color
External Label |  | Check this option if you want the picture display to have an external label. Set up the external label in the External Label page.
State |  | Select a state as the current state of the picture display so you can view and set the Pattern, FG Color, BG Color for that state.
State Type | Bit | The state type of the variable that controls the picture display. For details, see Section 9.5.1 Basic Operations.
 | Value
 | LSB
 | Animation
 | Display a picture loaded by an associated function button | You can display a JPEG picture at runtime loaded by the function "Load JPEG Picture" of a function button. This option is only available for X-series HMI units. For details, please see Section 5.4.1 Basic Operations of function buttons.
Data Type |  | The data type of the variable that controls the picture display. The supported data types include: Bit, 16-bit Unsigned Integer, 16-bit BCD, 32-bit Unsigned Integer, and 32-bit BCD.
Monitor Address |  | Specifies the variable that controls the picture display. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Total State |  | The number of states for the picture display.
Animation Frequency (Hz) |  | The rate to change the picture.


9.6 Animated Graphics

Animated Graphics

An animated graphic can change its image and move along a specified path automatically. You can also change the position and image of an animated graphic at runtime by a specified variable. You can use BMP/JPG/GIF/Object Group for the animated graphics.

You can complete all the settings of an animated graphic in the Animated Graphic property sheet. This sheet contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 9.6.3.

■ Picture
Described in Section 4.3.7.

■ GIF
Described in Section 9.6.4.

■ Path
Described in Section 9.6.5.

■ Visibility
Described in Section 4.4.6.


9.6.1 Operation Options

Animated Graphic - Operation Options

The following operation option can be added to an animated graphic. Select and set up the option in the Animated Graphic property sheet.

Options | Description
Visibility Control | You can show or hide an animated graphic by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.6.2 Settings

Animated Graphic - Settings

You can complete all the settings of an animated graphic in the Animated Graphic property sheet. This sheet contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 9.6.3.

■ Picture
Described in Section 4.3.7.

■ GIF
Described in Section 9.6.4.

■ Path
Described in Section 9.6.5.

■ Visibility
Described in Section 4.4.6.


9.6.3 General Settings

Animated Graphic - General Settings

This section describes how to define the general settings for animated graphics. The following is an example of the General page of the Animated Graphic property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the animated graphics is AGnnnn.
Note |  | You can type a note for the object.
Graphic | Type | Select one of the following graphic types for the animated graphic:
 |  | Type | Description
 |  | Bitmap/JPEG/Object Group | You can configure the animated graphic to have up to 256 pictures. The pictures can be bitmap images, JPEG images, or object groups. Define the pictures in the Picture page. For details, see Section 4.3.7 Picture Settings.
 |  | GIF | The animated graphic can have one GIF image. Define the GIF image in the GIF page. The speed of the animation for the GIF image is specified in the Change Rate field.
 | Total States | The number of graphic states. You can specify a picture for each state. The animated graphic displays the associated picture for the current state.
 | State Control | Select one of the following methods to control the state of the animated graphic.
 |  | State Control | Description
 |  | Automatic | The animated graphic changes the state in sequence starting from state 0 at a rate specified in the Change Rate field. When the current state is the last state, it will change back to state 0.
 |  | Position | The state is determined by where the animated graphic is. In the Path page, you can define the associated state for each path point. For details, see Section 9.6.5 Path Settings.
 |  | Dynamic | The state is determined at run time by the variable specified in the Monitor Address field.
 |  | The animated graphic displays the associated picture for the current state.
 | Change Rate (Hz) | Select a rate when the State Control is Automatic or the Graphic Type is GIF.
Movement | Path Type | There are six path types: Still, Horizontal Line, Vertical Line, Polyline, Dynamic, and Dynamic; Predefined Positions. Select one of the following path types for the animated graphic:
 |  | Path Type | Description
 |  | Still | The animated graphic does not move.
 |  | Horizontal Line | The animated graphic moves along a horizontal line.
 |  | Vertical Line | The animated graphic moves along a vertical line.
 |  | Polyline | The animated graphic moves along a set of connected lines. Tips: You can right-click anywhere on the connected line and use the Insert Point command on the pop-up menu to insert a new point to the polyline. You can also right-click the existing point and use the Delete Point command to delete the point. You can also position the mouse pointer over one of the points. When the cursor changes to drag point , drag the point to the position you want.
 |  | Dynamic | The position of the animated graphic is determined at runtime by the variable specified in the Monitor Address field. The data elements of the variable that specify the position are X and Y. They specify the coordinate of the position.
 |  | Dynamic; Predefined Positions | The position of the animated graphic is determined at runtime by the variable specified in the Monitor Address field. The data element of the variable that specifies the position is Point. It specifies which point of the predefined path that the animated graphic should move to.
Effect | Marquee | Check this option if you want the current picture of the animated graphic to scroll into both ends of its path. This option is available when the Path Type is Horizontal Line or Vertical Line.
 | Duplicate Picture | Check this option so the current picture of the animated graphic will be duplicated by a specified number of times. All the copies will display and move together. This option is available when the Marquee option is selected.
 | Number of Copies | Specifies the number of copies to make for the Duplicate Picture option.
Monitor Address |  | Specifies the variable that controls the animated graphic. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the variable:
Data Type |  | The data type of the variable that controls the animated graphic. The supported data types include: 16-bit Unsigned Integer, 32-bit Unsigned Integer, 16-bit Signed Integer, 32-bit Signed Integer, 16-bit BCD, and 32-bit BCD.


9.6.3.1 Using Object Group for Animated Graphics

Using Object Group for Animated Graphics

You can use an object group for the animated graphic.

To create an object group, you can first group the selected objects and then save the group into the object library.
To use the object group, you can click [image] the button in the Picture page to bring up the Copy Object from Object Library dialog box. In the dialog, you can select an existing object group for the animated graphic.

Any modifications such as moving the group, resizing the group, deleting the group etc. will be applied to the objects of the group at the same time. However, each object in the group can have its own properties. You can double click [image] the icon to bring up the properties dialog box of the corresponding object and then define the settings of each object.

The following is an example showing you how to edit the object group for the animated graphic. The object group includes a numeric entry, a numeric display and a picture object. They will move along the set of connected lines. At the same time, the value of numeric entry and the numeric display will change.

1. Set up the animated graphic with the object group as its graphic.

2. Set up the picture object

3. Set up the numeric entry


9.6.4 GIF Settings

Animated Graphic - GIF Settings

This section describes how to define the GIF image for animated graphics. The following is an example of the GIF page.

The following table describes each property in the GIF page.

Property | Description
GIF | Select a GIF image for the animated graphic. You can use the drop-down list to select a GIF image from the picture database. You can click [image] to select a GIF image from a file. You can click [image] to select a GIF image from a library file. If the selected GIF image is not from the picture database, it is imported and saved in the picture database.
Keep Graphic Size | Check this option so the size of the selected GIF image will not change with the object’s size.


9.6.5 Path Settings

Animated Graphic - Path Settings

This section describes how to define the path settings for animated graphics. You can easily define the path of an animated graphic in the editing window. To edit the path of an animated graphic, click it to display the path as shown in the following example.

To modify the path, drag the path points to desired positions. You can insert a path point by right-clicking at the desired position on the path and clicking Insert Point from the popup menu. To delete a path point, right-click at the path point and click Delete Point on the popup menu. Use the Path page to define all the properties of the path.

The following is an example of the Path page.

The following table describes each property in the Path page.

Property |  | Description
X |  | The horizontal coordinate of the selected path point.
Y |  | The vertical coordinate of the selected path point.
Picture for Forward Movement | State | The associated state of the selected path point for forward movement.
 | Name | The associated picture name of the selected state. It is also the associated picture name of the selected path point for forward movement.
Picture for Backward Movement | State | The associated state of the selected path point for backward movement.
 | Name | The associated picture name of the selected state. It is also the associated picture name of the selected path point for backward movement.


9.7 Path Display

Path Display

A path display is a screen object that can display a predefined path composed of points, lines, arcs, and circles. For example, a path display can be used to depict the working path of an automatic glue dispensing machine.

To create a path display, select Object->Dynamic Graphic->Path Display [image].

The coordinate system adopted by the path display is shown in the following figure. The origin is the upper-left corner of the display area of the path display.

The point selection function provided by the path display allows you to easily select a point on the displayed path and report the selection to a controller. To locate a desired point on the displayed path, use your finger tip to touch the point or move the cursor onto the point. When detecting the release of your finger tip, the path display finds the closest point to the cursor within the search radius and writes the coordinate of the point to the specified work block.

You can complete all the settings of a path display in the Path Display property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.7.3.

■ Visibility
Described in Section 4.4.6.


9.7.1 Operation Options

Path Display - Operation Options

The following operation option can be added to a path display. Select and set up the option in the Path Display property sheet.

Options | Description
Visibility Control | You can show or hide a path display by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.7.2 Settings

Path Display - Settings

You can complete all the settings of a path display in the Path Display property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.7.3.

■ Visibility
Described in Section 4.4.6.


9.7.3 General Settings

Path Display - General Settings

This section describes how to define the general settings for path display. The following is an example of the General page of the Path Display property sheet.

The following table describes each property in the General page.

Item |  |  | Description
ID |  |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the path display is DPnnnn.
Note |  |  | You can type a note for the object.
Transparent Background |  |  | Select this option if you want the object to have a transparent background.
Shape settings |  |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object . , Border Color, BG Color
Path Definition Block |  |  | The starting address of an internal memory block that stores the data of how to draw the path. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The data are arranged in the following format:
 |  |  | Word No. | Description
 |  |  | 0 | Number of path elements in the path
 |  |  | 1~8 | The definition of the first path element
 |  |  | 9~16 | The definition of the second path element
 |  |  | … | …
 |  |  | (8n-7)~8n | The definition of the nth path element
 |  |  | See Section 9.7.3.1 Definitions of Path Elements to know how to define path elements. The path elements include: points, lines, arcs, and circles. See Section 9.7.3.2 Color Values to know how to specify colors for path elements.
Drawing Trigger Bit |  |  | The bit or the word's bit that triggers the object to draw the path defined in the Path Definition Block. Click [image] to enter an address for this field. Click [image] to select a tag for this field. A 0 to 1 transition of the bit generates a valid trigger, so you should reset the bit to 0 before issuing next trigger. The object will copy the path definition from the Path Definition Block to its local memory so it can redraw the path later even the data in Path Definition Block changes.
Clear Trigger Bit |  |  | The bit or the word's bit that triggers the object to erase the path it has drawn. Click [image] to enter an address for this field. Click [image] to select a tag for this field. A 0 to 1 transition of the bit generates a valid trigger, so you should reset the bit to 0 before issuing next trigger. The path definition in the object’s local memory is erased too.
Point Selection | Enabled By Bit |  | Select the option if you want to enable and disable the point selection capability by a bit. Specify a bit when the option is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Cursor Color |  | The color of the cursor that helps the operator to locate a point.
 | Search Radius |  | The path display will find the closest point to the current cursor position within the search circle as the selected point. The center of the search circle is at the current cursor position and the radius is the Search Radius specified here.
 | Selection Report Data Type |  | The following table describes the structure of the report data when “16-bit Unsigned Integer” is selected.
 |  |  | Word No. | Description
 |  |  | 0 | The x-coordinate of the selected point
 |  |  | 1 | The y-coordinate of the selected point
 |  |  | 2 | The sequence number of the point element where the selected point is on
 |  |  | 3 | The type of the selected point. The following table describes its value and meaning.
 |  |  |  | Value |  | Meaning
 |  |  |  | 0 |  | The point of a point, the center of a circle, the starting point of a line, or the starting point of an arc.
 |  |  |  | 1 |  | The ending point of a line or the ending point of an arc.
 | Selection Report Receiving Buffer |  | The starting address of a word memory block that will receive the information of the selected point. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Operator Confirmation |  | Select the option if the operator confirmation is required before reporting the point selection.
 | Notification | <Check Box> | Select the option if notifying a bit is required before reporting the point selection.
 |  | Signal | Select one of the following signals for the notification:
 |  |  | Signal |  | Description
 |  |  | Level |  | Set the specified bit to the specified state.
 |  |  | Pulse |  | Send a positive pulse to the specified bit.
 |  | Bit | Available when the Notification field is checked. Specifies the bit for the operation done notification. Click [image] to enter an address for this field. Click [image] to select a tag for this field.


9.7.3.1 Definitions of Path Elements

Path Display - Definitions of Path Elements

Definition data of a point:

Word | Mnemonic | Description
0 | type | The type code of a point is 0.
1 | color | The color of the point.
2 | x | The x-coordinate of the point.
3 | y | he y-coordinate of the point.
4~7 | (reserved) | Must be 0s

Definition data of a line:

Word | Mnemonic | Description
0 | type | The type code of a line is 1.
1 | color | The color of the line.
2 | x1 | The x-coordinate of the starting point.
3 | y1 | The y-coordinate of the starting point.
4 | x2 | The x-coordinate of the ending point.
5 | y2 | The y-coordinate of the ending point.
6 | pattern | The dash pattern of the line. Should be 0xffff for a solid line.
7 | (reserved) | Must be 0

Definition data of an arc:

Word | Mnemonic | Description
0 | type | The type code of an arc is 2. The arc is drawn from the starting point to the ending point counter-clockwise.
1 | color | The color of the arc.
2 | X | The x-coordinate of the center of the circle.
3 | y | The y-coordinate of the center of the circle.
4 | x1 | The x-coordinate of the starting point.
5 | y1 | The y-coordinate of the starting point.
6 | x2 | The x-coordinate of the ending point.
7 | y2 | The y-coordinate of the ending point.

Definition data of a circle:

Word | Mnemonic | Description
0 | type | The type code of a circle is 3.
1 | color | The color of the circle.
2 | x | The x-coordinate of the center.
3 | y | The Y-coordinate of the center.
4 | r | The radius of the circle.
5~7 | (reserved) | Must be 0s.

Definition data of thickness:

Word | Mnemonic | Description
0 | type | The type code of thickness is 8.
1 | (reserved) | Must be 0s.
2 | thickness | The thickness in pixel of the outline.
3~7 | (reserved) | Must be 0s.


9.7.3.2 Color Values

Path Display - Color Values

A color value is composed of 5-bit red component, 6-bit green component, and 5-bit blue component as shown in the following figure.

The following table lists the commonly used color values.

Color | Value
Black | 0x0000
Blue | 0x0010
Green | 0x0400
Cyan | 0x0410
Red | 0x8000
Magenta | 0x8010
Brown | 0x8400
Gray | 0xc618
Dark Gray | 0x8410
Light Blue | 0x001f
Light Green | 0x07e0
Light Cyan | 0x07ff
Light Red | 0xf800
Light Magenta | 0xf81f
Yellow | 0xffe0
White | 0xffff


9.7.4. Path Display for Rebar Bending Machine

Path Display for Rebar Bending Machine

A path display can be used to visualize the bending result of the rebar bending machine. The following is an example of the application:

■ Creating a path display

■ Making Bending Parameters Block

The user is allowed to bend max 32 segments for one piece of rebar. The following table describes the memory map of bending parameters:

Bending Parameters | Segment No. | Word No. | Example(SegPar @$U100) | Remark
Length of segment | 1 | 0 | $U100 |
 | 2 | 2 | $U102
 | ... | ... | ...
 | 32 | 62 | $U162
Angle/Radius of segment | 1 | 64 | $U164 |
 | 2 | 66 | $U166
 | ... | ... | ...
 | 32 | 126 | $U226
Direction of segment | 1 | 128.0 | $U228.0 | 0: Clockwise 1: Counter Clockwise
 | 2 | 128.1 | $U228.1
 | ... | ... | ...
 | 32 | 129.f | $U229.f
Shape of segment | 1 | 130 | $U230 | 0: Line 1: Arc 2: Circle
 | 2 | 132 | $U232
 | ... | ... |
 | 32 | 192 | $U292

■ Making Visualization Preprocess Request Block

The following table describes the memory map of visualization preprocess request block.

Word No. | Example (@$U300) | Description
0 | $U300 | Bit 0 1: Enable the anti-aliasing drawing feature Bit 1-15 Reserved
1 | $U301 | Thickness of the lines to be shown. Valid numbers: 1 to 5
2 | $U302 | The width of the associated Path Display
3 | $U303 | The height of the associated Path Display
4 | $U304 | 0: Auto Scaling; 1: Manual Scaling;
5 | $U305 | The scaling ratio. The unit is one hundredth. For example, the number 200 means 200% and the number 50 means 50%. The parameter is valid when Manual Scaling is selected. Valid numbers: 30 to 300
6 to 199 | $U306 to $U499 | The bending parameters.

■ Obtain the bending result by using system macro command

The data required by the Path Display to show the bending result can be obtained by using the system macro command numbered 0xf105.

SYS(0xf105, P1, P2)

Macro Command Paramter | Description
P1 | The starting address of the Visualization Preprocess Request Block that contains the parameters of how to generate the drawing data and the parameters of the bending operation.
P2 | The starting address of the Path Definition Block that is used by the associated Path Display. The system macro command generates the drawing data according to the parameters specified in the Visualization Preprocess Request Block and saves the drawing data in the Path Definition Block.

For Example:

$u300 = 1 // Anti-aliasing

$u301 = 2 // Line thickness = 2

$u302 = 400 // Width of the associated Path Display

$u303 = 270 // Height of the associated Path Display

$u304 = 1 // Manual scaling

$u305 = 85 // Scaling ratio: 85%

$U306 = MOV($U100,194) // Save bending parameter block starting at $U100 into visualization preprocess request block starting at $U306

SYS(0xf105, $U300, $U9999) // Save the drawing data in the path definition block starting at $U9999 upon the request saved in $U300


10.1.1 Basic Operations

Window Screen Display - Basic Operations

The Window Screen Display object allows you to specify a variable so that it can display the window screen specified by the variable at runtime on a screen.

You can complete all the settings of a window screen display in the Window Screen Display dialog box. This dialog box contains the following two pages.

■ General
Described in Section 10.1.4.

■ Visibility
Described in Section 4.4.6.


10.1.2 Operation Options

Window Screen Display - Operation Options

The following operation option can be added to a window screen display. Select and set the option in the Window Screen Display dialog box.

Options | Description
Visibility Control | You can show and hide a window screen display with a specified bit or the current user level. Select and set this option in the Visibility page.


10.1.3 Settings

Window Screen Display - Settings

You can complete all the settings of a window screen display in the Window Screen Display dialog box. This dialog box contains the following two pages.

■ General
Described in Section 10.1.4.

■ Visibility
Described in Section 4.4.6.


10.1.4 General Settings

Window Screen Display - General Settings

This section describes how to define the general settings for a window screen display. The following is an example of the General page of the Window Screen Display dialog box.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located and is unchangeable. The format of the IDs for the window screen display is SWNDnnnn.
Note |  | You can type a note for the object.
Display a fixed window screen |  | Check this option if you want to display a fixed window screen.
Display a window screen specified by the monitored variable |  | Check this option if you want to display a window screen specified by the monitored variable.
Window Screen |  | Specifies the window screen to be shown in the window screen display object. This field is available when the Display a fixed window screen is checked.
Show Screen Background |  | Check this option if you want to show the screen background. This field is available when the Display a fixed window screen is checked.
Monitored Variable | Data Type | The data type of the monitor variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, and 32-Bit BCD.
 | Monitor Address | Specifies the variable to be monitored. Click [image] to enter an address for this field. Click [image] to select a tag for this field.


10.2.1 Basic Operations

Sub-link Table - Basic Operations

You can display the sub-link table of the specified link by using a sub-link table. With the Sub-link table, the operator can enable or disable a sub-link and show or hide communication error message at runtime.

operation log display demo

The above is an example of the sub-link table. The first row is the title row. It displays the title of each column. The other rows display one sub-link per row. You can create scroll button groups or scroll bars to scroll the contents. A sub-link table can have four columns. The following table describes the content of each column for a sub-link table.

Column | Description
Name | The name of the sub-link.
Node | The node address of the sub-link.
State | The communication state for the selected sub-link. If the state is On, the panel will communicate with the sub-link after running the application. If the state is Off, the panel will not communicate with the sub-link until the communication state is turned On in a sub-link table. Push the button in the cell to enable or disable a sub-link.
Show | If the state is On, the communication error message will be shown when the sub-link encounters communication errors. If the state is OFF, no error message will be shown for any communication errors. Push the button to show or not show the error message

The text color and font of a row are determined by the settings in the General Page.

You can complete all the settings of a sub-link table in the Sub-link Table dialog box. This dialog box contains the following two pages.

■ General
Described in Section 10.2.4.

■ Visibility
Described in Section 4.4.6.


10.2.2 Operation Options

Sub-link Table - Operation Options

The following operation option can be added to a sub-link table . Select and set the option in the Sub-link Table dialog box.

Options | Description
Visibility Control | You can show and hide a sub-link table with a specified bit or the current user level. Select and set this option in the Visibility page.


10.2.3 Settings

Sub-link Table - Settings

You can complete all the settings of a sub-link table in the Sub-link Table dialog box. This dialog box contains the following two pages.

■ General
Described in Section 10.2.4.

■ Visibility
Described in Section 4.4.6.


10.2.4 General Settings

Sub-link Table - General Settings

This section describes how to define the general settings for a sub-link table. The following is an example of the General page of the Sub-link Table dialog box.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located and is unchangeable. The format of the IDs for the sub-link table is SLTnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Grid | Vertical | Select this option if you want the sub-link table to have vertical grids.
 | Horizontal | Select this option if you want the sub-link table to have horizontal grids.
 | Color | Select a color for the grids.
Link |  | Select a link that you want to display its sub-links.
Title | Language | Select a language so you can view and edit the language dependent settings in the Title group for that language. The language dependent properties in the Title group include Font, Name, Node, State and Show.
 | Font | Select a font for the title text.
 | Color | Select a color for the text.
 | BG Color | Select a background color for the title row.
 | Name | Specifies the title for the Name column.
 | Node | Specifies the title for the Node column.
 | State | Specifies the title for the State column.
 | Show | Specifies the title for the Show column.
 | Command Delay | Specifies the title for the Command Delay column of an Ethernet link.
 | Timeout Time | Specifies the title for the Timeout Time column of an Ethernet link.
 | IP Address | Specifies the title for the IP Address column of an Ethernet link.
Text | Language | Select a language so you can view and edit the language dependent settings in the Text group for that language. The language dependent properties in the Text group include Font, ON and OFF.
 | Font | Select a font for the text.
 | Color | Select a color for displaying the predefined text.
 | ON State | Specifies the text for ON State.
 | OFF State | Specifies the text for OFF State.
 | Line Spacing | Specifies the extra space in pixels for two adjacent rows of the sub-link table.
 | Item Spacing | Specifies the extra space for every column of the sub-link table.


10.3 Monitoring Real-time Movement Using Camera View

Monitoring Real-time Movement Using Video View

If the target panel is Windows based device with the HMI Runtime, you can monitor the real-time movement from the connected USB camera by using video view. And the live image can be saved in the JPG or BMP file.

If the target panel is X series HMI unit, it can connect an analog color camera with the signal format of NTSC or PAL. You can do the following with the video input:

1) Show the video view on the screen in near real time. The image resolution is 640H by 480V.

2) Take a picture and save it in a pre-designated storage device with a time stamped filename.

3) Freeze the camera view for some inspection purpose.

4) Save the frozen camera view in a selected storage device with a selected filename.

5) Unfreeze the camera view.

6) Stop the camera input.

7) Load a taken picture and show it on the screen.

8) Record the video view in up to five videos. Each video has a maximal length of 3 minutes. Therefore, the HMI panel can always keep the last 15 minutes of the video view in its NAND Flash.

9) Copy a recorded video to a file. Therefore, you can play the video with your PC.

10) Select a recorded video and play it on the screen.

11) You can pause and resume the video while playing it.

The applications of camera input include:

1) Visual monitoring

2) Camera aided inspection

3) Picture taking for visual records

4) Video recording for critical events

You can complete all the settings of a video view in the Video View dialog box. This dialog box contains the following two pages.

■ General
Described in Section 10.3.2.

■ Visibility
Described in Section 4.4.6.


10.3.1 Settings

Video View - Settings

You can complete all the settings of a video view in the Video View dialog box. This dialog box contains the following two pages.

■ General
Described in Section 10.3.2.

■ Visibility
Described in Section 4.4.6.


10.3.2 General Settings

Video View - General Settings

This section describes how to define the general settings for a video view. The following is an example of the General page of the Video View dialog box.

The target panel is Windows based device with the HMI Runtime. | The target panel is X series HMI unit.
operation display |

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located and is unchangeable. The format of the IDs for the camera view is CVnnnn.
Note | You can type a note for the object.
Shape settings | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Signal Type | Select a signal type of the camera or video.
Camera ID | The camera's identifier. The HMI runtime supports max 4 USB cameras. You can use the general command to take and save the picture of the camera with the predefined camera ID. For details about general command, see Section 3.6.7 Using General Commands.
Display Resolution | The display resolution of the video.
Refresh Rate (Hz) | Specifies a refresh rate from 60Hz, 30Hz, 15Hz, 7.5Hz. The larger the Refresh Rate is, the faster the web camera will be refreshed, but the refresh rate of other objects will be slower.


11.1 Recipes

Recipes

In this chapter we will explain how recipes in the software can be set up, stored and transferred. We also describe how to configure the basic functions and recipe objects (recipe selector and recipe table) used for recipes.

■ Recipe Block
A recipe block is a memory block that stores recipe data as a two dimensional array in the panel. The memory size of each recipe block is the product of the size of a recipe by the number of recipes in word. You can create up to 16 recipe blocks for your application. Each recipe block can contain at most 65535 recipes. Each recipe can have as many as 4096 words of data.

■ Recipe
A recipe is a group of data items. You can use a recipe number or a recipe name to index a recipe in the corresponding recipe block.
The recipe number is a unique number between 0 and the total number of recipes. The current recipe number of the recipe block m is saved in the current recipe number register $RNm (m: The recipe block ID).
The recipe name can be represented by ASCII or Unicode String. To specify ASCII or Unicode String as the recipe name, you need to open the dialog box of a recipe block and set the data type of the related data item into Byte Array (Character String) or Word Array (Double-Byte Character String) in the data item page. For details about recipe data item settings, please see Section 11.5.2.

■ Recipe Data Item
A data item is a word or words of data used to represent an application related data or a machine setup parameter used in process and production control. You can specify the format such as name, data type, size, scaling and range check for each data item in the recipe block dialog box.

The following is a sample of a recipe block with 3 recipes and each recipe has 8 data items.

■ Recipe Data
There are two types of recipe data: CSV Data and PRD Data. These recipes can be transferred directly between the PC and HMI or between the HMI and USB Memory Stick/Micro SD card.

Recipe Data | Description
CSV Data | * Can be created and edited in Microsoft Excel or text editor software (e.g., Notepad)
PRD Data | * Binary Data created in the software * Can be edited in RecipeEditor


11.2 Recipe Data Flow and Memory Allocation

Recipe Data Flow and Memory Allocation

Assume there are two recipe blocks (Recipe Block 0 and Recipe Block 9) in an application.
Recipe Block 0 has 3 recipes and each recipe has 4 data items named A, B, C and D.
Recipe Block 9 has 2 recipes and each recipe has 3 data items named E, F and G.

The following illustration gives an overview of recipe data flow and recipe memory allocation.


11.3 Working with Recipes

Working with Recipes

To work with recipes, you need to do the following:

■ Create and set up a recipe block
To create a recipe block, you may do one of the following:
1) In the Project Manager tool window, right-click the Recipes node ( [image] ) of the concerned panel application and select [ Add Recipe Block... ].
2) In the menu bar, click Panel to bring up the Panel sub-menu. Click Recipe Block in the Panel sub-menu to bring up the Recipe Block pop-up menu. Select [ Add... ] in the pop-up menu.
For details about how to set up a recipe block, please see Section 11.5.

■ Import and export recipe blocks
To export recipe blocks, you may do the followings:
1) In the Project Manager tool window, right-click the Recipes node ( [image] ) of the concerned panel application and select [ Export.... ]
or in the menu bar, click Panel to bring up the Panel sub-menu. Click Recipe Block in the Panel sub-menu to bring up the Recipe Block pop-up menu. Select [ Export... ] in the pop-up menu.

The following is an example of the Export Recipes dialog.

To import recipe blocks, you may do the followings:
1) In the Project Manager tool window, right-click the Recipes node ( [image] ) of the concerned panel application and select [ Import.... ]
or in the menu bar, click Panel to bring up the Panel sub-menu. Click Recipe Block in the Panel sub-menu to bring up the Recipe Block pop-up menu. Select [ Import... ] in the pop-up menu.

2) Click the *.rbf file you want to create new recipe blocks from. To open a recipe file that was saved in a different folder, locate and open the folder first.

3) Click Open.

■ View and edit recipe data on a PC
On a PC, you can use RecipeEditor to view and edit recipe data saved in *.prd file. The following is an example of the RecipeEditor.

■ View and edit recipe data on a HMI
On a HMI, you can use a recipe table to view and edit recipe data. For details about how to create and set up a recipe table for an application, please see Section 11.7.

■ Select a recipe on HMI
On a HMI, you can select a recipe by using recipe selector. For details about how to create and set up a recipe selector for an application, please see Section 11.6.

■ Transfer recipes
Described in Section 11.4.


11.4.1 Between the PC and HMI

Transferring Recipes between the PC and HMI

■ Using Data Transfer Helper (DTH) ( DTH )
You can use DTH to download recipe data in *.prd/*.csv file from a PC to a HMI. With DTH, you can also get recipe data from a HMI and save the data in *.prd/*.csv file on to a PC. The following is an example of the Data Transfer Helper (DTH) used to get or update recipe data.

To run the DTH, choose Start > Programs > “The software” > DTH Data Transfer Helper (DTH).


11.4.2 Between the HMI and USB Memory Stick/Micro SD Card

Transferring Recipes between the HMI and USB Memory Stick/Micro SD Card

■ Using the Function Button ( [image] )
You can use a function button to save recipe data of the specified recipe block as a .txt\.csv\.prd file, or load recipe data of the specified recipe block from a .txt\.csv\.prd file. For details, please see Section 5.4.1 Basic Operations of function buttons.


11.4.3 Between the battery backed memory and flash ROM

Transferring Recipes between the battery backed memory and flash ROM

■ Using Macro Command ( [image] )
You can use RB2ROM to save the data of the specified recipe block to a flash ROM, and use ROM2RB to load recipe data from a flash ROM. For details, please see Section 15.4.11. Recipe Operation of Macro command.
■ Using Function Button ( [image] )
You can use a function button to save recipe data to a flash ROM, and load recipe data from a flash ROM. For details, please see Section 5.4.1 Basic Operations of function buttons.


11.4.4 Between the HMI and PLC/Controller

Transferring Recipes between the HMI and PLC/Controller

■ Using Command Block and Status Words ( [image] )
You can use the command flag setting in Command Block to request the panel to set the current recipe number, read a recipe from a PLC or write a recipe to a PLC. You can also receive current the recipe block ID or current recipe number by checking the related status word and specifying the word variable in Status Words. For details, please see Section 3.6 Command Block and Status Words.

To change the current recipe number, the PLC first sets the Parameter Two Register to the desired recipe block and the Parameter One Register to the desired recipe number, then turns on the Set Current Recipe Number (#2) command flag. Also, $RNm (Current Recipe Number Register, m: Recipe Block ID) of the panel can be changed by the PLC.

To update a recipe in the panel, the PLC first sets the Parameter Two Register to the desired recipe block and the Parameter One Register to the desired recipe number, then turns on the Read Recipe From PLC (#3) command flag. The panel reads data in the Recipe Block to update the specified recipe in the panel.

To receive a recipe, the PLC first sets the Parameter Two Register to the desired recipe block and the Parameter One Register to the desired recipe number, then turns on the Write Recipe To PLC (#4) command flag. The panel sends the specified recipe data to the Recipe Block in the PLC.

Note: You do not need to specify the recipe block if the application has only one recipe block.
Note: To make the above operation work, the specified recipe block must exist, or else the panel ignores the request. The specified recipe number in the Parameter One Register must be between 0 and the maximum recipe number - 1.If the Parameter One Register is greater than or equal to the maximum recipe number, the panel ignores the request.

■ Using the Function Button ( [image] )
You can use a function button to write the current recipe to the controller, or update current the recipe by reading the recipe from the controller. For details, please see Section 5.4.1 Basic Operations of function buttons.


11.5 Setting up Recipe Blocks

Setting up Recipe Blocks

You can set up a recipe block with the Recipe Block dialog box. There are two ways to open the dialog box of a recipe block:
1) In the Project Manager window, right-click the node of the desired Recipe Block and select Properties.
2) In the menu bar, click Panel to bring up the Panel sub-menu. Click Recipes in the Panel sub-menu to bring up the Recipe Block pop-up menu. Select Properties in the pop-up menu to bring up the recipe block list of the current panel application. Select the recipe block in the list.

The Recipe Block dialog box contains the following two pages:

■ General
Described in Section 11.5.1.

■ Data Item
Described in Section 11.5.2.


11.5.1 General Settings

Recipe Block - General Settings

Use the General page to define the general settings for a recipe block. The following is an example of the General page.

The table below describes each property in the General page.

Property |  | Description
Name |  | The recipe block's name. The maximum length of the name is 48 characters.
ID |  | The recipe block's ID number. Select a number between 0 and 15. The number is unique among all recipe blocks of the panel application.
Recipe Size |  | Specifies the data size that each recipe contains. The unit is word. It can be up to 8192 words.
Number of Recipes |  | Specifies the maximum number of recipes that the recipe memory can hold.
Memory Required |  | The size of the recipe memory. The unit is word. The formula to calculate the size is: Memory Required = Recipe Size * Number of Recipes
Storage | Battery Backed RAM | Check this option so the recipe memory will be located in the battery backed RAM. The recipe data will not be lost after power off if the battery backed RAM is used.
 | RAM (volatile) | Check this option so the recipe memory will be located in the ordinary RAM, and the recipe memory will be cleared whenever the target panel is powered on.
 | Need space in flash ROM to save backup | Check this option if you need space in the flash ROM to save backup recipes. You need to specifies the file name to save the backup.
Write Recipe To PLC |  | Check the option if you want to write the recipe to PLC
Write Address |  | Available when Write Recipe To PLC is checked. Specifies the variable that is the starting address of the Recipe Block in your PLC. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The size of the recipes to be written is specified in the Read/Write Size field.
Show Writing Progress |  | Check the option if you want to show the progress when writing the recipe block.
Notification |  | Check this option if you want the recipe to set the bit specified in the Bit Field to On when it finishes writing a recipe to PLC.
Bit |  | Available when the Notification field is checked. Specifies the bit for the operation done notification. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Read Recipe From PLC |  | Check this option if you want to read recipes from PLC.
Read Address Identical To Write Address |  | Specifies that the Read Address is identical to the Write Address. With this item checked, you don’t need to specify the Read Address again. This item is available when the option Read Recipe From PLC is checked.
Read Address |  | Available when Read Recipe From PLC is checked. Specifies the variable representing the starting address of the recipe block on your PLC. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The size of the recipes to be read is specified in the Read/Write Size field.
Show Reading Progress |  | Check the option if you want to show the progress when reading the recipe block.
Notification |  | Check the option if you want the recipe to set the bit specified in the Bit Field to On when it finishes reading a recipe from PLC.
Bit |  | Available when the Notification field is checked. Specifies the bit for the operation done notification. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Read/Write Size |  | The size of the recipe for reading and writing.
Reverse the order of the high word and low word of 32-bit data |  | Check this option if the Write Address or the Read Address belongs to a controller that stores data in big-endian byte order and if there are 32-bit data items, such as 32-bit signed integers and 32-bit floating point numbers, defined in the recipe block.
Recipe Memory |  | Set the overall recipe block’s address range in the internal memory of the panel.
 |  | Range Type | Address Format | Description
 |  | Bit Address Range | $Rm:n.b b: 0-f | Each bit address in the range refers to a bit of a recipe word in the specified recipe block.
 |  | Word Address Range | $Rm:n | Each word address in the range refers to a recipe word
 |  | Legend: m = Recipe Block ID, n = The Number of Recipe Word, b = Bit Number
Current Recipe |  | Set the current recipe’s address range in the internal memory of the panel.
 |  | Range Type | Address Format | Description
 |  | Bit Address Range | $CRm:n.b b: 0-f | Each bit address in the range refers to a bit of a recipe word in the current recipe of the specified recipe block.
 |  | Word Address Range | $CRm:n | Each word address in the range refers to a recipe word in the current recipe of the specified recipe block.
 |  | Current Recipe Number Register | $RNm | An internal register of the panel that specifies the current recipe number of the specified recipe block.
 |  | Legend: m = Recipe Block ID, n = The Number of Recipe Word, b = Bit Number.


11.5.2 Data Item Settings

Recipe Block - Data Item Settings

Use the Data Item page to define the data items of the data for a recipe block. The following is an example of the Data Item page.

The Data Item page contains two parts. The left side of the data item list shows the address and name of each data item . The right side shows the properties of the selected data item. You need to make a selection before editing the data item. To select a data item, click the row of the data item in the data item list. To select multiple rows for moving up or down, click the row on its header column and use Ctrl + Click to add a row to the selection. The following table describes each property of the data item.

Property

 Description
Address | The address of the latest value of the data item.
Name | Click the cell to specify the name of the data item for the language specified in the Language field.
Move Up | Click the button to move the selected data item(s) before the previous data item. The Move Up button will help you to reorder the display sequence of the data items. It will not be available when the first row is selected.
Move Down | Click the button to move the selected data item(s) after the next data item. The Move Down button will help you to reorder the display sequence of the data items. It will not be available when the last row is selected.
Language of Data Item Name | Select a language so you can view and edit the name of the data item for that language.
Data Item | Data Type | The data type of the data item. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, Byte Array (Character String), and Word Array (Double- Byte Character String).
Display Type The display type for the value of the data item. The following table shows the available display types for each data type.
Data Type | Available Display Types
16-Bit Unsigned Integer | 16-Bit Unsigned Decimal, 16-Bit Hexadecimal, 16-Bit Octal
32-Bit Unsigned Integer | 32-Bit Unsigned Decimal, 32-Bit Hexadecimal, 32-Bit Octal
16-Bit Signed Integer | 16-Bit Signed Decimal
32-Bit Signed Integer | 32-Bit Signed Decimal
16-Bit BCD | 16-Bit Unsigned Decimal
32-Bit BCD | 32-Bit Unsigned Decimal
32-Bit Floating Point | 32-Bit Floating Point, Exponential Format
Byte Array (Character String) | ASCII String, Western European String, Cyrillic String
Word Array (Double- Byte Character String). | Chinese (PRC) String, Chinese (Taiwan) String, Unicode String
Total Digits | Specifies the number of digits to be displayed for the value of the data item.
Fractional Digits Specifies how to display the fractional part for the value of the data item. When the Display Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed. When the Display Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown as a fixed point number.
Example:
Display Type | Total Digits | Fractional Digits | Sampled Value | Displayed Value
32-bit Floating Point | 4 | 2 | 12.34 | 12.34
32-bit Floating Point | 4 | 2 | 123.4 | 23.40
16-bit Signed Decimal | 5 | 2 | 12345 | 123.45
16-bit Signed Decimal | 5 | 2 | -5 | -0.05
Note: This property applies to the display of the initial value, the allowable minimum, and the allowable maximum on the numeric keypad.
Scaling Check this option if you want the value of the data item to be displayed in a scaled manner. The following is the scaling formula:
DisplayedValue = SampledValue * Gain + Offset
Note: The Gain and Offset are 32-bit floating point numbers. They have, at most, 6 significant digits. Rounding and truncation errors may happen.
Gain | Available when the Scaling option is checked. Specifies the Gain used in the scaling formula.
Offset | Available when the Scaling option is checked. Specifies the Offset used in the scaling formula.
Range Check | Check this option if you want the data item to verify the entered value according to the specified minimum and maximum. If the entered value is not within the allowable range, the entered value will not be output.
Min | Specifies the minimum value.
Max Specifies the maximum value.


11.6.1 Basic Operations

Recipe Selector - Basic Operations

A recipe selector can be configured to perform as one of the following types of controls:

Type | Description
List | The recipe selector is a list box. It displays a list of index strings of the recipes in the specified recipe block. The index string’s format is recipe name (recipe number). One recipe index string is displayed per line. The index string of the current recipe is highlighted. If the desired recipe is not in view, you can scroll the list with the scroll bar attached to the right side of the list box. When you select a desired recipe by touching its index string, the recipe selector writes the recipe number of the selected recipe to the current recipe number register.
Drop-down List | The recipe selector is a drop-down list. It displays the index string of the current recipe and a button with the down arrow symbol as shown. When the button with down arrow symbol is pressed, the recipe selector displays a list box beneath itself as shown. touched The list box lists the index strings of all the recipes of the recipe block, one index string per line. The index string of the current recipe is highlighted. If the desired recipe is not in view, you can use the scroll bar attached to the right side of the list to scroll the index string. When you select a desired recipe by touching its index string, the recipe selector writes the recipe number of the selected recipe to the current recipe number register and closes the list box. If you want to cancel the operation when the list box is showing, touch anywhere other than an index string in the list box.
Character Entry | The recipe selector is a character entry. It displays the index string of the current recipe. When the text field is clicked, the PinYin [for Chinese (PRC) String] or ASCII character keypad [for Byte Array (Character String)] will be shown. The following is an example of ASCII Character Keypad. Click the "Ent" button to select a recipe with the name starting from M. If the recipe doesn’t exist, the keypad will show a “?” after the input characters and keep open for the right input. If the recipe exists, the keypad will be closed and the index string of the selected recipe will be displayed in the text field. If you want to cancel the operation when the keypad is showing, click "Esc" button.
Drop-down List with Character Entry | The recipe selector is a combination of character entry and drop-down list. If the text field is click, it performs like the Character Entry. If a button with the down arrow symbol is pressed, it performs like a drop-down list.


11.6.2 Operation Options

Recipe Selector - Operation Options

The following operation options can be added to a recipe selector. Select and set up the options in the recipe selector property sheet.

Options | Description
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Operation Logging | Each change to the specified variable can be recorded in the operation log. Select and set this option in the Advanced page.
Visibility Control | You can show or hide a recipe selector by a specified bit or the current user level. Select and set up this option in the Visibility page.


11.6.3 Settings

Recipe Selector - Settings

You can complete all the settings of a recipe selector in the Recipe Selector property sheet. This sheet contains the following three pages.

■ General
Described in Section 11.6.4.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.


11.6.4 General Settings

Recipe Selector - General Settings

This section describes how to define the general settings of a recipe selector. The following is an example of the General page.

The following table describes each property in the General page.

Property | Description
ID | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the recipe selectors is RSnnnn.
Note | You can type a note for the object.
Shape settings | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Type | Select one of the following types for the recipe selector:
 | Type | Description
 | List | The list box is displayed at all times. You can select a recipe from all the listed recipes in the list box.
 | Drop-down List | The list box is not displayed unless the user clicks the down arrow icon next to the static-text control. You can select a recipe from the drop-down list and the name of the selected recipe will be shown in the static-text control.
 | Character Entry | Allows the operator to enter the full name or partial name of the recipe to be selected. The selectors will try to find the recipe whose name completely matches with the input string first. If such recipe does not exist, the selectors will try to find the first recipe that the preceding part of its name matches exactly with the input string.
 | Drop-down List with Character Entry | You can click the character entry control on the left to select a recipe by entering the full name or partial name of the recipe in the popup keypad. Or you can click the down arrow icon to select a recipe from the drop-down list.
Recipe Block | Select the recipe block whose recipe is to be selected by the Recipe Selector object.
Recipe Name | Select a data item from the list as the recipe name. You can select any data items with Byte Array (Character String) or Word Array (Double-Byte Character String) data type as the name of the recipe from the drop down list.
Sort by Recipe Name | Check this option to automatically sort all recipe names added to the list box.
Accept Bar Code Input | Check this option if you want to select a recipe by the bar code input from a USB bar code reader. This item is available only when the type is Character Entry or Drop-down List with Character Entry. The bar code can be accepted in the popup keypad.
Font | The font of the displayed string.
Text Color | The color of the displayed string.
Scroll Bar Width | Specify the width of the vertical scroll bar.


11.7.1 Basic Operations

Recipe Table - Basic Operations

There are three types of recipe tables.

Type | Description
Horizontal View | Displays the recipes in rows and recipe data items in columns. The above is an example of the recipe table with horizontal view. The first row displays the data item name of each column. The other rows display one recipe per row. The first column displays the recipe number. You can create scroll button groups or scroll bars to scroll the contents.
Vertical View | Displays the recipes in columns and recipe data items in rows. The above is an example of the recipe table with vertical view. The first column displays the data item name of each row. The other columns display one recipe per column. The first row displays the recipe number. You can create scroll button groups or scroll bars to scroll the contents.
Current Recipe | Displays the recipe data items of the current recipe in rows. The above is an example of the current recipe. The first column displays the data item name of each row. The other column displays the current recipe. You can create scroll button groups or scroll bars to scroll the contents.


11.7.2 Operation Options

Recipe Table - Operation Options

The following operation option can be added to a recipe table. Select and set up the option in the recipe table property sheet.

Options | Description
Visibility Control | You can show or hide a recipe table by a specified bit or the current user level. Select and set up this option in the Visibility page.


11.7.3 Settings

Recipe Table - Settings

You can complete all the settings of a recipe table in the Recipe Table property sheet. This sheet contains the following three pages.

■ General
Described in Section 11.7.4.

■ Data Item
Described in Section 11.7.5.

■ Visibility
Described in Section 4.4.6.


11.7.4 General Settings

Recipe Table - General Settings

This section describes how to define the general settings for a recipe table. The following is an example of the General page.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the recipe tables is RTnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color.
Type |  | Select one of the following types for the recipe table:
 |  | Type | Description
 |  | Horizontal View | Displays the recipes in rows and recipe data items in columns.
 |  | Vertical View | Displays the recipes in columns and recipe data items in rows.
 |  | Current Recipe | Displays the recipe data items of the current recipe in rows.
Allows operator input |  | Check this option if you allow the operator to update the value of the recipe data item.
Recipe Block |  | Select the recipe whose collected data is to be displayed by the object.
Title | Language | Select a language so you can view and edit the settings of the title row for that language.
 | Font | Select a font for the title text.
 | Color | Select a color for the title text.
 | Background Color | Select a color for the background of the title row.
 | Recipe Number | Specifies the title for the recipe number column.
Grid | Horizontal | Check this option if you want the object to have horizontal grids.
 | Vertical | Check this option if you want the object to have vertical grids.
 | Color | Select a color for the grids.
Data | Font | Select a font for displaying data.
 | Default Color | Select a color as the default color for displaying data.
 | Set Default Color to All Data Items | Click this button to set the colors of all the data items to the Default Color.
Recipe Number | Color | Select a color for the recipe number.
Line Spacing |  | Specifies the extra space in pixels for two adjacent rows in the table.
Item Spacing |  | Specifies the extra space for every column in the table.


11.7.5 Data Item Settings

Recipe Table - Data Item Settings

This section describes how to define the display format for the values of each data item. The following is an example of the Data Item page.

The following table describes each property in the Data Item page.

Property |  | Description
Language |  | Select a language so you can view and edit the settings for that language.
Row #n of the property table | Name | The name of data item #n. The data item names are defined in the Data Item page of the Data Logger dialog box.
 | Display | Check this option if you want the object to display data item #n.
 | Color | Select a color for displaying data item #n.
 | Width | The max width for displaying data item #n. There are five types of width: Normal, Narrow, Extra Narrow, Wide and Extra Wide.
 | Justification | The justification for displaying data item #n. There are three types of justifications:
 |  | Option | Description
 |  | Zero Suppress | The leading digits will not display when they are 0.
 |  | Leading Zeros | All digits will display.
 |  | Leading Spaces | The leading digits will display as blank characters when they are 0.
Move Up |  | Click the button to move the selected data item before the previous data item. The Move Up button will help you to reorder the display sequence of the data items It will not be available when multiple rows are selected or no row is selected.
Move Down |  | Click the button to move the selected data item after the next data item. The Move Down button will help you to reorder the display sequence of the data items. It will not be available when multiple rows are selected or no row is selected.


12.1 Using Alarms

Using Alarms

In order to use alarm display for your application, you need to set up alarm processing first, and then define an alarm block. This chapter describes how to set up alarm processing and the alarm block. It also describes how to configure the alarm display to show alarm history, alarm count, active alarm and alarm marquee.

To use an alarm in your application, please follow the procedure as below:

  1. Setting up alarm processing
    Described in Section 12.2.

  2. Creating and configuring discrete alarm blocks or analog alarm blocks
    Described in Section 12.4 and Section 12.5.

  3. Creating and configuring alarm displays
    Described in Section 12.6.

You can use the command flag setting in the command block or function button to request the panel to clear the alarm history or clear the alarm count.

To know how to set up the command flag in the command block, please see Section 3.6 Command Block and Status Words. To know how to define a function button, please see Section 5.4.1 Basic Operations on function buttons.


12.2 Setting Up Alarm Processing

Setting Up Alarm Processing

You can set up the alarm processing with the Alarm Properties dialog box. In this dialog, you can determine the required memory for the alarm logging buffer, choose the default color and font for the alarm message, specify how to save the alarm history records to a text file and configure the global alarm marquee if you want to display it on the screen. To open the dialog box for alarm processing, please double click the node named Alarms in the Project Manager tool window. The following is an example of the Alarm Properties dialog box.

The table below describes each property in the Alarm Properties dialog.

Property |  | Description
Alarm Logging Buffer | Size | The maximum number of records that the alarm logging buffer can hold. For example: 100 means that when the 101st alarm occurs, the 1st record will be overwritten.
 | Maximal number of data values to be recorded for alarm messages | Displays the maximal number of data values to be recorded. It can be set in the properties dialog box of discrete alarm block and analog alarm block.
 | Required non-volatile memory | The size of the alarm logging buffer. The unit is byte. The formula to calculate the size is: Alarm Logging Buffer Size = Number of Records * (20 + Maximal Number of Data Values to be recorded * 4) + 28.
Save Alarm History To File | Save Alarm History to file | Check this option so the most current alarm history record will be written to a specified file periodically. Each time the operation is performed, the panel writes only the record that has not already been saved to the file.
 | File Type | The type of file to save the alarm history.
 |  | File Type | Description
 |  | .CSV | The alarm history is saved in CSV format. You can use any text editor or Microsoft Excel to view the file.
 |  | .XLS | The alarm history is saved in XLS format. You can use Microsoft Excel to view the file. This type is available only when the target panel is the HMI Runtime.
 | Operation Type | Specifies how to open a file to save the logged data.
 |  | Operation Type | Description
 |  | Create | Creates a new file with the specified filename to save the alarm history.
 |  | Append or Create | If the specified file exists, appends the alarm history to that file; otherwise creates a new file with the specified filename to save the alarm history.
 | Time to Save | Specifies the period to save the alarm history records. This item is available when the option Save alarm history to file is checked. There are nine periods available: Every hour on the hour ; Every 8 hours (00:00, 08:00, 16:00) ; Every 12 hours (00:00, 12:00) Every day at 00:00; Every day at 08:00; Every day at 12:00; Every Sunday at 00:00; Every Monday at 00:00; Every month's first day at 00:00, Every minute (For test only), Every 5 minutes, Every 10 minutes, Every 15 minutes, Every 30 minutes.
 | Save to the default folder | Check the option to save the file in the default folder. Please see Section 3.1.4 for details about specifying default folder.
 | Variable filename | Check the option to specify the variable representing the filename to save the alarm records at runtime.
 | File Name | The filename or the prefix of the filename of the file to save the alarm record as. The filename must be a null terminated ASCII character string and follows the rule of Windows filenames. The alarm records are saved in text format and the file extension name must be same as the file type. You can use any text editor or Microsoft Excel to view the alarm records directly. This item is available when the option Save alarm history to file is checked.
 | File name Suffix | Available when the Operation Type is Create. This property guarantees that the created file has a unique name and no existing file will be overwritten. There are four kinds of filename suffixes available as shown in the following table.
 |  | Filename Suffix | Description | Example
 |  | _YYMMDD_hhmmss | YY: year (00-99) MM: month (01-12) DD: day (01-31) hh: hour (00-23) mm: minute (00-59) ss: second (00-59) | Log_090423_102358 (Assume that the specified Filename is "Log", the current date is April 23, 2009, and the current time is 10:23:58.)
 |  | _YYMMDD_hhmm |  | Log_090423_1023
 |  | _YYMMDD_hh |  | Log_090423_10
 |  | _YYMMDD |  | Log_090423
 | Include auxiliary data so the HMI can read back the files | Check this option to include auxiliary data when saving the file. And the saved file can be read by HMI. Without the auxiliary data, the saved file is not readable by HMI.
 | Do not show file saving message | Check this option to hide the file saving message at runtime.
Save Alarm History to Database | Save Alarm History to Database | Check this option so the most current alarm history record will be written to a specified database periodically. Each time the operation is performed, the panel writes only the record that has not already been saved to the database. This item is available only when the target panel is the HMI Runtime..
 | Table Name | Specifies a name as the table name in the database.
 | Column Names | Click the edit button to bring up the following dialog box to specify the column names. Note that the name must comply with the rules for database identifiers
 | Time to Save | Specifies the period to save the alarm history records. This item is available when the option Save alarm history to database is checked. There are nine periods available: Every hour on the hour ; Every 8 hours (00:00, 08:00, 16:00) ; Every 12 hours (00:00, 12:00) Every day at 00:00; Every day at 08:00; Every day at 12:00; Every Sunday at 00:00; Every Monday at 00:00; Every month's first day at 00:00, Every minute (For test only), Every 5 minutes, Every 10 minutes, Every 15 minutes, Every 30 minutes.
Global Alarm Marquee | Show when there is any alarm | Check this option if you want to show the global alarm marquee on the current screen when there is any alarm.
 | Position | Select one of the following 3 positions for the global alarm marquee to be displayed.
 |  | Position | Description
 |  | Top | The global alarm marquee shows up at the top of the screen.
 |  | Center | The global alarm marquee shows up at the center of the screen.
 |  | Bottom | The global alarm marquee shows up at the bottom of the screen.
 | Properties | Click the button to bring up the Alarm Display dialog box to set up the properties of the global alarm marquee. Please see Section 12.6.4 for details.
Default Alarm Message Color | Level 1, Level 2… Level 8 | Select a default color for alarm levels 1, 2…8. The alarm display for each alarm level will show an alarm message with the selected color.
Default Alarm Message Font | Language | Select a default language so you can view and edit the language dependent settings in the Text group for that language. The language dependent properties in the Text group include Font and Alarm Status Abbreviation.
 | Font | Select a default font for the text of the alarm message.
Use the bit $S555.0 to indicate there is an active alarm |  | The system bit $S555.0 can be used to indicate there is an active alarm. When the bit is On, it indicates there is at least one active alarm. When the bit is Off, it indicates there is no active alarm.
Add a sequence number to each alarm record (Ineffective for appending operations) |  | Check this option to add a sequence number to each alarm record.
The color of the alarm message box's caption area is selected from Default Alarm Message Colors according to the level of the current alarm |  | Check this option to make the color of the caption area of the alarm message box associated with the level of the alarm that it displays.


12.3.1 Creating an Alarm Block

Creating an Alarm Block

To create a discrete alarm block, you may do one of the following:

  1. In the Project Manager tool window, right-click the Alarms node ( [image] ) of the concerned panel application and select Add Discrete Alarm Block.
  2. In the menu bar, click Panel to bring up the Panel sub-menu. Click Discrete Alarm Block in the Panel sub-menu to bring up the pop-up menu. Select Add in the pop-up menu.

To create an analog alarm block, you may do one of the following:

  1. In the Project Manager tool window, right-click the Alarms node ( [image] ) of the concerned panel application and select Add Analog Alarm Block.
  2. In the menu bar, click Panel to bring up the Panel sub-menu. Click Analog Alarm Block in the Panel sub-menu to bring up the pop-up menu. Select Add in the pop-up menu.


12.3.2 Importing and Exporting Alarm Blocks

Importing and Exporting Alarm Blocks

■ Import Alarm blocks

To import alarm blocks, you may do the followings:
1) In the Project Manager tool window, right-click the Alarms node ( [image] ) of the concerned panel application and select [ Import Alarm Blocks.... ]
or in the menu bar, click Panel to bring up the Panel sub-menu. Click [ Import Alarm Blocks.... ] in the Panel sub-menu.

2) Click the *.csv or *.xml or *.alm file you want to create new alarm blocks from. To open an alarm file that was saved in a different folder, locate and open the folder first.

3) Click Open.

■ Export Alarm blocks
You can export the definition of an alarm block or multiple alarm blocks in CSV format or XML format. If CSV format is selected, you are allowed to customize the export items. Exporting multiple alarm blocks to one file is supported too.

To export the alarm blocks of a panel application, you may do the followings:
1) In the Project Manager tool window, right-click the Alarms node ( [image] ) of the concerned panel application and select [ Export Alarm Blocks… ].
or in the menu bar, click Panel to bring up the Panel sub-menu. Click [ Export Alarm Blocks… ] in the Panel sub-menu.

The following is an example of the Export Alarm Blocks dialog.

The following table describes each property in the Export Alarm Blocks dialog.

Property |  | Description
Panel Application |  | Specifies the current panel application where the alarm blocks locate.
Select All |  | Check the box to select all the listed alarm blocks. Or uncheck the box to deselect all.
No. |  | Check the button to select the related alarm block.
Save to File | Format | The file format to save the alarm blocks. If CSV format is selected, you are allowed to customize the export items.
 |  | Click the button if you want to save alarm blocks in a different folder. In the Save As dialog box, locate and open the folder first, then click Save.
Export Options | All/Customized | Select "All" option to export all properties of the selected alarm blocks. Select "Customized" option to export selected properties of the selected alarm blocks. The Customized option is available only when the file format is CSV.
 | Block | Select the properties of the alarm blocks you want to export.
 | Record specified data items
 | Common
 | Analog Alarm Specific
OK |  | Click the button to export all the selected alarm blocks.


12.3.3 Deleting an Alarm Block

Deleting an Alarm Block

To delete a discrete alarm block, you may do one of the following:

  1. In the Project Manager window, right-click the node of the desired discrete alarm block ( [image] ) and then select Delete.
  2. In the menu bar, click Panel to bring up the Panel sub-menu. Click Discrete Alarm Block in the Panel sub-menu to bring up the Discrete Alarm Block pop-up menu. Select Delete in the pop-up menu to bring up the discrete alarm block list of the current panel application. Select the desired discrete alarm block in the list.

To delete an analog alarm block, you may do one of the following:

  1. In the Project Manager window, right-click the node of the desired analog alarm block ( [image] ) and then select Delete.
  2. In the menu bar, click Panel to bring up the Panel sub-menu. Click Analog Alarm Block in the Panel sub-menu to bring up the Analog Alarm Block pop-up menu. Select Delete in the pop-up menu to bring up the analog alarm block list of the current panel application. Select the desired analog alarm block in the list.


12.3.4 Specifying To-be-recorded Data

Specifying To-be-recorded Data

You can record maximum 8 data items and display them in the alarm message. The data item will be appended to the alarm message with the following format:
    (Name: Value of the address with the specified format)
For example, the recorded item #2 will display the 32-bit floating point number stored in W10 with the format of 4 total digits and 1 fractional digit.
If the value of W10 is 123.456 when the alarm occurs, the following text will be appended to its alarm message:
(Temperature: 123.4)

To specify items, use the Specify To-be-recorded Data Items dialog. The following is an example of the dialog:

specify to-be-recorded data

The Specify To-be-recorded Data dialog contains two parts. The left side lists the address and name of each data item. The right side shows the properties of the selected item. To select an item, click the row of the item in the list. The following table describes each property of the item.

Property

 Description
Name | Specifies the name of the data item for the language specified in the Language field.
Language | Select a language so you can view and edit the name of the item for that language.
Address | The read address of the item. The address can be any valid word address.
Data Type | The data type of the item. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point.
Display Type The display type for the value of the data item. The following table shows the available display types for each data type.
Data Type | Available Display Types
16-Bit Unsigned Integer | 16-Bit Unsigned Decimal, 16-Bit Hexadecimal, 16-Bit Octal
32-Bit Unsigned Integer | 32-Bit Unsigned Decimal, 32-Bit Hexadecimal, 32-Bit Octal
16-Bit Signed Integer | 16-Bit Signed Decimal
32-Bit Signed Integer | 32-Bit Signed Decimal
16-Bit BCD | 16-Bit Unsigned Decimal
32-Bit BCD | 32-Bit Unsigned Decimal
32-Bit Floating Point | 32-Bit Floating Point
Total Digits | Specifies the number of digits to be displayed for the value of the item.
Fractional Digits
Specifies how to display the fractional part for the value of the item. When the Display Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed. When the Display Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown as a fixed point number.
Example:
Display Type | Total Digits | Fractional Digits | Sampled Value | Displayed Value
32-bit Floating Point | 4 | 2 | 12.34 | 12.34
32-bit Floating Point | 4 | 2 | 123.4 | 23.40
16-bit Signed Decimal | 5 | 2 | 12345 | 123.45
16-bit Signed Decimal | 5 | 2 | -5 | -0.05
Scaling Check this option if you want the value of the data item to be displayed in a scaled manner. The following is the scaling formula:
DisplayedValue = SampledValue * Gain + Offset
Note: The Gain and Offset are 32-bit floating point numbers. They have, at most, 6 significant digits. Rounding and truncation errors may happen.
Gain | Available when the Scaling option is checked. Specifies the Gain used in the scaling formula.
Offset Available when the Scaling option is checked. Specifies the Offset used in the scaling formula.


12.4 Discrete Alarm Blocks

Discrete Alarm Blocks

You can set up a discrete alarm block with the Discrete Alarm Block dialog box. There are two ways to open the dialog box:

  1. In the Project Manager window, move the mouse to the node of the desired discrete alarm block ( [image] ) and double click the node or right-click the node and then select Properties.
  2. In the menu bar, click Panel to bring up the Panel sub-menu. Click Discrete Alarm Block in the Panel sub-menu to bring up the Discrete Alarm Block pop-up menu. Select Properties in the pop-up menu to bring up the discrete alarm block list of the current panel application. Select the desired discrete alarm block in the list.


12.4.1 Settings

Discrete Alarm Block - Settings

Use the dialog box to define all the settings for a discrete alarm block. The following is an example of the discrete alarm block dialog.

discrete alarm block

The table below describes some properties in the Discrete Alarm Block dialog.

Property |  | Description
Block Name |  | The discrete alarm block's name. The maximum length of the name is 20 characters.
Block ID |  | The discrete alarm block’s ID number. Select a number between 0 and 63. The number is unique among all discrete alarm blocks of the panel application.
Type |  | Specifies the memory type used to allocate the discrete alarm block. There are four types:
 |  | Type | Description
 |  | Bits | Select Bits to create a discrete alarm block starting from the bit device M with N continuous bits
 |  | Bits of Word Device | Select Bits of Word Device to create a discrete alarm block starting from the bit 0 of the word device M with N continuous bits of the word device.
 |  | Word Value | Select Word Value to create a discrete alarm block at word device M. An alarm will occur if the value of M is between 0 and N.
 |  | Random Bits | Select Random Bits to create a discrete alarm block with N specified random bits.
 |  | Legend: M: An address specified in Read Address field. N: A size specified in Block Size/Maximum field.
Read Address |  | Specifies the starting address of an alarm block to monitor the status of alarms. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Block Size / Maximum |  | Specifies the block size of an alarm block. The unit is bit. The maximum block size or maximum value you can specify depends on the type selected. The following table lists the limitation of each type:
 |  | Type | Maximum block size/value
 |  | Bits | 256
 |  | Bits of Word Device | 256
 |  | Word Value | 0-511
 |  | Random Bits | 64
Read Interval |  | Specifies a period between 0.1 to 60 seconds that the panel reads the Alarm Block and checks the state of every bit in the block. The shorter the Read Interval is, the faster the alarm display object will be refreshed, but the refresh rate of other objects will be slower.
Record specified data items | <Check Box> | Check this option if you want to record the specified data values and display them in the alarm message.
 | Number of data items | The number of data values you want to record. The maximum is 8.
 | Specify… | Click the button to specify the recorded data values. For details, please see Section 12.3.4 Specifying To-be-recorded Data.
Force Backlight On |  | Check this option so you can choose not to turn on the backlight automatically for the alarms of an alarm block.

To specify all discrete alarms, you need to set the discrete alarm list and the discrete alarm properties field. The discrete alarm list is located at the bottom-left of the dialog, and shows all the discrete alarms in the alarm block. The discrete alarm properties field is located at the right of the alarm list, and shows all the properties of the selected discrete alarm.

The following table describes each column in the discrete alarm list.

Column | Description
No. | The number of the discrete alarm in the alarm block.
Address/Bit No./Value | If the type is Bits or Random Bits, the column shows the address of the discrete alarm. If the type is Bits of Word Device, the column shows the bit no of the discrete alarm. If the type is Word Value, the column shows the value of the discrete alarm.
Use | Check this option if you want to use discrete alarm #n.
Message | Displays a specified alarm message in the selected language. To embed variable in the text of alarm message, please see 12.3.4. Specifying To-be-recorded Data.htm for details.

You need to make a selection before editing the discrete alarm. To select a discrete alarm, click the row of that alarm in the list. To select multiple rows, click the row on its header column and use Ctrl + Click to add a row to the selection.
If multiple rows are selected, any modification on the common properties such as Level, Record alarm, Sound Buzzer, Display message, Display screen, Required Acknowledgement, Record ACK, Notification, Tip Screen…will apply to all selected discrete alarms

The following table describes each property of the selected discrete alarm.

Property |  | Description
Address/Bit No./Value |  | Indicates the status of its corresponding alarm. The meaning of the field depends on the selected type.
 |  | Field Name | Type | Description
 |  | Address | Bits | Shows the address of the selected discrete alarm
 |  | Bit No. | Bits of Word Device | Shows the bit no. of the selected discrete alarm
 |  | Value | Word Value | Shows the value of the selected discrete alarm
 |  | Address | Random Bits | Specifies the bit variable of the selected discrete alarm. Click [image] to enter an address. Click [image] to select a tag.
Alarm State |  | Specify the alarm state to indicate the corresponding alarm is active. If 1(On) is selected, a bit with high (on) state indicates that the corresponding alarm is active. And a bit with low (off) state indicates that the corresponding alarm is clear.
Level |  | Select a level for the alarm between 1 and 8.
ID |  | Specifies the alarm ID. The maximum length of the ID is 6 characters.
Message | Language | Select an existing language that you are setting the message to.
 | Import All… | Click the button to import the texts of *.csv files, and save the texts as the alarm messages for the current language.
 | Export All… | Click the button to export all the messages for the selected language to a *.csv file.
 | Text | Specifies the text for the current language. The text will be shown when the alarm is active.
 | Show Recorded Data Item | Check the specified value you want to record and display in the alarm message. Note that only the selected value will be recorded.
Record alarm |  | Check this option if you want to record the alarm to the alarm display object.
Sound Buzzer |  | Check this option if you want the panel to play the sound buzzer when the alarm is activated or cleared.
Display message |  | Check this option if you want the panel to automatically display a message when the alarm is activated or cleared. This field can be checked only when Display screen is unchecked.
Display screen | <Check Box> | Check this option if you want the panel to automatically display a window screen when the alarm is activated or cleared. This field can be checked only when Display message is unchecked.
 |  | Select a window screen to display when the alarm is activated or cleared. The field is available when Display Screen is selected. Note that only Window Screens will be available to choose from.
Required Acknowledgement | <Check Box> | Check this option if you want the operator to acknowledge an alarm. When an alarm becomes active, the panel displays an alarm message or a screen with ACK button when the Required Acknowledgement option is selected. The operator should press the ACK button to acknowledge the alarm, and have the panel refresh the current screen. This field is available when either Display message or Display screen is selected.
 | Record ACK | Check this option if you want to record ACK to the alarm display object
 | Notification | Check this option if you want to notify the specified bit when the ACK button is clicked. Click [image] to enter an address. Click [image] to select a tag.
 | Bit | Specifies the bit that receives the notification.
Tip Screen | <Check Box> | Check this option if you want to display a screen when you select the corresponding alarm on the alarm display object.
 |  | Select a window screen as the tip screen.
Play Sound | <Check Box> | Check this option if you want the panel to play sound when the alarm is activated or cleared.
 | Sound | Select a sound from sound table of the current panel application.
 | Number of Plays | Specifies how many times you want to play the sound.
 | Break Between Plays | Specifies an interval between two plays. You can select 0s, 0.2s, 0.4s, 0.6s, 0.8s, 1s, 2s, 3s, 4s, 5s.


12.5 Analog Alarm Blocks

Analog Alarm Blocks

You can set up an analog alarm block with the Analog Alarm Block dialog box. There are two ways to open the dialog box:
1) In the Project Manager window, move the mouse to the node of the desired analog alarm block ( [image] ) and double click the node or right-click the node and then select Properties.
2) In the menu bar, click Panel to bring up the Panel sub-menu. Click Analog Alarm Block in the Panel sub-menu to bring up the Analog Alarm Block pop-up menu. Select Properties in the pop-up menu to bring up the analog alarm block list of the current panel application. Select the desired analog alarm block from the list.


12.5.1 Settings

Analog Alarm Block - Settings

Use the dialog box to define all the settings for an analog alarm block. The following is an example of the analog alarm block dialog box.

analog alarm block

The table below describes each property in the Analog Alarm Block dialog box.

Property |  | Description
Block Name |  | The analog alarm block's name. The maximum length of the name is 20 characters.
Block ID |  | The analog alarm block’s ID number. Select a number between 64 and 127. The number is unique among all analog alarm blocks of the panel application.
Type |  | Specifies the type of the analog alarm block. There are two types:
 |  | Type | Description
 |  | Continuous Words | Select Continuous Words to create an analog alarm block starting from the word device M with N continuous words
 |  | Random Words | Select Random Words to create an analog alarm block with N specified random words.
 |  | Legend: M: An address specified in Read Address field. N: A size specified in Block Size.
Read Address |  | Specifies the starting address of an alarm block to monitor the status of alarms. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Block Size |  | Specifies the block size of an alarm block. The unit is word. The maximum block size you can specify depends on the type you select.
 |  | Type | Maximum block size
 |  | Continuous Words | 16
 |  | Random Words | 64
Read Interval |  | Specifies a period between 1 to 3600 seconds that the panel reads the Alarm Block and checks the state of every bit in the block. The shorter the Read Interval is, the faster the alarm display object will be refreshed, but the refresh rate of other objects will be slower.
Record specified data items | <Check Box> | Check this option if you want to record the specified data values and display them in the alarm message.
 | Number of data items | The number of data values you want to record. The maximum is 8.
 | Specify… | Click the button to specify the recorded data values. For details, please see Section 12.3.4 Specifying To-be-recorded Data.
Force Backlight On |  | Check this option so you can choose not to turn on the backlight automatically for the alarms of an alarm block.

To specify all analog alarms, you need to set the analog alarm list and the analog alarm properties field. The analog alarm list is located at the bottom-left of the dialog, and shows all the analog alarms in the alarm block. The analog alarm properties field is located to the right of the list, and shows all the properties of the selected analog alarm.

The following table describes each column of the analog alarm list.

Column | Description
No. | The number of the analog alarm in the alarm block.
Address | Shows the address of the analog alarm.
Use | Check this option if you want to use analog alarm #n.
Message | Displays a specified alarm message in the selected language. To embed variable in the text of alarm message, please see 12.3.4. Specifying To-be-recorded Data.htm for details.

You need to make a selection before editing the analog alarm. To select an analog alarm, click the row of that alarm in the list. To select multiple rows, click the row on its header column and use Ctrl + Click to add a row to the selection.
If multiple rows are selected, any modification to the common properties such as Level, Record alarm, Sound Buzzer, Display message, Display screen, Required Acknowledgement, Record ACK, Notification, Tip Screen…will apply to all selected analog alarms

The following table describes each column in the analog alarm list.

Property |  | Description
Alarm Type |  | There are four types of analog alarms:
 |  | Type | Description
 |  | Low Low | An alarm will occur if the value of the destination variable is lower than or equal to the Low Low Limit.
 |  | Low | An alarm will occur if the value of the destination variable is equal to the Low Limit or between the Low Limit and the Low Low Limit.
 |  | High | An alarm will occur if the value of the destination variable is equal to the High Limit or between the High Limit and the High High Limit.
 |  | High High | An alarm will occur if the value of the destination variable is higher than or equal to the High High Limit.
Data Type |  | The data type of the destination variable. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point.
Address |  | Indicates the status of its corresponding alarm.
 |  | Type | Description
 |  | Continuous Words | Shows the address of the selected analog alarm.
 |  | Random Words | Specifies the word variable of the selected analog alarm. Click [image] to enter an address. Click [image] to select a tag.
Limit |  | Set a limit for the alarm. The value range of the limit depends on the specified data type.
Hysteresis |  | Set a range for the limit values for an alarm to turn OFF after it has been turned ON. If the alarm type is Low Low or Low, the range is between the Limit and Limit + Limit * Hysteresis/100. If the alarm type is High High or High, the range is between the Limit and Limit - Limit * Hysteresis/100.
Level |  | Select a level for the alarm between 1 and 8.
ID |  | Specifies the alarm ID. The maximum length of the ID is 6 characters.
Message | Language | Select an existing language that you are setting the message for.
 | Import All… | Click the button to import the texts of *.csv files and saves the texts as the alarm messages for the current language.
 | Export All… | Click the button to export all the messages for the selected language to a *.csv file.
 | Text | Specifies the text for the current language. The text will be shown when the alarm is active.
 | Show Recorded Data Items | Check the specified value you want to record and display in the alarm message. Note that only the selected value will be recorded.
Record alarm |  | Check this option if you want to record the alarm in the alarm display object.
Sound Buzzer |  | Check this option if you want the panel to play a sound buzzer when the alarm is activated or cleared.
Display alarm message |  | Check this option if you want the panel to display a message automatically when the alarm is activated or cleared. This field can be checked only when Display screen is unchecked.
Display screen | <Check Box> | Check this option if you want the panel to display a window screen automatically when the alarm is activated or cleared. This field can be checked only when Display message is unchecked.
 |  | Select a window screen to display when the alarm is activated or cleared. The field is available when Display Screen is selected. Note that only Window Screens will be available to choose from.
Required Acknowledgement | <Check Box> | Check this option if you want the operator to acknowledge an alarm. When an alarm becomes active, the panel displays an alarm message or a screen with ACK button when Required Acknowledgement is selected. The operator should press the ACK button to acknowledge the alarm and to have the panel refresh the current screen. This field is available when either Display message or Display screen is selected.
 | Record ACK | Check this option if you want to record ACK in the alarm display object
 | Notification | Check this option if you want to notify the specified bit when the ACK button is clicked.
 | Bit | Specifies the bit that receives the notification.
Tip Screen | <Check Box> | Check this option if you want to display a screen when you select the corresponding alarm on the alarm display object.
 |  | Select a window screen as the tip screen
Play Sound | <Check Box> | Check this option if you want the panel to play sound when the alarm is activated or cleared.
 | Sound | Select a sound from sound table of the current panel application.
 | Number of Plays | Specifies how many times you want to play the sound.
 | Break Between Plays | Specifies an interval between two plays. You can select 0s, 0.2s, 0.4s, 0.6s, 0.8s, 1s, 2s, 3s, 4s, 5s.


12.6.1 Basic Operations

Alarm Display - Basic Operations

There are four types of alarm displays.

Type

 Description
Alarm History You can display a list of alarm records by using an alarm history display.
alam history
The above is an example of the alarm history display. The first row is the title row. It displays the title of each column. The other rows display one alarm record per row. You can create scroll button groups or scroll bars to scroll the contents. An alarm history display can have seven columns. The following table describes the content of each column of an alarm record.
Column | Description
Date | The date when the record is created. This column is optional.
Time | The time when the record is created. This column is optional.
Alarm Block ID | The ID of the alarm block in which the associated alarm is defined. This column is optional.
Alarm Level | The level of the associated alarm. This column is optional.
Alarm ID | The ID of the associated alarm. This column is optional.
Alarm Status The type of the alarm record. There are three types of alarm records.
Type | Description
Active | An Active record is created when an alarm is activated.
ACK | An ACK record is created when an alarm is acknowledged.
CLR | A CLR record is created when an alarm is cleared.
ACK Time | Displays the time when an alarm was acknowledged.
Clear Time | Displays the time when an alarm was cleared.
Alarm Message | The message of the associated alarm. This column is optional.
The text color of a row is determined by the type of the alarm record.
Alarm Count You can display a list of the number of occurrences for each alarm by using an alarm count display.
alam count
The above is an example of an alarm count display. The first row is the title row. It displays the title of each column. The other rows display one alarm per row. You can create scroll button groups or scroll bars to scroll the contents. An alarm count display can have five columns. The following table describes the content of each column of an alarm.
Column | Description
Alarm Block ID | The ID of the alarm block in which the alarm is defined. This column is optional.
Alarm Level | The level of the alarm. This column is optional.
Alarm ID | The ID of the alarm. This column is optional.
Alarm Count | The number of occurrences of the alarm.
Alarm Message | The message of the alarm. This column is optional.
The text color of a row is determined by the level of the alarm.
Active Alarm You can display a list of active alarms by using an active alarm display.
active alarm
The above is an example of an active alarm display. The first row is the title row. It displays the title of each column. The other rows display one active alarm per row. You can create scroll button groups or scroll bars to scroll the contents. An active alarm display can have six columns. The following table describes the content of each column for an active alarm.
Column | Description
Date | The date when the alarm is activated.
Time | The time when the alarm is activated.
Alarm Block ID | The ID of the alarm block in which the alarm is defined. This column is optional.
Alarm Level | The level of the alarm. This column is optional.
Alarm ID | The ID of the alarm. This column is optional.
Alarm Message | The message of the alarm. This column is optional.
The text color of a row is determined by the level of the alarm.
Alarm Marquee You can display and scroll the messages of the active alarms by using an alarm marquee.
alam marquee
The above is an example of an alarm marquee. You can place the following texts in front of the alarm messages.
Text | Description
Alarm Block ID | The ID of the alarm block in which the alarm is defined.
Alarm Level | The level of the alarm.
Alarm ID | The ID of the alarm.
The text color for an alarm is determined by the level of that alarm.

Note: You can sort the list of an alarm display at runtime by touching the title of the column that you want to be the sort field. Touching the same title again changes the sort order from ascending to descending, or vice versa. The columns that can be a sort field include: Date, Time, Alarm Block ID, Alarm Level, Alarm ID, Alarm Status, and Alarm Count.


12.6.2 Operation Options

Alarm Display - Operation Options

The following operation options can be added to an alarm display. Select and set the option in the Alarm Display dialog box.

Options | Description
Visibility Control | You can show and hide an alarm display with a specified bit or the current user level. Select and set this option in the Visibility page.


12.6.3 Settings

Alarm Display - Settings

You can complete all the settings of an alarm display in the Alarm Display dialog box. This dialog box contains the following two pages.

■ General
Described in Section 12.6.4.

■ Query
Described in Section 12.6.5.

■ Visibility
Described in Section 4.4.6.


12.6.4 General Settings

Alarm Display - General Settings

This section describes how to define the general settings for an alarm display. The following is an example of the General page of the Alarm Display dialog box.

The following table describes each property in the General page of the Alarm Display dialog box.

Property |  |  | Description
ID |  |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located and is unchangeable. The format of the IDs for the alarm displays is ADnnnn.
Note |  |  | You can type a note for the object.
Shape settings |  |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Type |  |  | Specifies the type of the alarm display. There are four types:
 |  |  | Type | Description
 |  |  | Alarm History | The alarm history display lists the alarm records.
 |  |  | Alarm Count | The alarm count display lists the number of occurrences of each alarm.
 |  |  | Active Alarm | The active alarm display lists the active alarms.
 |  |  | Alarm Marquee | The alarm marquee scrolls the messages of the active alarms horizontally.
Data Source |  |  | Select alarm logger or file as the source of the collected data when the type is alarm history. If the target panel is HMI runtime, you can select database as the source of the collected data. When "alarm Logger" is selected as the data source for such objects, that object displays the sampled data stored in the logging buffer of the associated alarm block. When "File" is selected as the data source for such objects, that object displays the sampled data stored in the specified file buffer. One HMI can have up to 16 file buffers and each file buffer is identified by a unique number between 0 and 15. You can create a function button to load the sampled data stored in a file. 1) Select "Load Logged Alarms From File" as the operation of that function button. 2) Select the file extension type. Both CSV and TXT are supported. 3) Specify the file buffer to save the loaded data. 4) Specify the size of the file buffer. The size is the maximum number of samples that the file buffer can hold.
File Buffer ID |  |  | Specify the File Buffer ID if the data source is a file. To specify a file buffer ID for a file, you can use the Load Logged Alarms From File operation of the function button. Please see Section 5.4 Performing Built-in Function Using Function Buttons for details.
Scrolling Speed |  |  | Select a speed for the alarm display when the Type is Alarm Marquee.
Direction |  |  | Select Leftward or Rightward for the alarm display when the Type is Alarm Marquee.
Support Acknowledging Alarm |  |  | Check the option to acknowledge individual alarm at run time. At run time, select the alarm you want to acknowledge by touching the row of that alarm on the alarm history display. Note that you cannot select an alarm that is already acknowledged or there exists a newer record of the same alarm. The Acknowledge Alarm message box appears after an alarm is selected. Press Yes button to acknowledge the alarm or press No button to close the message box.
Blink Un-acknowledged Alarm Records |  |  | Check this option if you want to make un-acknowledged alarm records blink at run time.
Blinking Background Color |  |  | Select a color as the blinking background
Grid | Vertical |  | Select this option if you want the alarm display to have vertical grids.
 | Horizontal |  | Select this option if you want the alarm display to have horizontal grids.
 | Color |  | Select a color for the grids.
Alarm Block |  |  | Select an alarm block so that the alarm display will show the alarms defined in that alarm block only. Select All if you want the alarm display to show all the alarms.
Title | <Check Box> |  | Select this option if you want the alarm display to have a title row to show the title for each column of the displayed list when the Type is Alarm History, Alarm Count, or Current Alarm.
 | Language |  | Select a language so you can view and edit the settings of the title row for that language.
 | Font |  | Select a font for the title text.
 | Color |  | Select a color for the text.
 | BG Color |  | Select a color for the title row.
 | Date |  | Specifies the title for the Date column. This field is available when the Type is Alarm History or Current Alarm.
 | Time |  | Specifies the title for the Time column. This field is available when the Type is Alarm History or Current Alarm.
 | Alarm Block ID |  | Specifies the title for the Alarm Block ID column.
 | Alarm Level |  | Specifies the title for the Alarm Level column.
 | Alarm ID |  | Specifies the title for the Alarm ID column.
 | Alarm Status |  | Specifies the title for the Alarm Status column. This field is available when the Type is Alarm History.
 | Alarm Count |  | Specifies the title for the Alarm Count column. This field is available when the Type is Alarm Count.
 | ACK Time |  | Specifies the title for the ACK Time column. This field is available when the option Combine All Status of An Alarm in One Row is checked.
 | Clear Time |  | Specifies the title for the Clear Time column. This field is available when the option Combine All Status of An Alarm in One Row is checked.
 | Alarm Message |  | Specifies the title for the Alarm Message column.
Text | Sort Type |  | Specifies how the alarm display initially sorts its list. This field is available when the Type is not Alarm Marquee. Note: When you want an alarm display to sort its list by the contents of a column at runtime, simply touch the title of that column and the alarm display will sort its list right away.
 | Language |  | Select a language so you can view and edit the language dependent settings in the Text group for that language. The language dependent properties in the Text group include Font and Alarm Status Abbreviation.
 | Font |  | Select a font for the text.
 | Date | <Check Box> | Check this option if you want the alarm display to have the Date column. This field is available when the Type is Alarm History.
 |  | <Drop-down List> | Select a format for displaying the date
 | Time | <Check Box> | Check this option if you want the alarm display to have the Time column. This field is available when the Type is Alarm History.
 |  | <Drop-down List> | Select a format for displaying the time
 | Alarm Block ID |  | Check this option if you want the alarm display to have the Alarm Block ID column.
 | Alarm Level |  | Check this option if you want the alarm display to have the Alarm Level column.
 | Alarm ID |  | Check this option if you want the alarm display to have the Alarm ID column.
 | Alarm Message |  | Check this option if you want the alarm display to have the Alarm Message column.
 | Cleared Alarms |  | Check this option so the alarm display will show the records of cleared alarms. This field is available when the Type is Alarm History.
 | Alarm ACK |  | Check this option so the alarm display will show the records of acknowledged alarms. This field is available when the Type is Alarm History.
 | Sequence Number |  | Check this option so the alarm display will show the sequence numbers of the alarm records. This field is available when the Type is Alarm History.
 | Combine All Status of An Alarm in One Row |  | Check this option so the alarm display will show an alarm in one row by changing the specified alarm message color upon the different status.
 | Alarm Status Abbreviation | Active | Enter up to 3 characters that will be shown in the Alarm Status column for the alarm records that record when an alarm occurs. This field is available when the Type is Alarm History.
 |  | Cleared | Enter up to 3 characters that will be shown in the Alarm Status column for the alarm records that record when an alarm is cleared. This field is available when the Type is Alarm History.
 |  | ACK | Enter up to 3 characters that will be shown in the Alarm Status column for the alarm records that record when an alarm is acknowledged. This field is available when the Type is Alarm History.
 | Line Spacing |  | Specifies the extra space in pixels for two adjacent rows of the alarm display. This field is available when the Type is not Alarm Marquee.
 | Item Spacing |  | Specifies the extra space for every column of the alarm display. This field is available when the Type is not Alarm Marquee.
Alarm Message Color | Associated With Alarm Level |  | Check this option if you want to make alarm message color associated with alarm level.
 |  |  | Click the button to replace the selections of the L1 to L8 fields by the default alarm message colors defined in the Alarm Properties dialog box. This button is available when the Type is not Alarm History.
 | Level 1,Level 2 … Level 8 |  | Select a color for alarm level 1, 2…8. The alarm display will show an alarm message with this color if that alarm is defined as a level 1, 2…8 alarm. This field is available when the Type is not Alarm History.
 | Active |  | Select a color for displaying the alarm records that record when an alarm occurs. This field is available when the Type is Alarm History.
 | Cleared |  | Select a color for displaying the alarm records that record when an alarm is cleared. This field is available when the Type is Alarm History.
 | ACK |  | Select a color for displaying the alarm records that record when an alarm is acknowledged. This field is available when the Type is Alarm History.


12.6.5 Query Settings

Alarm Display - Query Settings

This section describes how to query alarms. The following is an example of the Query page of the Alarm Display dialog box.

The following table describes each property in the Query page of the Alarm Display dialog box.

Property |  | Description
Support Dynamic Query |  | Check this option if you want the object displays the alarm records filtered by dynamic conditions set at runtime. With dynamic query, the object performs the query operation only when the trigger bit changes from Off to On at runtime.
Support Static Query |  | Check this option if you want the object displays the alarm records filtered by predefined conditions. With static query, any change of query conditions at runtime will not be applied.
Query Trigger Bit |  | Specifies the bit that will trigger the query operation at runtime. The HMI reads the Query Parameter Block and refreshes the object according to the current query conditions whenever the Query Trigger Bit changes from Off to On. Click [image] to enter the bit address. Click [image] to enter the bit tag. Available only when the Support Dynamic Query option is selected.
Query Parameter Block |  | Specifies the location that stores the query parameters. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block.
 |  | Word | Description
 |  | 0 | The query flags.
 |  |  | Bit |  | Operation
 |  |  | 0 |  | Query the alarm records according to the specified alarm number when the bit is on. The alarm number is specified in word 1 of the Query Parameter Block.
 |  |  | 1 |  | Query the alarm records that occurred within the specified duration when the bit is on. The date range is specified in word 2-7 of the Query Parameter Block. The time range is specified in word 8-13 of the Query Parameter Block.
 |  |  | 2 |  | Query the alarm records according to the specified alarm status when the bit is on. The alarm status is specified in word 14 of the Query Parameter Block.
 |  |  | 3 |  | Query the alarm records according to the specified alarm block when the bit is on. The alarm block is specified in word 15 of the Query Parameter Block.
 |  |  | 4 |  | Query the alarm records according to the specified alarm level when the bit is on. The alarm level is specified in word 16 of the Query Parameter Block.
 |  |  | 5 |  | Query the alarm records according to the specified alarm ID when the bit is on. The alarm ID is specified in word 17-20 of the Query Parameter Block.
 |  |  | 6~14 |  | Reserved for future use. Must be 0.
 |  |  | 15 |  | Customized items handled by the query processing macro
 |  |  | Note: When some of the query flags are on, the result will fulfill all query conditions.
 |  | 1 | The alarm number.
 |  | 2,3,4 | The start date of the date range. Year (word 2): 0~99; Month (word 3): 1~12; Day (word 4): 1~31
 |  | 5,6,7 | The end date of the date range. Year (word 5): 0~99; Month (word 6): 1~12; Day (word 7): 1~31
 |  | 8,9,10 | The start time of the time range. Hour (word 8): 0~23; Minute (word 9): 0~59; Second (word 10): 0~59
 |  | 11,12,13 | The end time of the time range. Hour (word 11): 0~23; Minute (word 12): 0~59; Second (word 13): 0~59
 |  | 14 | The alarm status.
 |  |  | Bit |  | Description
 |  |  | 0 |  | Show the cleared alarms
 |  |  | 1 |  | Show the active alarms
 |  |  | 2 |  | Show the acknowledged alarms
 |  | 15 | The alarm block. 0~15; 64~79
 |  | 16 | The alarm level. 1~8
 |  | 17,18,19,20 | The alarm ID. Null terminated ASCII character string; Max. 6 characters
 |  | Note: The word 1- 20 of the Query Parameter Block will be available only if the corresponding query item is selected.
Block Size (Words) |  | The size in word of query parameter block.
Query Items | Date Range | Check this option if you want the object to display the alarms that occur in the specified date range.
 | Time Range | Check this option if you want the object to display the alarms that occur in the specified time range. Available only when the Date Range is checked.
 | Alarm Number | Check this option if you want the object to display the alarms with the specified alarm number.
 | Alarm Status | Check this option if you want the object to display the alarms with the specified alarm status.
 | Alarm Block | Check this option if you want the object to display the alarms with the specified alarm block.
 | Alarm Level | Check this option if you want the object to display the alarms with the specified alarm level.
 | Alarm ID | Check this option if you want the object to display the alarms with the specified alarm ID.
 | Customized items to be processed by the query processing macro | Check this option if you want to set query conditions in query processing macro. Note: A query processing macro must use QRET command to report if the currently processed record is qualified for the current query and terminate itself. Only qualified records are displayed according to the query conditions. The following is an example that the object will show the active alarms only.
 | Current Data Buffer | Specifies the variable representing the data buffer for query processing macro to save the current alarm. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the buffer.
 |  | Word |  | Description
 |  | 0 |  | The alarm type. 0: Discrete Alarm 1: Analog Alarm
 |  | 1 |  | The alarm number.
 |  | 2 |  | The alarm status. 0: Cleared 1: Active 2: ACK
 |  | 3 |  | The alarm block.
 |  | 4 |  | The alarm level.
 |  | 5-8 |  | The alarm ID. Null terminated ASCII character string; Max. 6 characters
 | Buffer Size | The size of the current data buffer. Total 9 words.


13.1 Data Logger

Data Logger

This chapter describes how to set up data loggers for your application to collect data, and how to configure the historic display objects to display the collected data.

A data logger can collect and store the values of a data block. You can specify what data block you want to log, determine the frequency of data sampling, choose the type of memory to save the logged data, and specify how to save the logged data to files.
You can create up to 16 data loggers for your application. The maximum size of the data block that can be sampled by a data logger is 1023 words.

You can use the function button to request the panel to clear logged data, or save/load logged data (.ldf/.csv/.txt file).
To know how to define a function button, please see Section 5.4.1 Basic Operations of function buttons.

To create a data logger, you may do one of the following:
1) In the Project Manager tool window, right-click the Data Loggers node ( [image] ) of the concerned panel application and select Add Data Logger.
2) In the menu bar, click Panel to bring up the Panel sub-menu. Click Data Logger in the Panel sub-menu to bring up the Data Logger pop-up menu. Select Add in the pop-up menu.

Note: A typical application might have over 32MB of memory space for the data logging. But there are too many factors affecting the exactly memory size that is available for the data loggers. So please rely on the compilation result. It will let you know when the memory is insufficient. And once the application passes the compilation, the memory space for the storage is guaranteed.


13.1.1 Settings

Data Logger - Settings

You can set up a data logger with the Data Logger dialog box. There are two ways to open the dialog box of a data logger:

  1. In the Project Manager window, right-click the node of the desired data logger ( [image] ) and select Properties.
  2. In the menu bar, click Panel to bring up the Panel sub-menu. Click Data Logger in the Panel sub-menu to bring up the Data Logger pop-up menu. Select Properties in the pop-up menu to bring up the data logger list of the current panel application. Select the data logger in the list.

The Data Logger dialog box contains the following three pages:

■ General
Described in Section 13.1.2.

■ Data Item
Described in Section 13.1.3.

■ Data Logging Macro
Described in Section 15.2.6.


13.1.2 General Settings

Data Logger - General Settings

Use the General page to define the general settings for a data logger. The following is an example of the General page.

The table below describes each property in the General page.

Property |  | Description
Name |  | The data logger's name. The maximum length of the name is 48 characters.
ID |  | The data logger's ID number. Select a number between 0 and 15. The number is unique among all data loggers of the panel application.
Read Address |  | Specifies the variable representing the data block to be sampled. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The size of the data block is specified in the Sample Size field.
Sample Size |  | The size of the data to be sampled. The unit is word.
Number of Samples |  | Specifies the maximum number of samples that the logging buffer of the data logger can hold.
Sampling Method | Timed | The data logger samples data periodically at a rate specified in the Interval field. You can specify an interval between 1 and 65535 seconds for the Interval field. For example, if you want the data logger to sample data every 5 seconds, specify 5 for the Interval field.
 | Triggered | The data logger samples data once whenever the trigger bit specified in the Trigger Bit field changes from Off to On.
 | Clocked | The data logger samples data at fixed moments specified in the At Each field. There are six sets of fixed moments available for the At Each field.
 |  | At Each | Fixed Moments
 |  | 1x | Every minute at 0 second
 |  | 5x | The following moments of every hour: 00:00, 05:00, 10:00, 15:00, 20:00, 25:00, 30:00, 35:00, 40:00, 45:00, 50:00, 55:00
 |  | 10x | The following moments of every hour: 00:00, 10:00, 20:00, 30:00, 40:00, 50:00
 |  | 15x | The following moments of every hour: 00:00, 15:00, 30:00, 45:00
 |  | 30x | The following moments of every hour: 00:00, 30:00
 |  | 60x | Every hour on the hour
 | Timed (sub-second) | The data logger samples data periodically at a rate specified in the Interval field. You can select an interval between 0.1 and 0.9 seconds for the Interval field. For example, if you want the data logger to sample data every 0.5 seconds, select 0.5 for the Interval field. The sub-second sampling requires high data acquisition performance. As there are many factors that can affect performance, it is not guaranteed that the specified sampling rate can be attained.
 | Passive | The data logger does not sample data, but receives data from primary data logger by using SAVE2LB macro command or a LDF/CSV/TXT file. For details about the passive method, please see Section 13.1.4. Using File to Save Logged Data.
Data Logging Macro | Data Logging Macro | Check the option to log processed data instead of original data. For details about the data logging macro, please see Section 13.1.5. Using Data Logging Macro to log processed data.
 | Sampled Data Buffer | Specifies the variable representing the data buffer for data logging macro to save the sampled data. The buffer size is the sample size. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Size of the data to be logged by the macro | Specifies the size of the data to be logged by the macro.
Logging Buffer Size |  | The size of the logging buffer. The unit is word. The formula to calculate the size is:
 |  | Sampling Method | Record Size | Logging Buffer Size | Remark
 |  | Timed (sub-second) | Odd Number | Number of Samples * (Record Size + 6 + 1) | The number 6 is the size of the time stamp. The number 1 is to make each record double-word aligned.
 |  |  | Even Number | Number of Samples * (Record Size + 6)
 |  | All Others | Odd Number | Number of Samples * (Record Size + 5) | The number 5 is the size of the time stamp. The number 1 is to make each record double-word aligned.
 |  |  | Even Number | Number of Samples * (Record Size + 5 + 1)
 |  | Note: If the Data Logging Macro is used, the record size will be the size of the data to be logged by the macro. Otherwise the record size is the sample size.
Storage | Battery Backed RAM | Check this option so the logging buffer of the data logger will be located in the battery backed RAM. The logged data will not be lost after power down if the battery backed RAM is used as the logging buffer.
 | RAM (volatile) | Check this option so the logging buffer will be located in an ordinary RAM, and the data logger will clear the logging buffer whenever the target panel is powered up.
 | Flash Memory | The X series HMI unit allows the data loggers to save the collected data in the flash memory. This feature enlarges the non-volatile storage for real-time data collection from 1 MB to 100 MB.
 | File | Check this option so the logging buffer will be located in the specified file.
Sample Full Processing | Stop Sampling | Check the option if you want the data logger to stop sampling data when the logging buffer is full.
 | Notify | Check the option if you want the data logger to set the bit specified in the Bit field to On when the number of collected samples exceeds the limit specified in the Full Limit field.
 | Bit | Available when the Notify field is checked. Specifies the bit for the sample full notification. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Full Limit | Available when the Notify field is checked. Select a percentage as the full limit. When the ratio of collected samples to maximum samples specified in the Number of Samples field exceeds the percentage, the data logger sets the bit specified in the Bit field to On.
External Control | Clear Buffer | Check this option so the data logger can be controlled to clear its logging buffer with the trigger bit specified in the Trigger Bit field.
 | Trigger Bit | Available when the Clear Buffer option is checked. Select a trigger bit that will control the data logger to clear its logging buffer. The data logger clears its logging buffer when the trigger bit changes from Off to On.
 | Enable Sampling | Check this option so the data logger can be enabled and disabled by the enabling bit specified in the Enabling Bit field.
 | Enabling Bit | Available when the Enable Sampling option is checked. Select an enabling bit that will enable and disable the data logger. The data logger is enabled when the enabling bit is On.
Latest Recorded Data | Word Address | You can use the addresses shown here to refer to the latest sampled data of the data logger for configuring screen objects and writing macros.
Save Data to File
 | Save Data to File | Check this option so the data logger will periodically write the newly collected data to a specified file. Each time the data logger performs this operation, it writes only the data that have not saved to a file before.
 | File Type | The type of file to save the logged data.
 |  | File Type | Description
 |  | .CSV/.TXT | The logged data are saved in CSV or text format. You can use any text editor to view the logged data. Most importantly you can use Microsoft Excel to import the logged data from such files directly.
 |  | .LDF | The logged data are saved in a binary format and can only be used by a data logger that has exactly the same data definition. This file type allows you to view and operate historic data loaded from files.
 | Operation Type | Specifies how to open a file to save the logged data.
 |  | Operation Type | Description
 |  | Create | Creates a new file with the specified filename to save the logged data.
 |  | Append or Create | If the specified file exists, appends the logged data to that file; otherwise creates a new file with the specified filename to save the logged data.
 | Time to Save | Specifies the period to save the logged data. There are fourteen periods available:
 |  | Available Period
 |  | Every hour on the hour
 |  | Every 8 hours (00:00, 08:00, 16:00)
 |  | Every 12 hours (00:00, 12:00)
 |  | Every day at 00:00
 |  | Every day at 08:00
 |  | Every day at 12:00
 |  | Every Sunday at 00:00
 |  | Every Monday at 00:00
 |  | Every month's first day at 00:00
 |  | Every Minute (For test only)
 |  | Every 5 minutes
 |  | Every 10 minutes
 |  | Every 15 minutes
 |  | Every 30 minutes
 | Save to the default folder | Check this option to save the file in the default folder. Please see Section 3.1.4 for details about specifying default folder.
 | Variable filename | Check this option to use the variable representing the file name. Click [image] to enter an address for the Filename field. Click [image] to select a tag for the Filename field.
 | Filename | The filename or the prefix of the filename of the file to save the logged data if the Variable filename option is not checked. The extension name must be "csv" when the File Type is ".CSV". The extension name must be "txt" when the File Type is ".TXT". The extension name must be "ldf" when the File Type is ".LDF". The extension name must be "xls" when the File Type is ".XLS".
 | File name Suffix | Available when the Operation Type is Create and the filename is not a variable. This property guarantees that the created file has a unique name and no existing file will be overwritten. There are four kinds of filename suffixes available as shown in the following table.
 |  | Filename Suffix | Description | Example
 |  | _YYMMDD_hhmmss | YY: year (00-99) MM: month (01-12) DD: day (01-31) hh: hour (00-23) mm: minute (00-59) ss: second (00-59) | Log_090423_102358 (Assume that the specified Filename is "Log", the current date is April 23, 2009, and the current time is 10:23:58.)
 |  | _YYMMDD_hhmm |  | Log_090423_1023
 |  | _YYMMDD_hh |  | Log_090423_10
 |  | _YYMMDD |  | Log_090423
 | Do not show file saving message | Check this option if you do not want to show the message when doing the file saving operation.
Save Data to Database | Save Data to Database | Check this option so the data logger will periodically write the newly collected data to a specified table in the database. Each time the data logger performs this operation, it writes only the data that have not saved to a database before.
 | Table Name | Specifies the name of the table in the database to save the logged data.
 | Time to Save | Specifies the period to save the logged data. There are fourteen periods available.


13.1.3 Data Item Settings

Data Logger - Data Item Settings

Use the Data Item page to define the data items of the sampled data for a data logger. The following is an example of the Data Item page.

The Data Item page contains two parts. The left part is the data item list that shows the address and name of each data item in rows. The right part shows the properties of the selected data item. To select a data item, click the row of that data item in the data item list.

The following table describes each property of the data item.

Property |  |  | Description
Address |  |  | You can use the address shown here to refer to the latest sampled value of the data item.
Name |  |  | Specifies the name of the data item for the language specified in the Language Of Data Item Name field.
Language of Data Item |  |  | Select a language so you can view and edit the name of the data item on the left part for that language.
Data Item | Data Type |  | The data type of the data item. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, Byte Array (Character String) and Word Array (Double -Byte Character String).
 | Display Type |  | The display type for the value of the data item. The following table shows the available display types for each data type.
 |  |  | Data Type |  |  | Available Display Types
 |  |  | 16-Bit Unsigned Integer |  |  | 16-Bit Unsigned Decimal, 16-Bit Hexadecimal, 16-Bit Octal, Indexed String, Identified String
 |  |  | 32-Bit Unsigned Integer |  |  | 32-Bit Unsigned Decimal, 32-Bit Hexadecimal, 32-Bit Octal, Indexed String, Identified String
 |  |  | 16-Bit Signed Integer |  |  | 16-Bit Signed Decimal, Indexed String, Identified String
 |  |  | 32-Bit Signed Integer |  |  | 32-Bit Signed Decimal, Indexed String, Identified String
 |  |  | 16-Bit BCD |  |  | 16-Bit Unsigned Decimal
 |  |  | 32-Bit BCD |  |  | 32-Bit Unsigned Decimal
 |  |  | 32-Bit Floating Point |  |  | 32-Bit Floating Point, Exponential Format
 |  |  | Byte Array (Character String) |  |  | ASCII String, Western European String, Cyrillic String
 |  |  | Word Array (Double- Byte Character String) |  |  | Chinese(PRC) String, Chinese(Taiwan) String, Unicode String,
 |  |  | Note: For details about the Indexed String and Identified String, please see Section 13.1.6. Difference between Indexed String and Identified String.
 | Total Digits / Length |  | Specifies the number of digits to be displayed for the value of the data item.
 | Fractional Digits |  | Specifies how to display the fractional part of the value of the data item. When the Display Type is 32-bit Floating Point, this property specifies the number of fractional digits to be displayed. When the Display Type is not 32-bit Floating Point, this property specifies not only the number of fractional digits to be displayed, but also the number of least significant digits to be displayed as the fractional part. With this feature, an integer can be shown as a fixed point number. Example:
 |  |  | Display Type | Total Digits | Fractional Digits |  | Sampled Value | Displayed Value
 |  |  | 32-bit Floating Point | 4 | 2 |  | 12.34 | 12.34
 |  |  | 32-bit Floating Point | 4 | 2 |  | 123.4 | 23.40
 |  |  | 16-bit Signed Decimal | 5 | 2 |  | 123.45 | 123.45
 |  |  | 16-bit Signed Decimal | 5 | 2 |  | -5 | -0.05
 | Text Table |  | Available when the display type is Indexed String and Identified String. Select a text table where the string is located.
 | First String No. |  | Available when the display type is Indexed String and Identified String. Specifies the first string number of the text table.
 | Last String No. |  | Available when the display type is Indexed String and Identified String. Specifies the last string number of the text table.
 | Scaling | Scaling | Check this option if you want the value of the data item to be displayed in a scaled manner. The following is the scaling formula: DisplayedValue = SampledValue * Gain + Offset Note: The Gain and Offset are 32-bit floating point numbers. They have at most 6 significant digits. Rounding and truncation errors may occur.
 |  | Gain | Available when the Scaling option is checked. Specifies the Gain used in the scaling formula.
 |  | Offset | Available when the Scaling option is checked. Specifies the Offset used in the scaling formula.
Database | Show Column Names |  | Available when the target panel is HMI runtime. Check this option to show the column name of the table in the database in the top-left part.
 | Column Names |  | Select a language so you can use the Data Item Name of that language as the column name.


13.1.4 Using File to Save Logged Data

Using File to Save Logged Data

The software allows you to save logged data in CSV/TXT/LDF files and view the data later. Hence, the size of the battery backed RAM or the buffer sizes of the data loggers will not limit the size of the historical data you want to collect.

There are three ways to write the logged data of a data logger to a CSV/TXT/LDF file:

  1. You can use a function button to perform “Save Logged Data (.ldf file)” or "Save Logged Data To File". The button writes all the logged data of the specified data logged to a file.

  2. You can use the Command Block to request this operation.

  3. You can configure a data logger to write its collected data to a file automatically with preset time intervals.

To view the logged data of a file, you need to load the data of that file into a data logger first. A data logger is able to receive the data from a file only when:

  1. The definitions of the data items of the file and the data logger are identical, and

  2. The number of samples of the file is not greater than the number of samples of the data logger.

The following is an example of data logging and loading:

The data logger #2 saves the logged data to temp_logged_YYMMDD.ldf in every hour.

The data logger #1 with Passive sampling method is able to receive the data from the file.

You can use the function button to load the logged data from temp_logged_130624.ldf and save it to the passive data logger #1.


13.2.1 Basic Operations

Historic Data Table - Basic Operations

Use the following steps to create a historic data table:

  1. Click the Historic Data Table icon [image] in the Object toolbar, or select Historic Data Table in the Object sub-menu.

  2. Move the cursor to the screen on which you want to create the object.

  3. Click the desired position on the screen to place the new object.

You can use a historic data table to list the values of the data collected by a data logger or saved in the file. If the target panel is HMI runtime, you can display the values collected by database.

The above is an example of the historic data table. The first row is the title row. It displays the title of each column. The other rows display one data record per row. You can create scroll button groups or scroll bars to scroll the contents. The titles of data columns are the names of data items defined in the Data Item page of the Data Logger dialog box.


13.2.2 Operation Options

Historic Data Table - Operation Options

The following operation option can be added to a historic data table. Select and set the option in the Historic Data Table dialog box.

Options | Description
Visibility Control | You can show and hide a historic data table by a specified bit or the current user level. Select and set this option in the Visibility page.


13.2.3 Settings

Historic Data Table - Settings

You can set up a historic data table with the Historic Data Table dialog box. There are three ways to open the dialog box of an object:

  1. Double-click the object.
  2. Right-click the object to bring up the Object pop-up menu. Select Properties in the pop-up menu.
  3. In the Object List window, double-click the row that shows the information of the object.

You can complete all the settings of a historic data table in the Historic Data Table dialog box. This dialog box contains the following five pages. Some of the pages appear only when they are needed.

■ General
Described in Section 13.2.4.

■ Data Item
Described in Section 13.2.5.

■ Query
Described in Section 13.2.6.

■ Visibility
Described in Section 4.4.6.

■ Query Processing Macro
Described in Section 15.2.6.


13.2.4 General Settings

Historic Data Table - General Settings

This section describes how to define the general settings for a historic data table. The following is an example of the General page.

historic data table

The following table describes each property in the General page.

Property

 Description
ID | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the historic data tables is HDDnnnn.
Note | You can type a note for the object.
Shape settings | For details about the following properties, Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Associated Data Logger | Select the data logger whose collected data is to be displayed by the object.
Data Source Select data logger or file as the source of the collected data. If the target panel is HMI runtime, you can select database as the source of the collected data.

When "Data Logger" is selected as the data source for such objects, that object displays the sampled data stored in the logging buffer of the associated data logger.
When "File" is selected as the data source for such objects, that object displays the sampled data stored in the specified file buffer.

One HMI can have up to 16 file buffers and each file buffer is identified by a unique number between 0 and 15.

You can create a function button to load the sampled data stored in a file.
1) Select "Load Logged Data From File" as the operation of that function button.
2) Select the file extension type. Both CSV and TXT are supported.
3) Specify the associated data logger.
4) Specify the file buffer to save the loaded data.
5) Specify the size of the file buffer. The size is the maximum number of samples that the file buffer can hold.
File Buffer ID | Specify the File Buffer ID if the data source is a file. To specify a file buffer ID for a file, you can use the Load Logged Data From File operation of the function button. Please see Section 5.4 Performing Built-in Function Using Function Buttons for details.
Title | Title | Select this option if you want the object to display a title row.
Language | Select a language so you can view and edit the settings of the title row for that language.
Font | Select a font for the title text.
Color | Select a color for the title text.
Date | Specifies the title for the Date column.
Time | Specifies the title for the Time column.
Background Color | Select a color for the background of the title row.
Grid | Horizontal | Check this option if you want the object to have horizontal grids.
Vertical | Check this option if you want the object to have vertical grids.
Color | Select a color for the grids.
Data | Display oldest Data First | Check this option if you want the object to display the oldest data first.
Display Sequence Number | Check this option if you want the object to display sequence number on the first column.
Font | Select a font for displaying data.
Default Color | Select a color as the default color for displaying data.
Set Default Color to All Data Items | Click this button to set the colors of all the data items to the Default Color.
Time/Date Display | Date | Check this option if you want the object to display the Date column. You need to select a format for displaying the date.
Time | Check this option if you want the object to display the Time column. You need to select a format for displaying the time.
Color | Select a color to displaying Time/Date.
Display Relative Time | Check this option if you want the object to display a relative measure of time.
Line Spacing | Specifies the extra space in pixels for two adjacent rows in the table.
Item Spacing | Specifies the extra space for every column in the table.


13.2.5 Data Item Settings

Historic Data Table - Data Item Settings

This section describes how to define the display format for the sampled values of each data item. The following is an example of the Data Item page.

The following table describes each property in the Data Item page.

Property |  | Description
Language |  | Select a language so you can view and edit the settings for that language.
Row #n of the property table | Name | The name of data item #n. The data item names are defined in the Data Item page of the Data Logger dialog box.
 | Display | Check this option if you want the object to display data item #n.
 | Color | Select a color for displaying data item #n.
 | Width | The column width for displaying data item #n. There are five types of width when the data type is Byte Array or Word Array: Normal, Narrow, Extra Narrow, Width and Extra Width.
 | Justification | The justification for displaying data item #n. There are three types of justification:
 |  | Option | Description
 |  | Zero Suppress | The leading digits will not display when they are 0.
 |  | Leading Zeros | All digits will display.
 |  | Leading Spaces | The leading digits will display as blank characters when they are 0.

You need to make a selection before editing the data item. To select a data item, click the row of that data item in the list.

The following table describes each property of the selected data item.

Property | Description
Use the high limit color as the background color for cells with a value over the high limit | Check this option if you want to use the high limit color as the background color for cells with a value over the specified high limit.
High Limit | Specifies the high limit when the Constant is selected. When the Variable is selected, this property specifies the variable that stores the high limit at runtime. Click [image] to enter an address. Click [image] to select a tag.
High Limit Color | The background color for cells if the value over the specified high limit.
use the low limit color as the background color for cells with a value over the low limit | Check this option if you want to use the low limit color as the background color for cells with a value below the specified low limit.
Low Limit | Specifies the low limit when the Constant is selected. When the Variable is selected, this property specifies the variable that stores the low limit at runtime. Click [image] to enter an address. Click [image] to select a tag.
Low Limit Color | The background color for cells if the value below the specified low limit.
Output Maximum To | Check this option if you want to find the maximum of the data currently viewable and store the result in the specified variable at runtime. Click [image] to enter an address. Click [image] to select a tag.
Output Minimum To | Check this option if you want to find the minimum value of the data currently viewable and store the result in the specified variable at runtime. Click [image] to enter an address. Click [image] to select a tag.
Output Average To | Check this option if you want to calculate the average of the data currently viewable and store the result in the specified variable at runtime. Click [image] to enter an address. Click [image] to select a tag.


13.2.6 Query Settings

Historic Data Table - Query Settings

This section describes how to query logged data. The following is an example of the Query page of the Historic Data Table dialog box.

The following table describes each property in the Query page of the Historic Data Table dialog box.

Property |  | Description
Support Dynamic Query |  | Check this option if you want the object displays the records filtered by dynamic conditions set at runtime. With dynamic query, the object performs the query operation only when the trigger bit changes from Off to On at runtime.
Support Static Query |  | Check this option if you want the object displays the records filtered by predefined conditions. With static query, any change of query conditions at runtime will not be applied.
Query Trigger Bit |  | Specifies the bit that will trigger the query operation at runtime. The HMI reads the Query Parameter Block and refreshes the object according to the current query conditions whenever the Query Trigger Bit changes from Off to On. Click [image] to enter the bit address. Click [image] to enter the bit tag. Available only when the Support Dynamic Query option is selected.
Query Parameter Block |  | Specifies the location that stores the query parameters. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block.
 |  | Word | Description
 |  | 0 | The query flags.
 |  |  | Bit | Operation
 |  |  | 0 | Reserved for future use. Must be 0.
 |  |  | 1 | Query the data records that occurred within the specified duration when the bit is on. The date range is specified in word 1-6 of the Query Parameter Block. The time range is specified in word 7-12 of the Query Parameter Block.
 |  |  | 2~14 | Reserved for future use. Must be 0.
 |  |  | 15 | Customized items handled by the query processing macro
 |  |  | Note: 1) When both query flags are on, the result will fulfill both query conditions. 2) If you want to display all data when the query processing is enabled, set the first parameter to zero, i.e. set all the query flags to 0, and then trigger the query processing.
 |  | 1,2,3 | The start date of the date range. Year (word 1): 0~99; Month (word 2): 1~12; Day (word 3): 1~31
 |  | 4,5,6 | The end date of the date range. Year (word 4): 0~99; Month (word 5): 1~12; Day (word 6): 1~31
 |  | 7,8,9 | The start time of the time range. Hour (word 7): 0~23; Minute (word 8): 0~59; Second (word 9): 0~59
 |  | 10,11,12 | The end time of the time range. Hour (word 10): 0~23; Minute (word 11): 0~59; Second (word 12): 0~59
 |  | Note: The word 1- 12 of the Query Parameter Block will be available only if the corresponding query item is selected.
Block Size (Words) |  | The size in word of query parameter block.
Query Items | Date Range | Check this option if you want the object to display the records that occur in the specified date range.
 | Time Range | Check this option if you want the object to display the records that occur in the specified time range. Available only when the Date Range is checked.
 | Customized items to be processed by the query processing macro | Check this option if you want to set query conditions in query processing macro. Note: A query processing macro must use QRET command to report if the currently processed record is qualified for the current query and terminate itself. Only qualified records are displayed according to the query conditions.
 | Current Data Buffer | Specifies the variable representing the data buffer for query processing macro to save the current record. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Buffer Size | The size of the current data buffer which is the size of a record.


13.3.1 Basic Operations

Historic Trend Graph - Basic Operations

Follow the steps below to create a historic trend graph:

  1. Click the Historic Trend Graph icon [image] in the Object toolbar, or select Historic Trend Graph in the Object sub-menu.

  2. Move the cursor to the screen on which you want to create the object.

  3. Click the desired position on the screen to place the new object.

You can use a Historic Trend Graph to display the values of the data collected by a data logger or a file as a trend graph.

A historic trend graph can display up to 16 curves. The above is an example of the historic trend graph with four curves and one of them (curve in red) is hidden. The historic trend graph can have the following features:

1) A historic trend graph can provide a cursor for you to estimate the value in the desired time. The date, time, and data values of the selected time can be shown on the chart. Also, the data of the selected time can be written to a receiving buffer.

2) A historic trend graph can display one or two reference lines to help the operator to read the graph efficiently. A reference line can be a horizontal line for the "From Left To Right" trend graphs or a vertical line for the "From Top To Bottom" trend graphs. A reference line can also be a polyline for the trend graphs of any direction. You can control the position of a reference line at run time. If a reference line is a polyline, you can control its shape too.

3) The value scale of the historic trend graph can be changed at runtime.

4) Trend curves can be zoomed by varying time resolution.

5) Trend curves can be hidden dynamically.


13.3.2 Operation Options

Historic Trend Graph - Operation Options

The following operation option can be added to a historic trend graph. Select and set the option in the Historic Trend Graph dialog box.

Options | Description
Visibility Control | You can show and hide a historic trend graph by a specified bit or the current user level. Select and set this option in the Visibility page.


13.3.3 Settings

Historic Trend Graph - Settings

You can set up a historic trend graph with the Historic Trend Graph dialog box. There are three ways to open the dialog box of an object:
1) Double-click the object.
2) Right-click the object to bring up the Object pop-up menu. Select Properties in the pop-up menu.
3) In the Object List window, double-click the row that shows the information of the object.

The Historic Trend Graph dialog box contains the following four pages:

■ General
Described in Section 13.3.4.

■ Curve
Described in Section 13.3.5.

■ Axis
Described in Section 13.3.6.

■ Query
Described in Section 13.3.7.

■ Visibility
Described in Section 4.4.6.


13.3.4 General Settings

Historic Trend Graph - General Settings

This section describes how to define the general settings for a historic trend graph. The following is an example of the General page of the Historic Trend Graph property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the historic trend graph is HTDnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color.
Graph BG color |  | Select a color for the background of the graph.
Associated Data Logger |  | Specifies the associated data logger.
Data Source |  | Select data logger or file as the source of the collected data.
File Buffer ID |  | Specify the File Buffer ID if the data source is a file. To specify a file buffer ID for a file, you can use Load Logged Data From File operation of the function button. Please see Section 5.4 Performing Built-in Function Using Function Buttons for details.
Number of Curves |  | Specifies the number of curves. Max 16 curves are supported.
Direction | From Left to Right | Check this option to place the historic trend graph in horizontal direction.
 | From Top to Bottom | Check this option to place the historic trend graph in vertical direction.
Point Spacing | Time Based | Check this option if you want to draw the distance between two adjacent points based on time.
 | Fixed Distance | The space between two adjacent data points on a trend curve can be a fixed distance in pixels rather than a distance determined by the time difference of the two points. Check this option if you want to draw the distance between two adjacent points in predefined pixels. You need to specify the distance from the dropdown list with 1,2,4,8,16 or 32 pixels. You can use the fixed distance to draw two adjacent points if the data logger is sampled not by time but by triggered.
Cursor | <Check box> | Check this option so the historic trend graph will display a cursor. You can touch and drag the cursor to the data point(s) that you want to select.
 | Cursor Color | Select a color for the cursor.
 | Value Display Font | Select a font for displaying the values of the selected data point(s).
 | Date | Check this option to display the date at the top left of the historic trend graph object. You need to select a format for displaying the date. There are 17 formats available: dd/mm/yy, mm/dd/yy, yy/mm/dd, dd.mm.yy, mm.dd.yy, yy.mm.dd, dd-mm-yy, mm-dd-yy, yy-mm-dd, MMMdd, dd/mm, mm/dd, dd.mm, mm.dd, dd-mm, mm-dd, yyyy/mm/dd Note: dd: 01-31 (day); mm: 01-12 (month); yy: 00-99 (year); yyyy: 0000-9999(year); MMM: JAN-DEC (month)
 | Time | Check this option if you want the object to display the Time at the top left corner. You need to select a format for displaying the time. There are 3 formats available: hh:mm, hh:mm:ss; mm:ss Note: hh: 00-23 (hour); mm: 00-50 (minute); ss: 00-59 (second);
 | Time/Date Color | Select a color to display the Time/Date.
 | Cursor Data Receiving Buffer | Specifies the variable to receive the data selected by the cursor to be read and displayed. The buffer size is the record size of the associated data logger. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Display Relative Time |  | Check this option if you want the object to display a relative measure of time.
Support Zoom |  | Check this option so the zoom option will be supported at runtime. You may use the function button to zoom in or zoom out of the historic trend graph at the runtime. This field is available only when the Dynamic Range field is not checked.
Dynamic Range | Dynamic Range | When this option is selected, the following three ranges can be specified at runtime: * The minimum and the maximum for the Y values of each curve * The maximum time duration for the X axis * The minimum and maximum of the marks for the Y axis The data that specifies the above three ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block in the Dynamic Range Parameter Block field.
 | Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the historic trend graph when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block.
 |  | Word |  | Description
 |  | 0,1 |  | The maximum time duration for the time axis
 |  | 2,3 |  | The number of major division for the time axis; 32-bit integer number. The minimum value is 1.
 |  | 4,5 |  | The number of sub-division for the time axis; 32-bit integer number. The minimum value is 1.
 |  | 6,7 |  | The minimum of the mark for the value axis.
 |  | 8,9 |  | The maximum of the mark for the value axis.
 |  | 10,11 |  | The minimum of values for curve #1 of the specific scale type.
 |  | 12,13 |  | The maximum of values for curve #1 of the specific scale type.
 |  | 14,15 |  | The minimum of values for curve #2 of the specific scale type.
 |  | 16,17 |  | The maximum of values for curve #2 of the specific scale type.
 |  | … |  | …
 |  | 70,71 |  | The minimum of values for curve #16 of the specific scale type.
 |  | 72,73 |  | The maximum of values for curve #16 of the specific scale type.
Curves Show/Hide Controllable |  | When this option is selected, you can show or hide a curve by setting or resetting the corresponding bit of the Curves Show/Hide Control Word.
Curves Show/Hide Control Word. |  | Specifies the variable that shows or hides the curve when Curves Show/Hide Controllable is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. To show #n curve, please set bit n-1 of the control word to 1.
Value Axis Scale Selectable |  | When this option is selected, you can change the value axis scale at runtime by setting Value Axis Scale Selection Word.
Value Axis Scale Selection Word |  | Specifies the variable that stores the value axis scale set when Value Axis Scale Selectable is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. You can define up to 5 sets of scale settings for the value axis of a historic trend graph. This can be done on the Axis page of the configuration dialog box. The following is an example of the multiple scale settings.
Reference Line | Type | The line type and the count of the reference lines. There are three options: One Line, Two Lines, and One Polyline.
 |  | Type |  | Sample
 |  | One Line |  |
 |  | One Polyline |  |
 |  | Two Lines |  |
 | Style | Select a line style for the reference lines.
 | Color | Select a color for the first reference line.
 | Color 2 | Select a color for the second reference line. It is only available when the type is Two Lines.
 | Data Type | The data type of the position parameter. The supported data types include:16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point.
 | Data Address | Specifies the address of the control data. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following tables describe the arrangements of the control data for each reference line type.
 |  | Type: One Line
 |  | Word or Double-word No. |  | Description
 |  | 0 |  | Specifies the line position. (Note 1)
 |  | Type: Two Lines
 |  | Word or Double-word No. |  | Description
 |  | 0 |  | Specifies the position of the first line. (Note 1)
 |  | 1 |  | Specifies the position of the second line. (Note 1)
 |  | Type: One Polyline
 |  | Word or Double-word No. |  | Description
 |  | 0 |  | Specifies how many points the polyline has. The value cannot exceed the specified Maximal Number Of Points.
 |  | 1 |  | Specifies the distance to shift the polyline rightward if the trend graph is of "From Left To Right" or shift the polyline downward if the trend graph is of "From Top To Bottom". The value must be a positive number and the unit is second.
 |  | 2 |  | Specify the time of the first point relative to the time of the trend graph's origin. The unit is second and the value must be a positive number.
 |  | 3 |  | Specify the position of the first point in the direction of the data value axis. (Note 1)
 |  | 4 |  | Specify the time of the second point relative to the time of the trend graph's origin. The unit is second and the value must be greater than the first point's value.
 |  | 5 |  | Specify the position of the second point in the direction of the data value axis. (Note 1)
 |  | ... |  | ...
 |  | 2N |  | Specify the time of the N-th point relative to the time of the trend graph's origin. The unit is second and the value must be greater than the value of the preceding point.
 |  | 2N+1 |  | Specify the position of the N-th point in the direction of the data value axis. (Note 1)
 |  | Note 1: A valid value is between the specified Minimum and Maximum. When the value equals to the Minimum, it positions the associated reference line or the associated point of the reference polyline at the position corresponding to the minimum of the historic data. When the value equals to the Maximum, it positions the associated line or the point at the position corresponding to the maximum of the historic data. When the value is in between, the associated line or point is at a position in the graph area corresponding to the relation of the value among the Minimum and the Maximum. The following are examples with the specified minimum, maximum and control data:
 |  | Minimum | Maximum |  | Control Data |  |  | Example
 |  | -10 |  | 10 | 5 |  |  |
 |  | 0 |  | 100 | 30 |  |  |
 |  | 0 |  | 100 | Control Data 1 = 10 Control Data 2 = 90 |  |  |
 |  | 0 |  | 100 | Word No. | Value | Comment |
 |  |  |  |  | 0 | 8 | Number of points
 |  |  |  |  | 1 | 0 | No shift
 |  |  |  |  | 2 | 10 | Time of the 1st point
 |  |  |  |  | 3 | 0 | Value of the 1st point
 |  |  |  |  | 4 | 35 | Time of the 2nd point
 |  |  |  |  | 5 | 10 | Value of the 2nd point
 |  |  |  |  | 6 | 65 | Time of the 3rd point
 |  |  |  |  | 7 | 10 | Value of the 3rd point
 |  |  |  |  | 8 | 70 | Time of the 4th point
 |  |  |  |  | 9 | 25 | Value of the 4th point
 |  |  |  |  | 10 | 105 | Time of the 5th point
 |  |  |  |  | 11 | 25 | Value of the 5th point
 |  |  |  |  | 12 | 115 | Time of the 6th point
 |  |  |  |  | 13 | 55 | Value of the 6th point
 |  |  |  |  | 14 | 145 | Time of the 7th point
 |  |  |  |  | 15 | 55 | Value of the 7th point
 |  |  |  |  | 16 | 170 | Time of the 8th point
 |  |  |  |  | 17 | 65 | Value of the 8th point
 | Maximal Number Of Points | The maximal number of points that the reference polyline can have.
 | Minimum | When the value of the control data equals to the Minimum, it positions the reference lines or the points of the reference polyline at the position corresponds to the minimum of the historic data.
 | Maximum | When the value of the control data equals to the Maximum, it positions the reference lines or the points of the reference polyline at the position corresponds to the maximum of the historic data.


13.3.5 Curve Settings

Historic Trend Graph - Curve Settings

This section describes how to define the curves of the historic trend graph. The following is an example of the curve page.

The following table describes each property on the Curve page.

Property | Description
No | The number of the curve.
Data Item | Select a data item in the associated data logger for the curve.
Range | Check this option so the minimum and the maximum for the Y values of the associated curve will be specified at runtime. This option is available only when the Dynamic Range option on the General page is checked.
Minimum | The Y minimum of the data value of the associated curve. This property is available when the Dynamic Range option is not selected.
Maximum | The Y maximum of the data value of the associated curve. This property is available when the Dynamic Range option is not selected.
Style | Select a style for the trend curve.
Color | Select a color for the trend curve.
Show Value | Select one of the following methods for displaying the selected data point value.
Show Value | Description
(None) | Does not display the data point value.
Original | Displays the data point value without modification.
Scaled | Displays the corresponding Y axis value of the data point.
Fill | Check this option if you want the area below the trend curve to be filled. And the area is filled with the specified pattern and colors.
Pattern | Specifies the fill pattern for the selected curve.
FG Color | Specifies the color for the selected curve that will be used for painting the black part of the fill pattern.
BG Color
Specifies the color for the selected curve that will be used for painting the white part of the fill pattern.


13.3.6 Axis Settings

Historic Trend Graph - Axis Settings

This section describes how to define the Time axis (X axis) and the Y axis for the historic trend graph.

The following table describes each property in the Axis page.

Property |  | Description
Time Axis – Time Range | Dynamic Range | Check this option if you want the maximum time duration to be controlled by the dynamic range parameter block of the associated object at runtime. This option is available only when the Dynamic Range option on the General page is checked.
 | Unit | Select a unit for the dynamic range. The field is only available when Dynamic Range is checked.
 | Day/Hour/Minute/Second | If Dynamic Range is not checked on both the general page and the axis page, you need to specify the maximum time duration.
Time Axis | Number of Major Divisions | The number of major divisions for the X axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
 | Show Ticks | Check this option if you want the X axis to have ticks.
 | Show Time Grid | Select this option if you want the X axis to have vertical grids.
 | Grid Color | Select a color for the vertical grids.
 | Show Time | Check this option if you want to display the time. You need to select a format for displaying the time.
 | Time Format | The format of how the time is displayed. There are two formats available.
 |  | Format | Description
 |  | HH:MM | HH: 00-23 (hour); MM: 00-59 (minute)
 |  | HH:MM:SS | HH: 00-23 (hour); MM: 00-59 (minute); SS: 00-59 (second)
 | Time/Date Font | Font of the time/date.
 | Time/Date/Tick Color | Select a color for the X axis and its ticks.
Value Axis | Show Ticks | Check this option if you want the Y axis to have ticks.
 | Show Value Grid | Select this option if you want the Y axis to have horizontal grids.
 | Grid Color | Select a color for the horizontal grids.
 | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Position | Select a position to locate the scale. The scale can be displayed on the left, the right or both sides.
 | Mark/Tick Color | Select a color for the marks and ticks.
Value Axis - Scale Type | Number of Scale Type(s) | The number of scale types. You can define up to 5 sets of scale settings for the value axis of a historic trend graph.
 | No. | The number of the scale type.
 | View | Select a type so you can view the historic trend graph with that scale settings.
 | Major Divisions | The number of major divisions for the value axis. The minimum you can specify is one.
 | Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
 | Mark Min. | The minimum of the marks. You can specify a 32-bit signed integer. Available only when the dynamic range is checked.
 | Mark Max. | The maximum of the marks. You can specify a 32-bit signed integer. Available only when the dynamic range is checked.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.


13.2.6 Query Settings

Historic Trend Graph - Query Settings

This section describes how to query logged data. The following is an example of the Query page of the Historic Trend Graph dialog box.

The following table describes each property in the Query page of the Historic Trend Graph dialog box.

Property |  | Description
Support Dynamic Query |  | Check this option if you want the object displays the records filtered by dynamic conditions set at runtime. With dynamic query, the object performs the query operation only when the trigger bit changes from Off to On at runtime.
Support Static Query |  | Check this option if you want the object displays the records filtered by predefined conditions. With static query, any change of query conditions at runtime will not be applied.
Query Trigger Bit |  | Specifies the bit that will trigger the query operation at runtime. The HMI reads the Query Parameter Block and refreshes the object according to the current query conditions whenever the Query Trigger Bit changes from Off to On. Click [image] to enter the bit address. Click [image] to enter the bit tag. Available only when the Support Dynamic Query option is selected.
Query Parameter Block |  | Specifies the location that stores the query parameters. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the parameter block.
 |  | Word | Description
 |  | 0 | The query flags.
 |  |  | Bit | Operation
 |  |  | 0 | Reserved for future use. Must be 0.
 |  |  | 1 | Query the data records that occurred within the specified duration when the bit is on. The date range is specified in word 1-6 of the Query Parameter Block. The time range is specified in word 7-12 of the Query Parameter Block.
 |  |  | 2~14 | Reserved for future use. Must be 0.
 |  |  | 15 | Customized items handled by the query processing macro
 |  |  | Note: 1) When both query flags are on, the result will fulfill both query conditions. 2) If you want to display all data when the query processing is enabled, set the first parameter to zero, i.e. set all the query flags to 0, and then trigger the query processing.
 |  | 1,2,3 | The start date of the date range. Year (word 1): 0~99; Month (word 2): 1~12; Day (word 3): 1~31
 |  | 4,5,6 | The end date of the date range. Year (word 4): 0~99; Month (word 5): 1~12; Day (word 6): 1~31
 |  | 7,8,9 | The start time of the time range. Hour (word 7): 0~23; Minute (word 8): 0~59; Second (word 9): 0~59
 |  | 10,11,12 | The end time of the time range. Hour (word 10): 0~23; Minute (word 11): 0~59; Second (word 12): 0~59
 |  | Note: The word 1- 12 of the Query Parameter Block will be available only if the corresponding query item is selected.
Block Size (Words) |  | The size in word of query parameter block.
Query Items | Date Range | The object will display the records that occur in the specified date range.
 | Time Range | Check this option if you want the object to display the records that occur in the specified time range. Available only when the Date Range is checked.


13.4.1 Basic Operations

Historic Event Table - Basic Operations

Follow the steps below to create a historic event table:

  1. Click Historic Event Table icon [image] in the Object toolbar, or select Historic Event Table in the Object sub-menu.

  2. Move the cursor to the screen on which you want to create the object.

  3. Click at the desired position on the screen to place the new object.

You can number the predefined events of your application, use a word in the controller or the target panel to store the number of the current event at runtime, and have a data logger in the target panel to collect the value of that word. This is a way to record the events of your application. You can use the historic event table to display the event history. Each message defined for the historic event table is associated with an event by the message/event number.

In the above example, the historic data table and the historic event table display the same historic data in different ways.


13.4.2 Operation Options

Historic Event Table - Operation Options

The following operation option can be added to a historic event table. Select and set the option in the Historic Event Table dialog box.

Options | Description
Visibility Control | You can show and hide a historic event table by a specified bit or the current user level. Select and set this option in the Visibility page.


13.4.3 Settings

Historic Event Table - Settings

You can set up a historic event table with the Historic Event Table dialog box. There are three ways to open the dialog box of an object:

  1. Double-click the object.
  2. Right-click the object to bring up the Object pop-up menu. Select Properties in the pop-up menu.
  3. In the Object List window, double-click the row that displays the information of the object.

You can complete all the settings of a historic event table in the Historic Event Table dialog box. This dialog box contains the following three pages.

■ General
Described in Section 13.4.4.

■ Message
Described in Section 13.4.5.

■ Visibility
Described in Section 4.4.6.


13.4.4 General Settings

Historic Event Table - General Settings

This section describes how to define the general settings for a historic event table. The following is an example of the General page.

historic evet table

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the historic event tables is HMDnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Data Logger |  | Specifies the associated data logger. The object will take a specified word in each of the data records collected by the data logger as the event number, and display a corresponding message for that number.
Word |  | Specifies the number of the word in each of the data records that stores the event number.
Number of messages |  | Specifies the number of event messages.
Title | Title | Select this option if you want to have a title row.
 | Language | Select a language so you can view and edit the settings of the title row for that language.
 | Font | Select a font for the title text.
 | Color | Select a color for the text.
 | Date | Specifies the title of the Date column.
 | Time | Specifies the title of the Time column.
 | Message | Specifies the title of the Message column.
 | Background Color | Select a color for the background of the title row.
Grid | Horizontal | Check this option if you want the object to display horizontal grids.
 | Vertical | Check this option if you want the object to display vertical grids.
 | Color | Select a color for the grids.
Message
 | Default Color | Select a color as the default message color.
 | Set Default Color To All Messages | Click this button to set the colors of all the messages to the Default Color.
Date/Time Display | Date | Check this option if you want the object to display the Date column. You need to select a format for displaying the date.
 | Time | Check this option if you want the object to display the Time column. You need to select a format for displaying the time.
 | Color | Select a color for the date/time display.
Line Spacing |  | Specifies the extra space in pixels for two adjacent rows in the table.


13.4.5 Message Settings

Historic Event Table - Message Settings

This section describes how to define the messages of the historic event table. The following is an example of the Message page.

historic event table

The following table describes each property in the Message page.

Property |  | Description
Language |  | Select a language so you can view and edit the settings for that language.
Font |  | Select a font for displaying the messages.
No. 1-N | Color | Select a color for displaying the message of the associated event.
 | Message | Define the text message for the associated event.


13.5.1 Basic Operations

Single Record Line Chart - Basic Operations

Use the following steps to create a single record line chart:

  1. Click the Single Record Line Chart icon [image] in the Object toolbar, or select Single Record Line Chart in the Object sub-menu.

  2. Move the cursor to the screen on which you want to create the object.

  3. Click at the desired position on the screen to place the new object.

You can use a single record line chart to display the values of the data collected by a data logger as a line chart.

A single record line chart can display up to 255 data points. The above is an example of the single record line chart with 8 data points. A single record line chart can provide a cursor to display the value of the desired point.


13.5.2 Operation Options

Single Record Line Chart - Operation Options

The following operation option can be added to a single record line chart. Select and set the option in the Single Record Line Chart dialog box.

Options | Description
Visibility Control | You can show and hide a single record line chart by a specified bit or the current user level. Select and set this option in the Visibility page.


13.5.3 Settings

Single Record Line Chart - Settings

You can set up a single record line chart with the Single Record Line Chart dialog box. There are three ways to open the dialog box of an object:

  1. Double-click the object.
  2. Right-click the object to bring up the Object pop-up menu. Select Properties in the pop-up menu.
  3. In the Object List window, double-click the row that displays the information of the object.

The Single Record Line Chart dialog box contains the following four pages:

■ General
Described in Section 13.5.4.

■ Pen
Described in Section 13.5.5.

■ Axis
Described in Section 13.5.6.

■ Visibility
Described in Section 4.4.6.


13.5.4 General Settings

Single Record Line Chart - General Settings

single record line chart

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the Single Record Line Charts is HLCnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Chart BG Color |  | Select a color for the background of the chart.
Associated Data Logger |  | Specifies the associated data logger.
Data Source |  | Select a data logger or file as the source of the collected data.
File Buffer ID |  | Specify the File Buffer ID if the data source is a file. To specify a file buffer ID for a file, you can use the Load Logged Data From File operation of the function button. Please see Section 5.4 Performing Built-in Function Using Function Buttons for details.
Number of Data Points |  | Specifies the number of data points.
Data Type |  | The data type of the data logger. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer, 32-Bit Signed Integer, 16-Bit BCD, 32-Bit BCD, 32-Bit Floating Point, 16-Bit Signed BCD (LMB), 32-Bit Signed BCD (LMB), 16-Bit Signed BCD (LMD), and 32-Bit Signed BCD (LMD).
Show Data Point Markers |  | Check this option so the single record line chart will display all the data point markers.
Show Connected Lines |  | Check this option so the single record line chart will display the connected lines.
Time/Date Display | Date | Check this option if you want the object to display the Date column. You need to select a format for displaying the date.
 | Time | Check this option if you want the object to display the Time column. You need to select a format for displaying the time.
 | Color | Select a color for the text.
 | Font | Select a font for the title text.
 | Display Relative Time | Check this option if you want the object to display a relative measure of time.
Show Cursor | <Check Box> | Check this option so the single record line chart will display a cursor. You can touch and drag the cursor to the data point(s) that you want to select.
 | Cursor Color | Select a color for the cursor.
 | Value Display Font | Select a font for displaying the values of the selected data point(s).
 | Cursor Data Receiving Buffer | Specifies the variable to receive the data selected by the cursor to be read and displayed. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Reference Line | <Check Box> | Check this option so the single record line chart will display a reference line.
 | Reference Line Data Block | Specifies the variable as the data to be read from and displayed as a reference for comparison. Click [image] to enter the word address. Click [image] to enter the word tag.
 | Show/Hide Controlled By Bit | Check this option if you want to show or hide the reference line controlled by the specified bit.
 | Show/Hide Control Bit | Specifies the bit that controls the reference line to be shown or hidden. Click [image] to enter the bit address. Click [image] to enter the bit tag.


13.5.5 Pen Settings

Single Record Line Chart - Pen Settings

This section describes how to define the pens for the single record line chart. The following is an example of the Pen page.

single record line chart

The following table describes each property in the Pen page.

Property |  | Description
Historic Data Pen | Min. | The minimum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Max. | The maximum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Marker Size | Select a size for the data point mark. The selection is valid when the Show Mark option in the General page is selected.
 | Line Style | Select a style for the connecting lines. The selection is valid when the Show Line option in the General page is selected.
 | Color | Select a color for the connecting lines.
 | Show Value | Select one of the following methods for displaying the selected data point value.
 |  | Show Value | Description
 |  | (None) | Does not display the data point value.
 |  | Original | Displays the data point value without modification.
 |  | Scaled | Displays the corresponding Y axis value of the data point.
 |  | The selection is valid when the Show Cursor option in the General page is selected.
Reference Data Pen | Min. | The minimum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Max. | The maximum of the associated data set. This property is available when the Dynamic Range option is not selected.
 | Marker Size | Select a size for the data point mark. The selection is valid when the Show Mark option in the General page is selected.
 | Line Style | Select a style for the connecting lines. The selection is valid when the Show Line option in the General page is selected.
 | Color | Select a color for the connecting lines.
 | Show Value | Select one of the following methods for displaying the selected data point value.
 |  | Show Value | Description
 |  | (None) | Does not display the data point value.
 |  | Original | Displays the data point value without modification.
 |  | Scaled | Displays the corresponding Y axis value of the data point.
 |  | The selection is valid when the Show Cursor option in the General page is selected.
Line segment color selectable individually |  | Check this option to set the line segment color individually in the list window. The list window has three columns. The first column is the line segment number. The second column is the color setting for the data line. The third column is the color setting for the reference line.


13.5.6 Axis Settings

Single Record Line Chart - Axis Settings

This section describes how to define the X axis and the Y axis for single record line charts.
The following is an example of the Axis page.

single record line chart

The following table describes each property in the Axis page.

Property |  | Description
X Axis | Show Ticks | Check this option if you want the X axis to have ticks.
 | Show Y-axis Grid | Select this option if you want the X axis to have vertical grids.
 | Axis/Tick Color | Select a color for the X axis and its ticks.
 | Grid Color | Select a color for the vertical grids.
 | Number of Major Divisions | The number of major divisions for the X axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Mark (X Axis) | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Min. | The minimum of the marks. It is a 32-bit integer.
 | Max. | The maximum of the marks. It is a 32-bit integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.
Y Axis | Show Ticks | Check this option if you want the Y axis to have ticks.
 | Show X-Axis Grid | Select this option if you want the Y axis to have horizontal grids.
 | Axis/Tick Color | Select a color for the X axis and its ticks.
 | Grid Color | Select a color for the horizontal grids.
 | Number of Major Divisions | The number of major divisions for the Y axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Mark (Y Axis) | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Min. | The minimum of the marks. You can specify a 32-bit signed integer.
 | Max. | The maximum of the marks. You can specify a 32-bit signed integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.


13.6.1 Basic Operations

Historic Scatter Chart - Basic Operations

Use the following steps to create a single record line chart:

  1. Click the Historic Scatter Chart icon [image] in the Object toolbar, or select Historic Scatter Chart in the Object sub-menu.

  2. Move the cursor to the screen on which you want to create the object.

  3. Click at the desired position on the screen to place the new object.

A historic scatter chart displays a set of data collected by a data logger in the specified time range. It draws a data point for each datum and allows to connect all the data points in sequence by lines. Each datum is a coordinate that contains an X value and a Y value. The X value, a value of X coordinate, is the vertical position of a data point. The Y value, a value of Y coordinate, is the horizontal position of a data point. Both X value and Y value are determined by the value of the selected data item in the associated data logger.

A historic scatter chart can provide a cursor for you to select desired data points. The cursor of the historic scatter chart is a cross. The user can move and snap the cursor vertically and horizontally within a historic scatter chart to the nearest data point. The value of the selected data point can be displayed and output to an internal or external variable called Output Selected Point Data.


13.6.2 Operation Options

Historic Scatter Chart - Operation Options

The following operation option can be added to a historic scatter chart. Select and set the option in the Historic Scatter Chart dialog box.

Options | Description
Visibility Control | You can show and hide a historic scatter chart by a specified bit or the current user level. Select and set this option in the Visibility page.


13.5.3 Settings

Historic Scatter Chart - Settings

You can set up a historic scatter chart with the Historic Scatter Chart dialog box. There are three ways to open the dialog box of an object:

  1. Double-click the object.
  2. Right-click the object to bring up the Object pop-up menu. Select Properties in the pop-up menu.
  3. In the Object List window, double-click the row that displays the information of the object.

The Historic Scatter Chart dialog box contains the following four pages:

■ General
Described in Section 13.6.4.

■ Point Selection
Described in Section 13.6.5.

■ Axis
Described in Section 13.6.6.

■ Visibility
Described in Section 4.4.6.


13.5.4 General Settings

Historic Scatter Chart - General Settings

single record line chart

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the Historic Scatter Charts is HSCnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Chart BG Color |  | Select a color for the background of the chart.
Associated Data Logger |  | Specifies the associated data logger.
Data Source |  | Select a data logger or file as the source of the collected data.
File Buffer ID |  | Specify the File Buffer ID if the data source is a file. To specify a file buffer ID for a file, you can use the Load Logged Data From File operation of the function button. Please see Section 5.4 Performing Built-in Function Using Function Buttons for details.
X Coordinate | Data Item | Select the data item of the associated data logger for the X Coordinate.
 | Min | Specifies the minimum value of the data item for X Coordinate when Dynamic Range is not selected.
 | Max | Specifies the maximum value of the data item for X Coordinate when Dynamic Range is not selected.
Y Coordinate | Data Item | Select the data item of the associated data logger for the Y Coordinate.
 | Min | Specifies the minimum value of the data item for Y Coordinate when Dynamic Range is not selected.
 | Max | Specifies the maximum value of the data item for Y Coordinate when Dynamic Range is not selected.
Dynamic Range | <Check Box> | When this option is selected, the following four ranges can be specified at runtime: * The maximum time duration for the data collection * The minimum and the maximum for the X values and Y values * The minimum and maximum of the marks for the X axis and Y axis * The number of major and sub division for X axis and Y axis The data that specifies the above four ranges should be set and arranged correctly in a memory block called the dynamic range parameter block. You need to specify the dynamic range parameter block in the Dynamic Range Parameter Block field.
 | Dynamic Range Parameter Block | Specifies the variable that stores the dynamic range parameter block for the historic scatter chart when Dynamic Range is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the content of the parameter block.
 |  | Word | Parameter
 |  | 0,1 | The maximum time range in second
 |  | 2,3 | The minimum of X values
 |  | 4,5 | The maximum of X values
 |  | 6,7 | The minimum of Y values
 |  | 8,9 | The maximum of Y values
 |  | 10,11 | The number of major division for the X axis;32-bit integer number. The minimum value is 1.
 |  | 12,13 | The number of sub-division for the X axis;32-bit integer number. The minimum value is 1.
 |  | 14,15 | The minimum of the mark for the X axis; 32-bit integer number
 |  | 16,17 | The maximum of the mark for the X axis; 32-bit integer number
 |  | 18,19 | The number of major division for the Y axis;32-bit integer number. The minimum value is 1.
 |  | 20,21 | The number of sub-division for the Y axis;32-bit integer number. The minimum value is 1.
 |  | 22,23 | The minimum of the mark for the Y axis; 32-bit integer number
 |  | 24,25 | The maximum of the mark for the Y axis; 32-bit integer number
Points | Show Mark | Check this option so the historic scatter chart will display all the data point markers.
 | Mark Size | Select a size for the data point mark. The selection is valid when the Show Mark option is selected.
 | Show Lines | Check this option so the historic scatter chart will display the connected lines.
 | Line Style | Select a style for the connecting lines. The selection is valid when the Show Line option is selected.
 | Color | Select a color for the connecting lines.
 | Starting Point Color | Select a color for the starting point.
 | Ending Point Color | Select a color for the ending point.
 | Mark Ending Point | Check the option to mark the ending point of the curve with a small cross to make the ending point noticeable. It is only available when the Show Mark option is unchecked. In the following picture, the yellow cross marks the ending point.
Time Range | Day | Select an integer value from 1 through 31 representing the day of the month.
 | Hour | Select an integer value from 0 through 23 representing the hour of the day.
 | Minute | Select an integer value from 0 through 59 representing the minute.
 | Second | Select an integer value from 0 through 59 representing the second.


13.6.5 Point Selection Settings

Historic Scatter Chart - Pen Settings

This section describes how to define the point selection for the historic scatter chart. The following is an example of the Point Selecction page.

single record line chart

The following table describes each property in the Pen page.

Property |  |  | Description
Enable |  |  | Check this option so the historic scatter chart will display a cursor for point selection. You can touch and drag the cursor to the data point that you want to select.
Disable |  |  | Check this option to disable the point selection.
Enable By Bit |  |  | Select the option if you want to enable and disable the point selection capability by a bit. Specify a bit when the option is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Cursor Color |  | The color of the cursor that helps the operator to locate a point.
 | Search Radius (in pixels) |  | The historic scatter chart will find the closest point to the current cursor position within the search circle as the selected point. The center of the search circle is at the current cursor position and the radius is the Search Radius specified here.
 | Output Selected Point Data |  | Check the option to save the selected point data in the specified variable.
 | Write Address |  | The starting address of a word memory block that will receive the information of the selected point. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 | Operator Confirmation |  | Select the option if the operator confirmation is required before reporting the point selection.
 | Notification | <Check Box> | Select the option if notifying a bit is required before reporting the point selection.
 |  | Signal | Select one of the following signals for the notification:
 |  |  | Signal | Description
 |  |  | Level | Set the specified bit to the specified state.
 |  |  | Pulse | Send a positive pulse to the specified bit.
 |  | Bit | Available when the Notification field is checked. Specifies the bit for the operation done notification. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
 |  | State | Specify the state (On or Off) that is used for the notification.
Selected Point Data Display | Font |  | Select a font for displaying the values of the selected data point.
 | Date |  | Check this option to display the date at the top left of the historic scatter chart object. You need to select a format for displaying the date. There are 17 formats available: dd/mm/yy, mm/dd/yy, yy/mm/dd, dd.mm.yy, mm.dd.yy, yy.mm.dd, dd-mm-yy, mm-dd-yy, yy-mm-dd, MMMdd, dd/mm, mm/dd, dd.mm, mm.dd, dd-mm, mm-dd, yyyy/mm/dd Note: dd: 01-31 (day); mm: 01-12 (month); yy: 00-99 (year); yyyy: 0000-9999(year); MMM: JAN-DEC (month)
 | Time |  | Check this option if you want the object to display the Time at the top left corner. You need to select a format for displaying the time. There are 3 formats available: hh:mm, hh:mm:ss; mm:ss Note: hh: 00-23 (hour); mm: 00-50 (minute); ss: 00-59 (second);
 | Time/Date Color |  | Select a color to display the Time/Date.
 | Display Relative Time |  | Check this option if you want the object to display a relative measure of time.
 | Coordinate |  | Check this option if you want the object to display the coordinate of the selected point data.
 | Coordinate Color |  | Select a color to display the Coordinate.


13.5.6 Axis Settings

Historic Scatter Chart - Axis Settings

This section describes how to define the X axis and the Y axis for historic scatter charts.
The following is an example of the Axis page.

single record line chart

The following table describes each property in the Axis page.

Property |  | Description
X Axis | Show Ticks | Check this option if you want the X axis to have ticks.
 | Show Y-axis Grid | Select this option if you want the X axis to have vertical grids.
 | Axis/Tick Color | Select a color for the X axis and its ticks.
 | Grid Color | Select a color for the vertical grids.
 | Number of Major Divisions | The number of major divisions for the X axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Mark (X Axis) | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Min. | The minimum of the marks. It is a 32-bit integer.
 | Max. | The maximum of the marks. It is a 32-bit integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.
Y Axis | Show Ticks | Check this option if you want the Y axis to have ticks.
 | Show X-Axis Grid | Select this option if you want the Y axis to have horizontal grids.
 | Axis/Tick Color | Select a color for the X axis and its ticks.
 | Grid Color | Select a color for the horizontal grids.
 | Number of Major Divisions | The number of major divisions for the Y axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
Mark (Y Axis) | Show Marks | Check this option if you want the major ticks to have marks.
 | Font | The font of the marks.
 | Dynamic Range | Check this option if you want the minimum and maximum of the marks to be controlled by the dynamic range parameter block of the associated object at runtime.
 | Min. | The minimum of the marks. You can specify a 32-bit signed integer.
 | Max. | The maximum of the marks. You can specify a 32-bit signed integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.


13.7.1 Basic Operations

Historic Radar Chart - Basic Operations

Follow the steps below to create a historic radar chart:

  1. Click the Historic Radar Chart icon [image] in the Object toolbar, or select Historic Radar Chart in the Object sub-menu.

  2. Move the cursor to the screen on which you want to create the object.

  3. Click the desired position on the screen to place the new object.

A historic radar chart can show the trend of the data collected by a data logger or a file in the format of a radar chart. The following is an example of the historic radar chart with four curves working at runtime.

A historic radar chart is combined with time slice, value scale, cursor...

A historic radar chart can have the following features:

1) Up to 8 trend curves can be shown.

2) A cursor line can be used to select a desired time. The date, time, and data values of the selected time can be shown on the chart. Also, the data of the selected time can be written to a receiving buffer.

3) Trend curves can be zoomed by varying time resolution.

4) Trend curves can be hidden dynamically.


13.6.2 Operation Options

Historic Radar Chart - Operation Options

The following operation option can be added to a historic trend graph. Select and set the option in the Historic Trend Graph dialog box.

Options | Description
Visibility Control | You can show and hide a historic trend graph by a specified bit or the current user level. Select and set this option in the Visibility page.


13.7.3 Settings

Historic Radar Chart - Settings

You can set up a historic radar chart with the Historic Radar Chart dialog box. There are three ways to open the dialog box of an object:
1) Double-click the object.
2) Right-click the object to bring up the Object pop-up menu. Select Properties in the pop-up menu.
3) In the Object List window, double-click the row that shows the information of the object.

The Historic Radar Chart dialog box contains the following four pages:

■ General
Described in Section 13.7.4.

■ Curve
Described in Section 13.7.5.

■ Scale
Described in Section 13.7.6.

■ Visibility
Described in Section 4.4.6.


13.7.4 General Settings

Historic Radar Chart - General Settings

This section describes how to define the general settings for a historic radar chart. The following is an example of the General page of the Historic Radar Chart property sheet.

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created and is unchangeable. The identifier is unique within the screen where the object is located. The format of the IDs for the historic radar chart is HRCnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color.
Associated Data Logger |  | Specifies the associated data logger.
Data Source |  | Select data logger or file as the source of the collected data.
File Buffer ID |  | Specify the File Buffer ID if the data source is a file. To specify a file buffer ID for a file, you can use Load Logged Data From File operation of the function button. Please see Section 5.4 Performing Built-in Function Using Function Buttons for details.
Number of Curves |  | Specifies the number of curves. Max 8 curves are supported.
Cursor | <Check box> | Check this option so the historic radar chart will display a cursor. You can touch and drag the cursor to the data point(s) that you want to select.
 | Cursor Color | Select a color for the cursor.
 | Value Display Font | Select a font for displaying the values of the selected data point(s).
 | Date | Check this option to display the date at the top left of the historic radar chart object. You need to select a format for displaying the date. There are 17 formats available: dd/mm/yy, mm/dd/yy, yy/mm/dd, dd.mm.yy, mm.dd.yy, yy.mm.dd, dd-mm-yy, mm-dd-yy, yy-mm-dd, MMMdd, dd/mm, mm/dd, dd.mm, mm.dd, dd-mm, mm-dd, yyyy/mm/dd Note: dd: 01-31 (day); mm: 01-12 (month); yy: 00-99 (year); yyyy: 0000-9999(year); MMM: JAN-DEC (month)
 | Time | Check this option if you want the object to display the Time at the top left corner. You need to select a format for displaying the time. There are 3 formats available: hh:mm, hh:mm:ss; mm:ss Note: hh: 00-23 (hour); mm: 00-50 (minute); ss: 00-59 (second);
 | Time/Date Color | Select a color to display the Time/Date.
 | Cursor Data Receiving Buffer | Specifies the variable to receive the data selected by the cursor to be read and displayed. The buffer size is the record size of the associated data logger. Click [image] to enter an address for this field. Click [image] to select a tag for this field.
Display Relative Time |  | Check this option if you want the object to display a relative measure of time.
Support Zoom |  | Check this option so the zoom option will be supported at runtime. You may use the function button to zoom in or zoom out of the historic radar chart at the runtime.
Curves Show/Hide Controllable |  | When this option is selected, you can show or hide a curve by setting or resetting the corresponding bit of the Curves Show/Hide Control Word.
Curves Show/Hide Control Word. |  | Specifies the variable that shows or hides the curve when Curves Show/Hide Controllable is selected. Click [image] to enter an address for this field. Click [image] to select a tag for this field. To show #n curve, please set bit n-1 of the control word to 1.


13.7.5 Curve Settings

Historic Radar Chart - Curve Settings

This section describes how to define the curves of the historic radar chart. The following is an example of the Curve page.

The following table describes each property on the Curve page.

Property | Description
Data Item | Select a data item in the associated data logger for the curve.
Minimum | The minimum of the data value of the associated curve.
Maximum | The maximum of the data value of the associated curve.
Style | Select a style for the trend curve.
Color | Select a color for the trend curve.
Show Value | Select one of the following methods for displaying the selected data point value.
 | Show Value | Description
 | (None) | Does not display the data point value.
 | Original | Displays the data point value without modification.
 | Scaled (X) | Displays the corresponding X axis value of the data point.
 | Scaled (Y) | Displays the corresponding Y axis value of the data point.


13.7.6 Scale Settings

Historic Radar Chart - Scale Settings

This section describes how to define the Time Slice and the Value Scale (X axis and Y axis) for the historic radar chart.

The following table describes each property in the Scale page.

Property |  | Description
Time Slice – Time Range
 | Hour/Minute/Second | Specifies the maximum time duration.
Time Slice | Number of Major Divisions | The number of major divisions for the X axis. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major ticks. The minimum you can specify is one.
 | Spoke Color | Select a color for the vertical grids.
 | Show Time | Check this option if you want to display the time. You need to select a format for displaying the time.
 | Time Format | The format of how the time is displayed. There are two formats available.
 |  | Format | Description
 |  | HH:MM | HH: 00-23 (hour); MM: 00-59 (minute)
 |  | HH:MM:SS | HH: 00-23 (hour); MM: 00-59 (minute); SS: 00-59 (second)
 | Show Date | Check this option if you want to display the date. You need to select a format for displaying the date.
 | Date Format | The format of how the date is displayed. There are 17 formats available.
 | Time/Date Font | Font of the time/date.
 | Time/Date Color | Select a color for the time/date.
Value Scale | Number of Major Divisions | The number of major divisions for the value scale. The minimum you can specify is one.
 | Number of Sub-divisions | The number of divisions between two adjacent major divisions. The minimum you can specify is one.
 | Major Divider Color | Select a color for the major divider.
 | Sub-Divider Color | Select a color for the sub-divider.
 | Show X Marks | Check this option if you want the X Axis to have marks.
 | Show Y Marks | Check this option if you want the Y Axis to have marks.
 | Mark Font | The font of the marks.
Value Scale - Axis | Specifies the X/Y axis for the value scale.
 | Axis | The name of the axis for the value scale.
 | Mark Min. | The minimum of the marks. You can specify a 32-bit signed integer.
 | Mark Max. | The maximum of the marks. You can specify a 32-bit signed integer.
 | Total Digits | The total digits to be displayed for the marks.
 | Fractional Digits | The number of fractional digits for the marks. For example, when the Maximum is 5000, the Total Digits is 4, and the Fractional Digits is 2, the mark for the Maximum will be 50.00.
 | Mark Color | Select a color for the mark.


14.1 Using Operation Logging

Using Operation Logging

This chapter describes how to set up operation logging and configure the operation log display to show the operation loggers.

To use operation logging in your application, please do the following:

  1. Setting up Operation Logging

Described in Section 14.2.

  2. Adding custom operation messages in the Advanced page of the related object

Described in Section 4.4.5.

Enter the operation message of the first language.

Click the button to bring up the Operation Message dialog box to edit the message for all the languages. Please see details in Section 14.2.1.

  3. Creating and configuring Operation Log Displays

Described in Section 14.3.1.

The software also lets users clear the operation logging buffer with the function button. To know how to define a function button to clear the operation history, please see Section 5.4.1 Basic Operations of function buttons.


14.2 Setting up Operation Logging

Setting up Operation Logging

You can set up operation logging with the Operation Logging dialog box. In this dialog, you can determine the required memory for the operation logging buffer, and specify how to save the operation logs to a text file. To open the dialog box, double click the Operation Logging node in the Project Manager tool window, or use the Operation Logging… command on the Panel menu. The following is an example of the Operation logging dialog box.

The table below describes each property in the Operation Logging Properties dialog.

Property |  | Description
Enable operation logging | <Check Box> | Check this option to enable operation logging.
 | Buffer Size | The size of the operation logging buffer. The unit is K words. The buffer size can be specified between 1 and 512 K words.
 | Approximate number of operations can be logged | The maximum number of operation loggers that the operation logging buffer can hold. The formula to calculate the approximate number is: Number = Buffer Size * 1024 * 2 / 64
Record when the AP starts | <Check Box> | Check this option to record a specified message when the application starts running.
 | Message | Enter the operation message of the first language for AP starting.
 | operation message | Click the button to bring up the Operation Message dialog box to edit the message for all the languages. Please see details in Section 14.2.1.
Record when the AP stops | <Check Box> | Check this option to record a specified message when the application stops running.
 | Message | Enter the operation message of the first language for AP stopping.
 | operation message | Click the button to bring up the Operation Message dialog box to edit the message for all the languages. Please see details in Section 14.2.1.
Record when a user logs in | <Check Box> | Check this option to record a specified message when a user logs in. The following is an example of the recorded logins. The numbers in the parentheses show the user levels. The message "Login (0)" indicates a logoff.
 | Message | Enter the operation message of the first language for user login.
 | operation message | Click the button to bring up the Operation Message dialog box to edit the message for all the languages. Please see details in Section 14.2.1.
Save Operation Log to File | <Check Box> | Check this option so new operation loggers will be written to a specified file periodically. Each time when a save is performed, the panel writes only the operation loggers that have not been saved to a file before.
 | File Type | The type of file to save the operation loggers.
 |  | File Type |  | Description
 |  | .CSV |  | The operation logging is saved in CSV format. You can use any text editor or Microsoft Excel to view the file.
 | Operation Type | Specifies how to open a file to save the operations.
 |  | Operation Type |  | Description
 |  | Create |  | Creates a new file with the specified filename to save the operation loggers.
 |  | Append or Create |  | If the specified file exists, appends the operations to that file; otherwise creates a new file with the specified filename to save the operation loggers.
 | Time to Save | Specifies the period to save the operation loggers. This item is available when the option Save Data to File is checked. There are nine periods available: Every hour on the hour ; Every 8 hours (00:00, 08:00, 16:00) ; Every 12 hours (00:00, 12:00) Every day at 00:00; Every day at 08:00; Every day at 12:00; Every Sunday at 00:00; Every Monday at 00:00; Every month's first day at 00:00.
 | Save to the default folder | Check the option to save the file in the default folder. Please see Section 3.1.4 for details about specifying default folder.
 | Variable filename | Check the option to specify the variable representing the filename to save the operation loggers at runtime.
 | File Name | The filename or the prefix of the filename of the file to save the operation loggers as. The filename must be a null terminated ASCII character string and follows the rule of Windows filenames. The operation logger are saved in text format and the file extension name must be same as the file type. You can use any text editor or Microsoft Excel to view the operation loggers directly. This item is available when the option Save operation log to file is checked.
 | Filename Suffix | Available when the Operation Type is Create. This property guarantees that the created file has a unique name and no existing file will be overwritten. There are four kinds of filename suffixes available as shown in the following table.
 |  | Filename Suffix | Description |  | Example
 |  | _YYMMDD_hhmmss | YY: year (00-99) MM: month (01-12) DD: day (01-31) hh: hour (00-23) mm: minute (00-59) ss: second (00-59) |  | Log_090423_102358 (Assume that the specified Filename is "Log", the current date is April 23, 2009, and the current time is 10:23:58.)
 |  | _YYMMDD_hhmm |  |  | Log_090423_1023
 |  | _YYMMDD_hh |  |  | Log_090423_10
 |  | _YYMMDD |  |  | Log_090423
 | Do not show file saving message | Check this option to hide the file saving message at runtime.
Record Operation Log To Database | <Check Box> | Check this option so the most current operation logger will be written to a specified database periodically. Each time the operation is performed, the panel writes only the record that has not already been saved to the database. This item is available only when the target panel is the HMI Runtime..
 | Table Name | Specifies a name as the table name in the database.
 | Column Name | Click the edit button to bring up the following dialog box to specify the column names. Note that the name must comply with the rules for database identifiers.
 | Time to Save | Specifies the period to save the operation logger. This item is available when the option Save Operation Log to Database is checked. There are nine periods available: Every hour on the hour ; Every 8 hours (00:00, 08:00, 16:00) ; Every 12 hours (00:00, 12:00) Every day at 00:00; Every day at 08:00; Every day at 12:00; Every Sunday at 00:00; Every Monday at 00:00; Every month's first day at 00:00, Every minute (For test only), Every 5 minutes, Every 10 minutes, Every 15 minutes, Every 30 minutes.


14.2.1 Operation Message

Operation Message

This section describes how to define the operation messages for all languages. The following is an example of Operation Message dialog box.

The following table describes each property in the General page.

Property | Description
Use the text of the first language for all other languages | Check this item so the object always shows the text of the first language as the operation message regardless of what the current language is. You need to enter the text of the first language in the following edit box.
Use Text From Text Database | Check this item that you can select a text from the text database. The following is an example that shows you how to select and edit text from text database.


14.3.1 Basic Operations

Operation Log Display - Basic Operations

You can display a list of operation logs by using an operation log display.

operation log display demo

The above is an example of the operation log display. The first row is the title row. It displays the title of each column. The other rows display one operation per row. You can create scroll button groups or scroll bars to scroll the contents. An operation log display can have three columns. The following table describes the content of each column for an operation log display.

Column | Description
Date | The date when the record is created. This column is optional.
Time | The time when the record is created. This column is optional.
Message | The message of the associated operation. This column is optional.

The text color and font of a row are determined by the settings in the General Page.


14.3.2 Operation Options

Operation Log Display - Operation Options

The following operation option can be added to an operation log display. Select and set the option in the Operation Log Display dialog box.

Options | Description
Visibility Control | You can show and hide an operation log display with a specified bit or the current user level. Select and set this option in the Visibility page.


14.3.3 Settings

Operation Log Display - Settings

You can complete all the settings of an operation log display in the Operation Log Display dialog box. This dialog box contains the following two pages.

■ General
Described in Section 14.3.4.

■ Visibility
Described in Section 4.4.6.


14.3.4 General Settings

Operation Log Display - General Settings

This section describes how to define the general settings for an operation log display. The following is an example of the General page of the Operation Log Display dialog box.

The following table describes each property in the General page.

Property |  |  | Description
ID |  |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located and is unchangeable. The format of the IDs for the operation log display is HODnnnn.
Note |  |  | You can type a note for the object.
Shape settings |  |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Language |  |  | Select a language so you can view and edit the language dependent settings in the Title group and Message group for that language. The language dependent properties in the Title group include Font and Message; in the Message group include Font.
Title | <Check Box> |  | Select this option if you want the operation log display to have a title row to show the title for each column of the displayed list.
 | Font |  | Select a font for the title text.
 | Color |  | Select a color for the text.
 | Date |  | Specifies the title for the Date column.
 | Time |  | Specifies the title for the Time column.
 | Message |  | Specifies the title for the Message column.
 | Background Color |  | Select a background color for the title row.
Grid | Horizontal |  | Select this option if you want the operation log display to have horizontal grids.
 | Vertical |  | Select this option if you want the operation log display to have vertical grids.
 | Color |  | Select a color for the grids.
Message | Font |  | Select a font for the message.
 | Color |  | Select a color for displaying the predefined message.
Date/Time Display | Date | <Check Box> | Check this option if you want the operation log display to have the Date column.
 |  | <Drop-down List> | Select a format for displaying the date. There are 10 formats: DD/MM/YY; MM/DD/YY; YY/MM/DD; DD.MM.YY; MM.DD.YY; YY.MM.DD; DD-MM-YY; MM-DD-YY; YY-MM-DD; YYYY/MM/DD Note: YY: year (00-99) YYYY: year (0000-9999) MM: month (01-12) DD: day (01-31)
 | Time | <Check Box> | Check this option if you want the operation log display to have the Time column.
 |  | <Drop-down List> | Select a format for displaying the time. There are 2 formats: HH:MM; HH:MM:SS Note: HH: hour (00-23) MM: minute (00-59) SS: second (00-59)
 | Color |  | Select a color for Date/Time.
Line Spacing |  |  | Specifies the extra space in pixels for two adjacent rows of the operation log display.
Item Spacing |  |  | Specifies the extra space for every column of the operation log display.


15 Using Macros

Using Macros

This chapter explains how you can write macros (Native Script and VB Script) to perform operations. A macro contains a sequence of macro commands and acts as a simple computer program when it is run. With macros, some tasks that are hard to be performed by the objects can be easily achieved, such as scheduling, data exchanges, conditional operations, and sequential operations.

Note: Do not use macros to control systems that can cause life-threatening and serious injury.

Note: The real-time OS in the HMI needs to manage multiple tasks at the same time when the application is running. In order to not affect the whole performance, please keep the macro as short as possible.

Note: Macros execute individually and are unaware of other macros. When sharing common variables between macros, your application may have possible conflicts. Consider an application where the cycle macro updates the value of an address which is used by the event macro. If the event macro alters the address value before the cycle macro uses that address, the result of the cycle macro will be incorrect.


15.1 Types of Macros

Types of Macros

■ Global Macro
A global macro is a macro that can be used by all panel applications in the same project. With global macros, the panel applications in the same project can share common functions without having to keep and maintain the same set of macros locally.
You can set up a password in the Project Information & Protection dialog box to protect global macros. If global macros are under protection, you need to enter a password to remove the protection before using them in your application.
Note that only internal variables can be used in global macros.

■ Local Macro
A local macro is a macro that can only be used by the panel application which the macro is located in.

■ Sub-macro
A sub-macro is a macro that can be run by other macros using the CALL command. When a CALL command is encountered while running a macro, that macro stops running, and the sub-macro starts to run. The last command of a sub-macro must be a RET command which terminates the sub-macro and returns control to the calling macro. You can place RET commands at any location you want. The HMI will resume the execution of the calling macro starting with the command following the CALL command once the called sub-macro terminates.

By implementing common functions in sub-macros for other macros to use, your macros can be modularized, are sharable, easy to read, and easy to maintain.

■ Startup Macro, Main Macro, Event Macro and Time Macro for the application

■ Open Macro, Cycle Macro and Close Macro for the screen

■ On Macro, Off Macro and Object Macro for the object

■ Query Processing Macro for the alarm displays and the historic data tables

■ Data Logging Macro for the data logger

■ Start Macro and End Macro for the schedule

Select the macro that works best for the occasion you want the macro to run, and for the purpose you want the macro to do.

Run the Macro: | Use:
When the application starts | Startup Macro This macro is run only once when the application starts. The HMI will not display the start-up screen until the macro terminates. You can use Startup Macro to initialize global data and settings for your application. Specify Startup Macro in Panel General Setup dialog box.
While the application is running | Main Macro This macro is run all the time while the application is running. The HMI runs Main Macro cyclically, i.e. it will delay preset time to run Main Macro starting from the first command again each time after it completes the processing of the last command of the macro or when it encounters an END command in the middle of the macro. Specify Main Macro in Panel General Setup dialog box.
When a specific trigger bit changes from 0 to 1 | Event Macro An Event Macro is run whenever the associated trigger bit changes from 0 (off) to 1 (on). An application can have up to four Event Macros which are numbered from 1 to 4. Specify Event Macros in the Panel General Setup dialog box.
Periodically with a preset time interval | Time Macro A Time Macro is run periodically with a preset time interval. An application can have up to four Time Macros which are numbered from 1 to 4. Each Time Macro has a different set of time interval options you can choose to specify how often you want the macro to run. Specify Time Macros in the Panel General Setup dialog box.
When a specific screen is being opened | Open Macro An Open Macro is run once when the associated screen is being opened. The screen will not be displayed until the Open Macro terminates. Specify the Open Macro of a screen in the Screen Properties dialog box.
While a specific screen is open | Cycle Macro A Cycle Macro is run all the time while the associated screen is open. The Cycle Macros runs cyclically, i.e. the Cycle Macro will run starting from the first command again every time after it completes the processing of the last command of the macro, or when an END command is encountered in the middle of the macro. The Cycle Macro terminates immediately when the screen is closed. Specify the Cycle Macro of a screen in the Screen Properties dialog box.
When a specific screen is being closed | Close Macro A Close Macro is run once when the associated screen is being closed. The screen will not be erased until the Close Macro terminates. Specify the Close Macro of a screen in the Screen Properties dialog box.
When a specific button is pressed or released to set a bit to on | On Macro An On Macro is run once when the associated button is pressed or released to set a bit to 1 (on). The setting of the bit will not be performed until the On Macro terminates. Therefore, it is important to keep the On Macro as short as possible in order to not delay the setting of the bit. Both the Bit Buttons and the Toggle Switches can have an On Macro. Specify the On Macro of a button in that button’s configuration dialog box.
When a specific button is pressed or released to set a bit to off | Off Macro An Off Macro is run once when the associated button is pressed or released to set a bit to 0 (off). The setting of the bit will not be performed until the Off Macro terminates. So it is important to keep the Off Macro as short as possible in order to not delay the setting of the bit. Both Bit Buttons and Toggle Switches can have an Off Macro. Specify the Off Macro of a button in that button’s configuration dialog box.
When a specific object is activated to perform a specific operation | Object Macro An Object Macro is run once when the associated object is activated to perform a specific operation. Whether the macro is run before or after the operation is performed depends on the type of the operation. The objects that can have an Object Macro include Screen Buttons, Function Buttons, and Keypad Buttons. Specify the Object Macro of an object in that object’s configuration dialog box.
When a specific object needs to display the records filtered by query conditions | Query Processing Macro A Query Processing Macro is run once when the object displays or the associated trigger bit changes from 0(Off) to 1(On). Both the Alarm Display and the Historic Data Tables can have a Query Processing Macro. Specify the Macro in that object’s configuration dialog box.
When a data logger has to log processed data instead of original data | Data Logging Macro The data logging macro is activated whenever a record of data is sampled. It is used to process the sampled data and save the converted data to the logging buffer by the SAVE2LB command. Specify the Data Logging Macro in the Data Logger properties dialog box.
When a schedule is activated to perform a specific operation at the start time | Start Macro A Start Macro is run once at the designated start time upon the schedule. Specify Start Macros in the Schedule properties dialog box when the Run Macro action is selected.
When a schedule is activated to perform a specific operation at the end time | End Macro A End Macro is run once at the designated end time upon the schedule. Specify End Macros in the Schedule properties dialog box when the Run Macro action is selected.


15.2.1 Creating Macros

Creating Macros

■ Creating a new and blank native script

1) To create a global native script, use the [Add …] command on the Project -> Global Macros -> Native Scripts menu, or right-click the Global -> Global Macros -> Native Scripts node ( [image] ) in the Project Manager tool window to bring out the pop-up menu and then use the [ Add Script ] command on the pop-up menu.

To create a local native script, use the [Add…] command on the Panel -> Macro -> Native Scripts menu, or right-click the panel application > Macros -> Native Scripts node ( [image] ) in the Project Manager tool window to bring out the pop-up menu and then use the [ Add Script… ] command on the pop-up menu.

2) In the New Macro dialog box, type the name you want, and hit the ENTER key or click the OK button to validate your choice.

■ Importing an existing native script as a copy native script

1) To import a native script as a global native script, right-click the Global -> Global Macros->Native Scripts node ( [image] ) in the Project Manager tool window to bring out the pop-up menu and then use the Import Script command on the pop-up menu.

To import a native script as a local native script, right-click the panel application Macros->Native Scripts node ( [image] ) in the Project Manager tool window to bring out the pop-up menu and then use the Import Script command on the pop-up menu

2) Click the *.mcr or *.txt file you want to create a new native script from. If you want to open a native script that was saved in a different folder, locate and open the folder first.

3) Click Open.


15.2.2 Opening and Closing Macros

Opening and Closing Macros

■ Opening an existing native script

To open a global native script, select the native script you want to open in Project > Global Macros > Native Scripts Edit menu, or double click the native script in Global > Global Macros > Native Scripts node ( [image] ) in the Project Manager tool window, or in the Macro settings of the object configuration dialog, select the native script that is located after "--------------Global NS-----------" item in the drop-down list.

To open a local native script, select the native script you want to open on Panel > Macro > Native Scripts Edit menu, or double click the native script in the panel application > Macros > Native Scripts node ( [image] ) in the Project Manager tool window, or in the Macro settings of the object configuration dialog, select the native script that is located after "--------------Local NS-----------" item in the drop-down list.

■ Opening a *.txt or *.mcr file within the native script editor window:

You may do the drag-and-drop operation:
1) Open the native script editor window by clicking any of the existing native scripts.
2) Drag a selection of *.mcr file or *.txt file into the native script editor window and drop it.
Note: Any native scripts in the native script editor window will be replaced by native scripts from the source file.

■ Closing Native Script Editor Windows:

To close a single window, select the window and click the close button.
To close all windows, choose Windows... on the Window menu, select all the native script editor windows you want to close in the window dialog and then click Close Window(s) button.
Note: The Native Script Command Properties Window will be closed automatically when the native script editor window is closed. Even if the native script editor window is closed, all the changes will be saved, unless the software exits without saving any changes to the file.

■ Closing Native Script Command Properties Window:

To close the native script command properties window, click the close button on the Native Script Command Properties window or check/uncheck the Native Script Command Properties command on the View menu


15.2.3 Naming and Finding a Macro

Naming and Finding a Macro

When adding a new macro for global use or for the panel application, you need to specify the macro name with the following dialog.

When importing a file as the macro, the file name will be the macro name as the default.
In each panel application, the local macro name has to be unique, but a local macro name can be the same as a global macro name.

■ Renaming a macro from Project Manager:

  1. Locate the macro you would like to rename

  2. Right-click on the macro to display the macro item's pop-up menu; and then click Rename, the second menu item.

  3. Once the macro name is selected, simply type the new name over the selected text, and then press the ENTER key.

■ Finding a macro:

To find a macro used in the whole application, use the Find Macro… command on the Edit > Find and Replace menu. The following is an example of Find Macro dialog:

The search result will be listed in Find Result window. The following is an example of find result. About the Find Result window, please see 17.1.2 Find Result Window for details.


15.2.4 Deleting a macro

Deleting a macro

■ Deleting a macro from Project Manager tool widow:

  1. Locate the macro you would like to delete

  2. Right-click on the macro to display the macro item's "pop-up menu"; and then click Delete, the third menu item.

■ Deleting a native script by menu

To delete a global macro, choose Project menu, click Global Macros > Native Scripts sub-menu, and select the native script you want to delete on the Delete sub-menu.

To delete a local macro, choose Panel menu, click Macro > Native Scripts sub-menu, and select the native script you want to delete on the Delete sub-menu.

Note: You can only select one macro to delete at a time. If the macro you want to delete is used by an application or object, you will be asked to confirm the delete operation.


15.2.5 Saving and Exporting Macros

Saving and Exporting Macros

If you have a macro you want to reuse in another application panel, you can export the macro as a .txt file or a .mcr file. You may do the following:

  1. Locate the macro you would like to export

  2. Right-click on the macro to display the macro item's "pop-up menu"; and then click Export Macro..., the fourth menu item.

  3. If you want to save a macro in a different folder, locate and open the folder first, then click Save.


15.2.6 Macro Settings in the Dialog

Macro Settings in the Dialog

You can open and edit a specified macro or create a new macro in the configuration dialog that contains the macro page. The following is an example of the Macro page in the Bit Button configuration dialog.

bit button configuration dialog

The following table describes each property in the General page.

Property | Description
Macro Name | Select an existing local macro or global macro from the drop-down list. The following is a sample in the dropdown list
New… | Click the button to bring out the New Macro dialog box to create a new and blank local macro.
Macro Editor Window | Write and edit the macros here. For details, see Section 15.3.1. If the editor window is too small, you may drag out the window and resize it. To drag and move the window, left-click anywhere on the window frame and hold down the button, then drag the mouse to move the window outside to another area. It will “float” over the rest of the dialog, allowing you to position it wherever you want it to be. Release the mouse button to let go of the window. Click on the resized tabs located at the bottom right corner of the window to resize the window. Press the close button to dock the window back into the dialog. The following is a sample of the floating macro editor window.
Properties | A floating dialog allows you specify the macro command. For details, see Section 15.3.2. The macro command properties dialog can be moved anywhere and resized to any size you want. However, it can’t be closed until the dialog is closed.


15.3 Writing Native Scripts

Writing Native Scripts

In the software, all the native scripts can be written in the native script development environment that is composed of two elements: the Native Script Editor Window and the Native Script Command Properties Tool Window.
You will see the following sample of the Native Script Development Environment when opening a native script from Project Manager.


15.3.1 Native Script Editor Window

Native Script Editor Window

The native script editor is a text-based editor with syntax coloring and line numbering. Line numbering in the left margin of the page helps you refer to the specific position of the native script. Syntax coloring gives you visual cues about the structure by using different colors for various elements, such as keywords in black, comments in green, addresses in blue and constants in red.

■ Editing Native Script
With the native script editor, you can cut, copy, and paste selected text using menu commands, key combinations or drag-and-drop operations. You can also undo and redo selected editing actions.
You can right-click to display a pop-up menu of editing commands. The editing commands available depend on what the pointer is pointing to.

The native script editor allows the following editing actions:
* Cutting, copying, pasting, and deleting selection of lines, multiple lines or text
* Undoing and redoing editing actions
* Using drag-and-drop editing to move or copy a selection of text within one native script editor window, or between native script editor windows.

The following table shows the supported editing commands.

Menu Command | Key Combination | Description
Cut | CTRL+X | Removes selected text from the active native script editor window.
Copy | CTRL+C | Duplicates selected text in the active native script editor window.
Paste | CTRL+V | Pastes cut or copied text into an active native script editor window.
 | DELETE | Deletes text without copying it to the Clipboard.
Undo | CTRL+Z | Reverses the last editing action.
Redo | CTRL+Y | Reapplies the prior editing that has been undone.
 | CTRL+A | Selects all texts in the active native script editor

Note that all editing commands require a selection in order to work. Some commands can make a selection based on the current cursor location.

■ Using Comments in Native Scripts
Comments are notes to be ignored when running the native script commands. Native script supports both single-line comments and block comments. Single-line comments begin with two forward slashes (//) and run to the end of the line.
The following is an example of a macro command followed by a single-line comment.
IF $U0.0 (B) // Key Down

Block comments begin with an opening delimiter (/*) and run to a closing delimiter (*/). Comments do not nest.
The following is an example of a block comment.
/* $N1001=WH2021
$N1010=$N1001 */

■ Specifying Constants in Native Scripts
To specify a hexadecimal number, use either the h or H suffix. For example, 12abH and 3ABh are valid hexadecimal numbers. You can also use either the “0x” or “0X” prefix. For example, 0x1278abc and 0XFFFF0000 are valid hexadecimal numbers.

To specify a binary number, use either the b or B suffix. For example, 001100111b and 11110000B are valid binary numbers.

For decimal numbers, in most cases, you just type the numbers as they are to specify the constants. However, ambiguity exists when a constant is the same as a valid external variable. For example, if a panel application has a link to a Modicon ModBus slave device, it is impossible to tell whether the number 40001 is a constant or a word address of the controller. To avoid this kind of ambiguity, use the following methods to explicitly declare that a number is a constant:

1) Use K, k, D, or d suffix for an integer number. For example, -123K and -123d are valid specifications of constant -123.
2) Use either the f or F suffix for a decimal number with decimal point. For example, -12.3F and -12.3f are valid specifications of constant -12.3.


15.3.2 Native Script Command Properties Tool Window

Native Script Command Properties Tool Window

The Native Script Command Properties Tool Window help you add and modify a native script command quickly and easily.

If you open a native script from Project Manager or Menu Item, the Native Script Properties Tool Window will be opened as a docking window. You can easily configure the dockable tool window to automatically be displayed or hide, or tab link with other tool windows, or dock against the edges, or float over. When the Native Script Editor is opened, you can also choose to open or close the Native Script Command Properties Tool Window by clicking the [Native Script Command Properties] menu item under [View] menu.

If you open the native script from an object's configuration dialog box, the Native Script Properties Tool Window will float beside the Native Script Editor and can be moved anywhere, but it can't be closed.

The following table describes each property in the native script command properties tool window.

Property |  | Description
Command |  | Click the dropdown list box to bring up the macro command selection dialog. In the dialog, navigate the keyword of macro commands through tabs and sections by moving the mouse and then clicking the selection. The format of the selected macro command will be shown in the dropdown list after the dialog is closed. To cancel the operation, click anywhere outside the macro command selection dialog.
Data Type |  | Selects the data type of the macro command from the dropdown list. Different macro commands support different data types. The supported data types for each macro command are some of the following: (S) 16-bit Signed, (U) 16-bit Unsigned, (SD) 32-bit Signed, (UD) 32-bit Unsigned, (F) 32-bit Floating Point, (B) Bit.
Parameter | <Edit Box> | Specifies the bit variable when the Data Type is (B). Specifies the word variable when the Data Type is (U)/(S). Specifies the double-word variable when the Data Type is (UD)/(SD)/(F).
 |  | Click this icon to bring up the Address Input Keypad and specify the desired address for the Variable field.
 |  | Click this icon to bring up the Select Tag dialog box and select the desired tag for the Variable field.
Native Script Command Help |  | Shows the operation and parameter type of the selected macro command.

Note that any modification in the dialog will change the current native script command in the Native Script Editor.


15.4.1 Native Script Notations and Terminology

Native Script Notations and Terminology

The following notations and terminology will be used in the Native Script Commands and Examples sections.

■ Notations
1) P1, P2, P3, P4, P5: Parameters of native script commands.
2) I, E, C, A, CS, M, AE, CE: Used to indicate the type of parameter a native script command can accept for a specific command parameter.

Abbreviation | Parameter Type
I | Internal Variable
E | External Variable
C | Constant
A | ASCII character string
CS | Character string of the program label
M | Sub-macro name
AE | Arithmetic expression
CE | Comparison expression

3) U, S, UD, SD, F, B: Used to indicate the types of data a native script command can support.

Abbreviation | Data Type
U | 16-bit Unsigned Integer
S | 16-bit Signed Integer
UD | 32-bit Unsigned Integer
SD | 32-bit Signed Integer
F | 32-bit Floating Point
B | Bit

■ Terminology

Terminology | Definition
Internal memory The memory space in the HMI that can be accessed by the panel application. For example, the user memory $U, the non-volatile memory $N, the system memory $S, and the recipe memory $R are all parts of the internal memory.
Internal variable | An address or a tag referring to an address of a space in the internal memory.
Internal bit variable An internal variable that refers to a bit in the internal memory.
For ease of reading, “internal variable” is used instead of “internal bit variable” when referring to a bit if there is no ambiguity.
Internal word variable An internal variable that refers to a word in the internal memory.
The variables can also be used to refer to a double-word, a block of bytes (byte array), a block of words (word array), and a block of double-words (double-word array).
For ease of reading, “internal variable” is used instead of “internal word variable” when referring to a word or a block of memory space if there is no ambiguity.
External memory | The memory space or collection of addressable devices in the controllers that can be accessed by the panel application through communication links.
External variable | An address or a tag referring to an address of a space in the external memory.
External bit variable An external variable that refers to a bit in the external memory.
For ease of reading, “external variable” is used instead of “external bit variable” when referring to a bit if there is no ambiguity.
External word variable An external variable that refers to a word in the external memory.
The variables can also be used to refer to a double-word, a block of bytes (byte array), a block of words (word array), and a block of double-words (double-word array) if the access unit of the associated addresses is word. If the access unit is double-word, you can only use the variable to refer to a double-word or a block of memory space with a length of a multiple of 4 (bytes).
For ease of reading, “external variable” is used instead of “external word variable” when referring to a word or a block of memory space if there is no ambiguity,
Expression
Type | Abbreviation | Description
Arithmetic Expression | AE | Sequences of operators and parameters that are used for computing a value from the parameters.
Comparison Expression | CE | Sequences of operators and parameters that are used for comparing value from the parameters.
The software provides the following types of operators for native script expressions:
software provide
Note: The above table lists the operators in order of precedence (from highest to lowest precedence). Operators in the same segment of the table have equal precedence and are evaluated in the given order in an expression unless explicitly forced by parentheses.


15.4.2 Data Transfer

Data Transfer

■ Assignment ( = )

Format | P1 = P2 | Data Type | U/S/UD/SD/F/B
Function | Assigns the value of P2 to P1.
P1 (I/E) | The destination.
P2 (I/E/C/AE) | The source.
Example 1 | $U2 = 123.45 (F) /* Assign 123.45 to $U2 (and $U3) */
Example 2 | $U100.f = 1d (B) /* Turn on the specified bit */
Example 3 | W60 = ($U30 + W50 - 1000) / 2 (SD) /* Write the result of the arithmetic expression to W60. */
Example 4 | V0.0 = 2\M0 (B) /* Assign the bit value of M0 of link 2 to the bit V0.0 of link 1*/

■ Logical NOT ( = ! )

Format | P1 = ! P2 | Data Type | B
Function | Reverses P2 and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E) | The operand.
Example 1 | $U2.3 = !$U3.4 (B) /* If $U3.4 is 1 (On), $U2.3 is 0 (Off) */

■ " "

Format | P1 = "P2"
Function | Copies the quoted ASCII character string P2 to P1. Note that the string is a null terminated string. If the length of the string is N then N+1 bytes will be copied to P1 and the last byte is 0.
P1 (I) | The location to save the result.
P2 (A) | The quoted ASCII character string.
Example 1 | $U60 = "TEST" /* The null character (00h) will be moved to the low byte of $U62 */
Example 2 | $U20 = "ABCDE" /* The null character (00h) will be moved to the high byte of $U22 */

■ MOV

Format | P1 = MOV(P2,P3) | Data Type | U/S/UD/SD/F
Function | Copies P3 words of P2 to P1.
P1 (I/E) | The starting location of the memory to receive the copy.
P2 (I/E) | The starting location of the memory to be copied.
P3 (I/C) | The number of words to be copied.
Example 1 | $U100 = MOV($U200, 16) /* Copy the 16 words starting from $U200 to $U100 */
Example 2 | W60 = MOV($U200, $U2) /* Copy the word array starting from $U200 with the size specified in $U2 to W60.*/
Example 3 | $U10 = MOV(2\D100,10) /* Copy D100 ~ D109 of link 2 to $U10 ~ $U19.*/

■ SETM

Format | P1 = SETM(P2,P3) | Data Type | U
Function | Sets P3 words of P1 to word value P2.
P1 (I/E) | The starting location of the memory to be set.
P2 (I/C) | The set value or the location that holds the set value.
P3 (I/C) | The number of words to be set. The max. no. of words are 512.
Example 1 | $U100 = SETM(0, 16) /* Set the 16 words starting from $U100 to 0. */
Example 2 | W60 = SETM($U200, $U2) /* Set the words of the word array starting from W60 with the size specified in $U2 to the value of $U200.*/

■ MOV_BITS

Format | P1 = MOV_BITS(P2,P3) | Data Type | B
Function | Copies a block of bits starting from P2 with a length of P3 to the bit block starting from P1.
P1 (I) | The starting location of the bits to receive the copy.
P2 (I/E) | The starting location of the bits to be copied.
P3 (C) | The number of bits to be copied.
Example 1 | $U100.0 = MOV_BITS($U200.0, 16)(B) /* Copy the 16 bits starting from $U200.0 to $U100.0. */
Example 2 | $U10.1 = MOV_BITS(W60.1, 10) (B) /* Copy the 10 bits starting from W60.1 to $U10.1. */


15.4.3 Arithmetic Operation

Arithmetic Operation

■ Addition ( + )

Format | P1 = P2 + P3 | Data Type | U/S/UD/SD/F
Function | Adds P2 and P3 and saves the result in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U100 = $U101 + $U102 (U)
Example 2 | W100 = 0.3*$U0 + 0.1*$U2 + 0.6*$U4 (F)

■ Subtraction ( - )

Format | P1 = P2 - P3 | Data Type | U/S/UD/SD/F
Function | Subtracts P3 from P2 and saves the result in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U100 = $U101 - $U102 (U)
Example 2 | W100 = 0.3*$U0 - 10.75 (F)

■ Multiplication ( * )

Format | P1 = P2 * P3 | Data Type | U/S/UD/SD/F
Function | Multiplies P2 by P3 and saves the product in P1.
P1 (I/E) | The location to save the product. If the product overflows, the higher bits exceeding the limit will be truncated and the remaining bits will be stored in P1.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U100 = $U102 * 0x192
Example 2 | W100 = ($U0 + $U2) * ($U4 + $U6) (F)

■ Division ( / )

Format | P1 = P2 / P3 | Data Type | U/S/UD/SD/F
Function | Divides P2 by P3 and saves the quotient in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U100 = $U101 / $U102 (U)
Example 2 | W100 = ($U0 + $U2) / ($U4 + $U6) (F)

■ Modulus ( % )

Format | P1 = P2 % P3 | Data Type | U/S/UD/SD
Function | Divides P2 by P3 and saves the remainder in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U100 = $U30 % 16(U)
EExample 2 | W100 = $U200 % ($U402 + $U106) (SD)


15.4.4 Logical Operation

Logical Operation

■ Bitwise Inclusive OR ( | )

Format | P1 = P2 | P3 | Data Type | U/UD/B
Function | Performs bitwise Inclusive OR operation of P2 and P3 and saves the results in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C) | The operands
Example 1 | W60 = 1111000000001111b $U100 = 0000111100001111b | W60 (U) /* The value of $U100 is 1111111100001111b */
Example 2 | B15 = $U1.2 | B14 (B) /* If either $U1.2 or B14 has a value of 1(On), B15 has the value 1(On). Otherwise, B15 has the value 0(Off)*/

■ Bitwise AND ( & )

Format | P1 = P2 & P3 | Data Type | U/UD/B
Function | Performs bitwise AND operation of P2 and P3 and saves the results in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C) | The operands
Example 1 | W60 = 1111000000001111b $U100 = 0000111100001111b & W60 (U) /* The value of $U100 is 0000000000001111b */
Example 2 | B15 = $U1.2 & B14 (B) /* If both $U1.2 and B14 are 1(On), B15 is set to 1(On). Otherwise B15 is set to 0(Off) */

■ Bitwise Exclusive OR ( ^ )

Format | P1 = P2 ^ P3 | Data Type | U/UD/B
Function | Performs bitwise Exclusive OR operation of P2 and P3 and saves the results in P1.
P1 (I/E) | The location to save the result.
P2,P3 (I/E/C) | The operands
Example 1 | W60 = 1111000000001111b $U100 = 0000111100001111b ^ W60 (U) /* The value of $U100 is 1111111100000000b.*/
Example 2 | B15 = $U1.2 ^ B14 (B) /*If both $U1.2 and B14 are 1(On) or 0(Off), the B15 is set to 0(Off). Otherwise B15 is set to 1(On)*/

■ Left Shift ( << )

Format | P1 = P2 << P3 | Data Type | U/UD
Function | Shifts P2 to the left by P3 bits and saves the results in P1. The operation supports the logic shift only.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The value or the location that holds the value to be shifted.
P3 (I/E/C) | The number of bits to be shifted.
Example 1 | $U100 = $U101 << 8 (U)
Example 2 | W200 = W100 << $U10 (UD)

■ Right Shift ( >> )

Format | P1 = P2 >> P3 | Data Type | U/UD
Function | Shifts P2 to the right by P3 bits and saves the results in P1. The operation supports the logic shift only.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The value or the location that holds the value to be shifted.
P3 (I/E/C) | The number of bits to be shifted.
Example 1 | $U100 = $U101 >> 8 (U)
Example 2 | W200 = W100 >> $U10 (UD)

■ Logical AND ( && )

Format | P1 = P2 && P3 | Data Type | B
Function | Saves 1 in P1 if both P2 and P3 are 1, otherwise saves 0 in P1.
P1 (I/E) | The bit to save the result.
P2,P3(I/E/C) | The operands.
Example 1 | $U100.0 = $U101.0 && $U101.1 (B)

■ Logical OR ( || )

Format | P1 = P2 || P3 | Data Type | B
Function | Saves 1 in P1 if either or both P2 and P3 are 1, otherwise saves 0 in P1.
P1 (I/E) | The bit to save the result.
P2,P3(I/E/C) | The operands.
Example 1 | $U100.0 = $U101.0 || $U101.1 (B)


15.4.5 Calculation

Calculation

■ MAX

Format | P1 = MAX(P2,P3) | Data Type | U/S/UD/SD/F
Function | Sets P1 to the larger value of P2 and P3.
P1 (I/E) | The location to save the result.
P2,P3(I/E/C) | The operands.
Example 1 | $U100 = MAX(100, 200) /* Set $U100 to 200 */

■ MIN

Format | P1 = MIN(P2,P3) | Data Type | U/S/UD/SD/F
Function | Sets P1 to the smaller value of P2 and P3.
P1 (I/E) | The location to save the result.
P2,P3(I/E/C) | The operands.
Example 1 | $U100 = MIN(100, 200) /* Set $U100 to 100 */

■ BMAX

Format | P1 = BMAX(P2,P3) | Data Type | U/S/UD/SD/F
Function | Finds the maximum in an array starting from P2 with P3 elements and saves the result in P1.
P1 (I) | The location to save the result.
P2 (I) | The starting location of the array.
P3 (I/C) | The size of the array.
Example 1 | $U100 = BMAX($U200, 16) (F) /* Find the maximum among 16 floating point numbers starting from $U200 and save the result in $U100 */

■ BMIN

Format | P1 = BMIN(P2,P3) | Data Type | U/S/UD/SD/F
Function | Finds the minimum in an array starting from P2 with P3 elements and saves the result in P1.
P1 (I) | The location to save the result.
P2 (I) | The starting location of the array.
P3 (I/C) | The size of the array.
Example 1 | $U100 = BMIN($U200, 60) (F) /* Find the minimum among 60 floating point numbers starting from $U200 and save the result in $U100 */

■ SUM

Format | P1 = SUM(P2,P3) | Data Type | U/S/UD/SD/F
Function | Calculates the sum of the value in an array starting from P2 with P3 elements and saves the result in P1.
P1 (I) | The location to save the result.
P2 (I) | The starting location of the array.
P3 (I/C) | The size of the array.
Example 1 | $U100 = SUM($U200, 16) (F) /* Calculate the sum of 16 floating point numbers starting from $U200 and save the result in $U100 */

■ XSUM

Format | P1 = XSUM(P2,P3) | Data Type | U/UD
Function | Calculates one element XOR (Bitwise Exclusive OR) sum of all the P3 elements in an array starting from P2 and saves the result in P1.
P1 (I) | The location to save the result.
P2 (I) | The starting location of the array.
P3 (I/C) | The size of the array.
Example 1 | $U100 = XSUM($U200, 5) (UD) /* Perform XOR sum of 5 32-bit unsigned numbers starting from $U200 and save the result in $U100. Another expression of XOR sum is $U100 = $U200 ^ $U202 ^ $U204 ^ $U206 ^ $U208 (UD) */ $U100 = 1001B $U101 = 1100B $U102 = 0110B $U120 = XSUM($U100,3) /* $U120=0011B */

■ SWAP

Format | SWAP(P1,P2) | Data Type | U
Function | Swaps the low byte and high byte of every word in a word array starting from P1 with P2 words.
P1 (I) | The starting location of the array.
P2 (I/C) | The size of the array.
Example 1 | $U120=1111111100000000B $U121=1000000100000000B SWAP($U120, 2) /* The value of $U120 will be 0000000011111111B, The value of $U121 will be 000000010000001B */

■ INIT_CRC

Format | INIT_CRC(P1) | Data Type | U
Function | This command initializes the cyclical redundant check (CRC) calculations for CRC8 and CRC16 macro commands.
P1 (I) The word block that contains the data to initialize CRC calculations. The following table describes the data arrangement in the word block.
Word No. | Parameter
0 CRC checksum size.
Value | Size
8 | 8-bit checksum.
16 | 16-bit checksum.
1 Attributes of data.
Bit | Attribute
0 | The data transmission order. 0: MSB-first 1: LSB-first
1-15 | Reserved bits. Must be 0.
2 Low word of CRC polynomial representation
Value (For MSB-first code) | Value (For LSB-first code) | Polynomial | Name
0x07 | 0xE0 | x8 + x2 + x + 1 | CRC-8-CCITT
0x31 | 0x8C | x8 + x5 + x4 + 1 | CRC-8-Dallas/Maxim
0xD5 | 0xAB | x8 + x7 + x6 + x4 + x2 + 1 | CRC-8
0x1D | 0xB8 | x8 + x4 + x3 + x2 + 1 | CRC-8-SAE-J1850
0x9B | 0xD9 | x8 + x7 + x4 + x3 + x + 1 | CRC-8-WCDMA
0x8005 | 0xA001 | x16 + x15 + x2 + 1 | CRC-16
0x1021 | 0x8408 | x16 + x12 + x5 + 1 | CRC-16-CCITT
0x8BB7 | 0xEDD1 | x16 + x15 + x11 + x9 + x8 + x7 + x5 + x4 + x2 + x + 1 | CRC-16-T10-DIF
0x3D65 | 0xA8BC | x16 + x13 + x12 + x11 + x10 + x8 + x6 + x5 + x2 + 1 | CRC-16-DNP
0xD589 | 0x91A0 | x16 + x10 + x8 + x7 + x3 + 1 | CRC-16-DECT
3 | High word of CRC polynomial representation; This word is reserved for CRC-32.
4 | Low word of initial CRC value
5 | High word of initial CRC value; This word is reserved for CRC-32.
6 | Low word of final XOR value
7 | High word of final XOR value; This word is reserved for CRC-32.
Example 1 $U100 = 16 /* CRC-16 */
$U101 = 1 /* LSB-first code */
$U102 = 0xA001 /* CRC-16-ANSI*/
$U104 = 0xFFFF /* Initial CRC value */
$U106 = 0 /* No final XOR value */
INIT_CRC($U100) /* Initialize the CRC calculation for Modbus */

■ CRC8

Format | P1 = CRC8(P2,P3) | Data Type | U
Function | Calculates the 8-bit CRC checksum of the data stored in P2 with a size of P3 and saves the result in P1.
P1 (I) The word to save the result. The high byte of the word will be zero.

The calculation should be initialized by the command INIT_CRC before or the result is meaningless. No need to re-initialize the calculation if the same CRC method is still in use.
P2 (I) | The word block that contains the data of which the checksum is to be calculated. Note that the calculation takes only the low bytes of the words in the block. The high bytes are ignored.
P3 (I/C) | The size of the word block in the unit of word. It also specifies the number of bytes involved in the checksum calculation.
Example 1 $U100 = “ABCDEEFGH”
$U110 = B2W($U100, 9) /* Convert byte array to word array */
$U120 = CRC8($U100, 9) /* Store the 8-bit CRC checksum of the string “ABCDEFGH” in $U120 */

■ CRC16

Format | P1 = CRC16(P2,P3) | Data Type | U
Function | Calculates the 16-bit CRC checksum of the data stored in P2 with a size of P3 and saves the result in P1.
P1 (I) The word block to save the result.
Word No. | Description
0 | The low byte of the checksum will be saved in the low byte of this word. The high byte of this word will be 0.
1 | The high byte of the checksum will be saved in the low byte of this word. The high byte of this word will be 0.
The calculation should be initialized by the command INIT_CRC before or the result is meaningless. No need to re-initialize the calculation if the same CRC method is still in use.
P2 (I) | The word block that contains the data of which the checksum is to be calculated. Note that the calculation takes only the low bytes of the words in the block. The high bytes are ignored.
P3 (I/C) | The size of the word block in the unit of word. It also specifies the number of bytes involved in the calculation.
Example 1 $U100 = “ABCDEEFGH”
$U110 = B2W($U100, 9) /* Convert byte array to word array */
$U120 = CRC16($U100, 9) /* Store the 16-bit CRC checksum of the string “ABCDEFGH” in $U120 and $U121 */


15.4.6 Data Conversion

Data Conversion

■ BCD

Format | P1 = BCD(P2) | Data Type | U/UD
Function | Converts binary number P2 to a BCD number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The binary number to be converted.
Example 1 | $U100 = BCD(0x1234) (U) /* The value of $U100 will be 1234. */

■ BIN

Format | P1 = BIN(P2) | Data Type | U/UD
Function | Converts BCD number P2 to a binary number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The BCD number to be converted.
Example 1 | $U100 = BIN(1234) (U) /* The value of $U100 will be 0x1234. */

■ DW

Format | P1 = DW(P2) | Data Type | U/S
Function | Converts 16-bit number P2 to a 32-bit number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The 16-bit number to be converted.
Example 1 | $U100 = DW(12345) (S) /* The value of $U100 will be 12345 and the value of $U101 will be 0. */
Example 2 | $U200 = DW(-12345) (S) /* The value of $U200 will be -12345 and the value of $U201 will be 0xFFFF. */

■ W

Format | P1 = W(P2) | Data Type | UD/SD
Function | Converts 32-bit number P2 to a 16-bit number and saves the result in P1. The truncation error may occur.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The 32-bit number to be converted.
Example 1 | $U100 = W(0x12345678) (UD) /* The value of $U100 will be 0x5678 */
Example 2 | $U200 = W(-12345) (SD) /* The value of $U200 will be -12345 */

■ B2W

Format | P1 = B2W(P2,P3) | Data Type | U
Function | Converts P3-byte array starting from P2 to a P3-word array and saves the result in P1. All the high bytes of the word array are set to 0.
P1 (I) | The location (or the word array) to save the result.
P2 (I) | The byte array to be converted.
P3 (I/C) | The size of the byte array.
Example 1 | $U200 = 0x45FA $U201 = 0xEB29 $U100 = B2W($U200, 3) /* Convert 3 bytes starting from $U200 to 3 words starting from $U100, $U100 will be 0xFA, $U101 will be?0x45 and $U102 will be 0x29. */

■ W2B

Format | P1 = W2B(P2,P3) | Data Type | U
Function | Converts a word array P2 with P3 elements to a byte array and saves the result in the byte array P1. The conversion discards the high byte of every element of the word array to form a byte array with the same number of elements. The array size cannot exceed 256.
P1 (I) | The location (or the word array) to save the result.
P2 (I) | The word array to be converted.
P3 (I/C) | The size of the word array.
Example 1 | $U200 = 0x45FA $U201 = 0xEB29 $U202 = 0xC781 $U100 = W2B($U200, 3) /* Convert 3 words starting from $U200 to 3 bytes starting from $U100, $U100 will be 0x29FA and the low byte of $U101 will be 0x81*/

■ A2X

Format | P1 = A2X(P2) | Data Type | U
Function | Converts a 4-digit hex number in ASCII character form to a binary number and saves the result in P1. The character of the fourth digit is in the first word of the word array P2 and the characters of the other digits are in the following words in sequence.
P1 (I) | The location to save the result.
P2 (I) | The word array that contains the characters to be converted.
Example 1 | $U20 = 49 // '1' $U21 = 50 // '2' $U22 = 69 // 'E' $U23 = 70 // 'F' $U100 = A2X($U20) /* The value of $U100 will be 0x12EF. */

■ X2A

Format | P1 = X2A(P2) | Data Type | U
Function | Converts 16-bit number P2 to a 4-digit hex number in ASCII character form and saves the result in word array P1. The character of the fourth digit is saved in the first word of P1 and the characters of the other digits are saved in the following words in sequence.
P1 (I) | The location (or the word array) to save the result.
P2 (I/C) | The number to be converted.
Example 1 | $U10 = X2A(0x34AB) /*The 4 words starting from $U10 will be: 51('3'), 52('4'), 65('A'), 66('B') */

■ W2F

Format | P1 = W2F(P2) | Data Type | U/S
Function | Converts 16-bit number P2 to a floating point number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The 16-bit number to be converted.
Example 1 | $U200 = W2F($U10) (S)

■ D2F

Format | P1 = D2F(P2) | Data Type | UD/SD
Function | Converts 32-bit number P2 to a floating point number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The 32-bit number to be converted.
Example 1 | $U200 = D2F($U10) (SD)

■ F2W

Format | P1 = F2W(P2) | Data Type | F
Function | Converts floating point number P2 to a 16-bit number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The floating point number to be converted.
Example 1 | $U200 = F2W($U10) (F)

■ F2D

Format | P1 = F2D(P2) | Data Type | F
Function | Converts floating point number P2 to a 32-bit number and saves the result in P1.
P1 (I/E) | The location to save the result.
P2 (I/E/C) | The floating point number to be converted.
Example 1 | $U200 = F2D($U10) (F)

■ EXTRACT_BIT

Format | P1 = EXTRACT_BIT(P2,P3) | Data Type | U/UD
Function | Extracts bit P3 from P2 and saves the result in P1.
P1 (I) | The bit to save the result.
P2 (I) | The location to extract the bit.
P3 (I/C) | The number of the bit to be extracted.
Example 1 | $U2.0 = EXTRACT_BIT($U10, 31) (UD) /* Extract bit 31 of the double word $U10 and save the result in $U2.0 */


15.4.7 Conditional Operation

Conditional Operation

■ IF ==

Format | IF P2 == P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this IF command when P2 is equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ IF !=

Format | IF P2 != P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this IF command when P2 is not equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ IF >

Format | IF P2 > P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this IF command when P2 is greater than P3.
P2,P3 (I/E/C/AE) | The operands.

■ IF >=

Format | IF P2 >= P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this IF command when P2 is greater than or equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ IF <

Format | IF P2 < P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this IF command when P2 is less than P3.
P2,P3 (I/E/C/AE) | The operands.

■ IF <=

Format | IF P2 <= P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this IF command when P2 is less than or equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ IF &

Format | IF P2 & P3 | Data Type | U/UD
Function | Executes the commands in the command block following this IF command when the result of Bitwise AND between P2 and P3 is non-zero.
P2,P3 (I/E/C/AE) | The operands.

■ IF !&

Format | IF !(P2 & P3) | Data Type | U/UD
Function | Executes the commands in the command block following this IF command when the result of Bitwise AND between P2 and P3 is zero.
P2,P3 (I/E/C/AE) | The operands.

■ IF <bit>

Format | IF P2 | Data Type | B
Function | Executes the commands in the command block following this IF command if the condition P2 is true (1/On).
P2 (I/E/CE) | The condition.

■ IF !<bit>

Format | IF !P2 | Data Type | B
Function | Executes the commands in the command block following this IF command if the condition P2 is false (0/Off).
P2 (I/E/CE) | The condition.

■ ELIF ==

Format | ELIF P2 == P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this ELIF command when P2 is equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF !=

Format | ELIF P2 != P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this ELIF command when P2 is not equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF >

Format | ELIF P2 > P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this ELIF command when P2 is greater than P3.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF >=

Format | ELIF P2 >= P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this ELIF command when P2 is greater than or equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF <

Format | ELIF P2 < P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this ELIF command when P2 is less than P3.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF <=

Format | ELIF P2 <= P3 | Data Type | U/S/UD/SD/F
Function | Executes the commands in the command block following this ELIF command when P2 is less than or equal to P3.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF &

Format | ELIF P2 & P3 | Data Type | U/UD
Function | Executes the commands in the command block following this ELIF command when the result of Bitwise AND between P2 and P3 is non-zero.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF !&

Format | ELIF !(P2 & P3) | Data Type | U/UD
Function | Executes the commands in the command block following this ELIF command when the result of Bitwise AND between P2 and P3 is zero.
P2,P3 (I/E/C/AE) | The operands.

■ ELIF <bit>

Format | ELIF P2 | Data Type | B
Function | Executes the commands in the command block following this ELIF command if the condition P2 is true (1/On).
P2 (I/E/CE) | The condition.

■ ELIF !<bit>

Format | ELIF !P2 | Data Type | B
Function | Executes the commands in the command block following this ELIF command if the condition P2 is false (0/Off).
P2 (I/E/CE) | The condition.

■ ELSE

Format | ELSE
Function | This command specifies the beginning of the default command block that will be executed if none of the conditions in the preceding IF and/or ELIF commands is true. This is not an executable command.
Example | IF-Command Structures:
 | Commands and Structures | Description
 | IF <condition> … ENDIF | Runs the command block between IF and ENDIF when the condition is true, otherwise ignores the command block.
 | IF <condition> … ELSE … ENDIF | Runs the command block between IF and ELSE when the condition is true, otherwise runs the command block between ELSE and ENDIF.
 | IF <condition> … ELIF <condition_2> … ELIF <condition_3> . . . ELIF <condition_N> … ENDIF | Runs the command block between IF and the first ELIF and ignores all the following commands in the structure when condition 1 is true, otherwise examines condition 2. Runs the command block between the first ELIF and the second ELIF and ignores all the following commands in the structure when condition 2 is true, otherwise checks condition 3. Repeats the same operation until condition N is processed. If none of the conditions are true, no command block in this structure is run.
 | IF <condition> … ELIF <condition_2> … ELIF <condition_3> . . ELIF <condition_N> … ELSE … ENDIF | Runs the command block between IF and the first ELIF and ignores all the following commands in the structure when condition 1 is true, otherwise examines condition 2. Runs the command block between the first ELIF and the second ELIF and ignores all the following commands in the structure when condition 2 is true, otherwise checks condition 3. Repeats the same operation until condition N is processed. Runs the command block between ELSE and ENDIF if none of the conditions are true.
 | Note that there can be up to 20 nested IF-command structures.

■ ENDIF

Format | ENDIF
Function | This command specifies the end of a command block, which begins at the command following the matching IF, ELIF, or ELSE command. This is not an executable command.
Example IF-Command Structures:
Commands and Structures | Description
IF <condition> … ENDIF | Runs the command block between IF and ENDIF when the condition is true, otherwise ignores the command block.
IF <condition> … ELSE … ENDIF | Runs the command block between IF and ELSE when the condition is true, otherwise runs the command block between ELSE and ENDIF.
IF <condition> … ELIF <condition_2> … ELIF <condition_3> . . . ELIF <condition_N> … ENDIF | Runs the command block between IF and the first ELIF and ignores all the following commands in the structure when condition 1 is true, otherwise examines condition 2. Runs the command block between the first ELIF and the second ELIF and ignores all the following commands in the structure when condition 2 is true, otherwise checks condition 3. Repeats the same operation until condition N is processed. If none of the conditions are true, no command block in this structure is run.
IF <condition> … ELIF <condition_2> … ELIF <condition_3> . . ELIF <condition_N> … ELSE … ENDIF | Runs the command block between IF and the first ELIF and ignores all the following commands in the structure when condition 1 is true, otherwise examines condition 2. Runs the command block between the first ELIF and the second ELIF and ignores all the following commands in the structure when condition 2 is true, otherwise checks condition 3. Repeats the same operation until condition N is processed. Runs the command block between ELSE and ENDIF if none of the conditions are true.
Note that there can be up to 20 nested IF-command structures.


15.4.8 Program Control

Program Control

■ JMP

Format | JMP P1
Function | Unconditionally jumps to the program point specified by label P1.
P1 (CS) | The label of the program point.
Example 1 | IF $U10 == 0 JMP SKIP /* Skip the command "$U20 = $U10 / 2". */ ENDIF $U20 = $U10 / 2 SKIP: $U10 = 1

■ <label>

Format | P1:
Function | This is not an executable command. The P1 is the label of the program point where it is positioned.
P1 (CS) | The character string as the label of the program point. Remember to have the character ':' after the label.
Example 1 | IF $U10 == 0 JMP SKIP /* Skip the command "$U20 = $U10 / 2" */ ENDIF $U20 = $U10 / 2 SKIP: $U10 = 1

■ JMP ==

Format | JMP(P1,P2 == P3) | Data Type | U/S/UD/SD/F
Function | Jumps to the program point specified by label P1 when P2 is equal to P3.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP !=

Format | JMP(P1,P2 != P3) | Data Type | U/S/UD/SD/F
Function | Jumps to the program point specified by label P1 when P2 is not equal to P3.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP >

Format | JMP(P1,P2 > P3) | Data Type | U/S/UD/SD/F
Function | Jumps to the program point specified by label P1 when P2 is greater than P3.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP >=

Format | JMP(P1,P2 >= P3) | Data Type | U/S/UD/SD/F
Function | Jumps to the program point specified by label P1 when P2 is greater than or equal to P3.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP <

Format | JMP(P1,P2 < P3) | Data Type | U/S/UD/SD/F
Function | Jumps to the program point specified by label P1 when P2 is less than P3.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP <=

Format | JMP(P1,P2 <= P3) | Data Type | U/S/UD/SD/F
Function | Jumps to the program point specified by label P1 when P2 is less than or equal to P3.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP &

Format | JMP(P1,P2 & P3) | Data Type | U/UD
Function | Jumps to the program point specified by label P1 when the result of Bitwise AND between P2 and P3 is non-zero.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP !&

Format | JMP(P1,!(P2 & P3)) | Data Type | U/UD
Function | Jumps to the program point specified by label P1 when the result of Bitwise AND between P2 and P3 is zero.
P1 (CS) | The label of the program point.
P2,P3 (I/E/C/AE) | The operands.

■ JMP <bit>

Format | JMP(P1,P2) | Data Type | B
Function | Jumps to the program point specified by label P1 if the condition P2 is true (1/On).
P1 (CS) | The label of the program point.
P2,P3 (I/E/CE) | The operands.

■ JMP !<bit>

Format | JMP(P1,!P2) | Data Type | B
Function | Jumps to the program point specified by label P1 if the condition P2 is false (0/Off).
P1 (CS) | The label of the program point.
P2,P3 (I/E/CE) | The operands.

■ CALL

Format | CALL P1
Function | Goes to sub-macro P1.
P1 (Sub-macro name) | The sub-macro to be called.
Example 1 | CALL CommonFunction_01 /* Go to sub-macro named CommonFuncation_01 */

■ RET

Format | RET
Function | Returns to the calling macro. This command can only be used in sub-macros.

■ FOR

Format | FOR P2 | Data Type | U
Function | Runs the commands within the FOR loop by P2 times. A FOR loop is enclosed by a matching pair of FOR and NEXT commands. There can be up to 20 nested FOR loops.
P2 (I/C) | Total times to run the FOR loop. Note: If P2 is an internal variable, the value of P2 will be decreased by 1 after each loop. If the value of P2 is 1, the loop will be executed before exiting.
Example 1 | FOR 10 $U100 = $U100 + 1 /* This command will be executed 10 times */ FOR 12 $U200 = $U200 + 1 /* This command will be executed 120 times */ NEXT NEXT
Example 2 | $U1 = 10 FOR $U1 $U100 = $U100 + 1 /* This command will be executed 10 times */ $U2 = 12 FOR $U2 $U200 = $U200 + 1 /* This command will be executed 120 times */ NEXT NEXT

■ NEXT

Format | NEXT
Function | This command indicates the end of a FOR loop. It is not an executable command.
Example 1 | $U1 = 10 $U2 = 12 FOR $U1 $U100 = $U100 + 1 /* This command will be executed 10 times. */ $U4 = $U2 FOR $U4 $U200 = $U200 + 1 /* This command will be executed 120 times. */ NEXT NEXT
Example 2 | $U1 = 10 $U2 = 12 FOR $U1 $U100 = $U100 + 1 /* This command will be executed 10 times. */ FOR $U2 /* The value of $U2 is decreased by 1 after each loop. If the value of $U2 is 1, run the loop and then exit the loop. */ $U200 = $U200 + 1 /* This command will be executed 21 times. */ NEXT NEXT

■ STOP

Format | STOP
Function | Stops the macro immediately. If the macro is a Cycle macro, it will run again starting from the first command when the associated window is opened again. If the macro is a Main macro, it will run again starting from the first command when restarting the application. This command cannot be used in sub-macros.

■ END

Format | END
Function | Indicates the end of macro and stops the macro in the current cycle. It can be put anywhere in a macro to stop the macro at any point. If the macro is a cyclic macro, such as the Main macro and the Cycle macro, it is stopped just in the current cycle and will be run again starting from the first command in the next cycle. This command cannot be used in sub-macros.

■ QRET

Format | QRET(P1) | Data Type | U
Function | Report the result P1 of examining the qualification of the current record for the current query and stop the macro.
P1 (I) | The result of qualification. Value 1 represents qualified. Value 0 represents unqualified.
Example | QRET($U100) /* The current record is qualified in the query if $U100 is 1.*/


15.4.9 Timer Operation

Timer Operation

■ SET_T

Format | SET_T(P1,P2) | Data Type | U
Function | Starts the timer P1 using the timer control block in P2.
P1 (C) | The ID of the timer. There are 8 timers available and the IDs are 0 to 7. Those models that are based on Windows, WinCE, and ARM11 CPU have extra 4 timers and the IDs are 8 to 11.
P2 (I) The starting location of the memory block (or word array) that is used as a Timer Control Block for the timer. The structure of the Timer Control Block is shown below:
Word No. | Data Item | Description
0 | Type of operation | 0:One-shot; 1: Square-wave; 2: One-shot with continuous timing; 3: Square-wave with bits rotating
1 | Current timer value | If the timer’s ID is between 0 and 7, it increases the current timer value by 1 every 100 milliseconds; otherwise it increases the current timer value by 1 every 10 milliseconds.
2 | Timer limit | When the current timer value reaches the timer limit, the timer will perform one of the following operations according to the type of operation: 1) If the type of operation is 0 (One-shot), sets the time-up flag to 1, resets the current timer value to 0, and stops itself. 2) If the type of operation is 1 (Square-wave), toggles the time-up flag, resets the current timer value to 0, and continues the timing operation. 3) If the type of operation is 2 (One-shot with continuous timing), sets the time-up flag to 1 and continues the timing operation. The timer will stop itself when the current timer value reaches 65535. 4) If the type of operation is 3 (Square-wave with bits rotating), toggles the time-up flag, resets the current timer value to 0, rotates the specified bits left, and continues the timing operation.
3 | Time-up flag | This word will be set to 0 or 1 when the current timer value is equal to the timer limit.
4 | Number of bits | The number of bits to be rotated. The maximum is 32. The word is required only for operation type 3 (Square-wave with bits rotating). For example, when the number of bits is 24, the rotation will work on bit 0 through bit 23 and keep bit 25 through bit 31 intact. Each rotation will shift bit 0 through bit 22 left and rotates bit 23 to bit 0.
5 | Bits 0 to 15 | The word contains bit 0 through bit 15 of the rotate operation. The word is required only for operation type 3.
6 | Bits 16 to 31 | The word contains bit 16 through bit 31 of the rotate operation. The word is required only for operation type 3 with more than 16 bits to be rotated.
The timer will use the associated Timer Control Block as its private memory, so do not use any words in the block for other purposes.
A Timer Control Block may require 4, 6, or 7 words.
Example 1 $U100 = 1 /* Type of operation is Square-wave. */
$U101 = 0 /* Initialize the current timer value to 0. */
$U102 = 5 /* Timer limit is 0.5 second (5*100ms). */
$U103 = 0 /* Initialize the time-up flag to 0. */
SET_T(3, $U100) /* Use timer #3 to generate a 1 Hz square wave on $U103.0 */

■ STOP_T

Format | STOP_T(P1) | Data Type | U
Function | Stops the timer P1.
P1 (C) | The ID of the timer.
Example 1 | STOP_T(1) /* Stop timer #1 */

■ WAIT_T

Format | WAIT_T(P1) | Data Type | U
Function | Waits for the time-up of timer P1. The macro command following this one will not be executed until the timer reaches its limit.
P1 (C) | The ID of the timer.
Example 1 | $U100 = 0 /* Type of operation is One-shot. */ $U101 = 0 /* Initialize the current timer value to 0. */ $U102 = 5 /* Timer limit is 0.5 second (5*100ms). */ $U103 = 0 /* Initialize the time-up flag to 0. */ SET_T(7, $U100) /* Starts timer #7 as a 0.5 second timer. */ WAIT_T(7) /* Wait 0.5 second */


15.4.10 Keypad Operation

Keypad Operation

■ KB_MCR

Format | KB_MCR(P1) | Data Type | U
Function | Accepts or ignores the character/command currently input by the associated keypad button. This command must be used only in a macro that is run by a keypad button. A keypad button runs the specified macro when it is pressed. You can use this command in a keypad button macro to accept or ignore the current input of that button.
P1 (I/C) | The value or the location that holds the value to determine the acceptance of the keypad button input. If the value is 0, the input will be accepted; Otherwise the input will be ignored.
Example 1 | KB_MCR(1) /* Ignore the current input */

■ KPD_TEXT

Format | KPD_TEXT(P1) | Data Type | U
Function | Initialized the keypad display and buffer using the string P1.
P1 (I) | The memory block (or byte array) that contains the null-terminated ASCII character string to be used to initialize the keypad display and buffer.
Example 1 $U100 = "initial text"
KPD_TEXT($U100) /* Initialize the keypad display and buffer using the string "initial text". */


15.4.11 Recipe Operation

Recipe Operation

■ RB2ROM

Format | P1 = RB2ROM(P2 ) | Data Type | U
Function | Saves the data of recipe block P2 to the flash ROM and saves the completion code in P1.
P1 (I) | The word to receive the completion code. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I/C) | The ID of the recipe block to be saved. The option "Need space in flash ROM to save backup" must be selected for the recipe block.
Example 1 | $U10 = RB2ROM(3) /* Save recipe block #3 to the flash ROM. */

■ ROM2RB

Format | P1 = ROM2RB(P2 ) | Data Type | U
Function | Restores the data of recipe block P2 from the flash ROM and saves the completion code in P1.
P1 (I) | The word to receive the completion code. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I/C) | The ID of the recipe block to be restored. The option "Need space in flash ROM to save backup" must be selected for the recipe block.
Example 1 | $U10 = ROM2RB(3) /* Restore recipe block #3 from the flash ROM. */

■ REF_RCP_OBJ

Format | REF_RCP_OBJ(P1 ) | Data Type | U
Function | Refreshes the recipe objects associated with the specified recipe block P1. The recipe objects include recipe selectors and recipe tables. You can use this command to update the display of associated objects after changing the data of a recipe block in a macro program.
P1 (I/C) | The ID of the associated recipe block.
Example 1 | REF_RCP_OBJ(3) /* Refresh the recipe objects associated with recipe block #3 */


15.4.12 Data Logger Operation

Data Logger Operation

■ SAVE2LB

Format | SAVE2LB(P1, P2, P3) | Data Type | U
Function | Saves the data of size P3 in the memory block P2 to the data logger P1.
P1 (I/C) | The ID of the data logger. There are 16 data loggers at most and the IDs are 0 to 15.
P2 (I) | The internal memory block that saves the converted sample data.
P3 (I/C) | The size of the data to be logged.
Example 1 | $U103 = 200 /* Set the size of the logged data to 200. */ SAVE2LB(3, $U100, $U103) /* Save 200 words from $U100 to data logger 3 */

■ CLR_LB

Format | CLR_LB(P1 ) | Data Type | U
Function | Clears the logging buffer of the data logger P1.
P1 (I/C) | The ID of the data logger. There are 16 data loggers at most and the IDs are 0 to 15.
Example 1 | CLR_LB(1) /* Clear the logged buffer of data logger 1 */

■ REF_H_OBJ

Format | REF_H_OBJ(P1,P2 ) | Data Type | U
Function | Redraws the historic objects' display that are associated with the data logger P1 with the reason P2.
P1 (I/C) | The ID of the data logger. There are 16 data loggers at most and the IDs are 0 to 15.
P2 (I/C) The reason.
Value | Description
0 | After the data of the specified data logger is changing.
1 | If the data for the historic objects' is from the specified data logger.
2 | If the data for the historic objects' is from the specified file buffer.
Example 1 $U100 = 1 /* Set the data logger ID to 1*/
REF_H_OBJ($U100, 0) /* When the data of data logger 1 is changed, redraw all the historic objects' display that associated with data logger 1 */


15.4.13 Communication Operation

Communication Operation

■ EN_LINK

Format | EN_LINK(P1,P2,P3) | Data Type | U
Function | Enables communication link P1 or sub-link P2 of communication link P1 when P3 is 1. Disables the specified communication link or sub-link when P3 is 0.
P1 (I/C) | The number of the communication link to be enabled or disabled.
P2 (I/C) | The node address of the sub-link to be enabled or disabled. If the specified communication link has no sub-link, this parameter is ignored. If the specified communication link has sub-links and you want to enable or disable the link itself, set this parameter to 0.
P3 (I/C) | To enable the specified communication link or sub-link, set this parameter to 1. To disable the specified communication link or sub-link, set this parameter to 0.
Example 1 | ENABLE_LINK(1, 20, 0) /* Disable the sub-link, whose node address is 20, of communication link 1. */

■ LINK_STS

Format | P1 = LINK_STS(P2,P3 ) | Data Type | U
Function | Gets the status of communication link P2 or sub-link P3 of communication link P2 and saves the result in P1.
P1 (I/C) The word to receive the status of the specified communication link or sub-link. The status is a 16-bit value. The following table lists the meaning of each status value.
Status Value | Meaning | Status Value | Meaning
0 | OK | 14 | Device busy
1 | Overrun error | 15 | Unknown error
2 | Break error | 16 | Link disabled
3 | Parity error | 17 | Initialization failure
4 | Framing error | 18 | Failed to send data
5 | No response | 19 | Failed to receive data
6 | Unrecognized response | 20 | Failed to open connection
7 | Timeout | 21 | Connection not ready
8 | Inactive CTS | 22 | Invalid sub-link
9 | Checksum error | 23 | Invalid COM port
10 | Command rejected | 24 | Error
11 | Invalid address | 255 | Condition uncertain
12 | Invalid range | 65535 | Failed to get status
13 | Invalid request |  |
P2 (I/C) | The number of the communication link.
P3 (I/C) | For a sub-link of a serial link, specify the node address of the sub-link. For a sub-link of an Ethernet link, specify the sub-link ID of the sub-link. If the specified communication link has no sub-link, this parameter is ignored.
Example 1 | $U100 = LINK_STS(2, 0) /* Get the status of communication link 2 and save it to $U100. */
Example 2 | $U12 = LINK_STS(1, 128) /* Get the status of the sub-link, whose node address is 128, of communication link 1 and save it to $U12. */

■ LINK_PAR

Format | LINK_PAR(P1,P2,P3,P4) | Data Type | U
Function | Accesses the communication parameters of an Ethernet link or a sub-link of an Ethernet link.
P1 (I/C) The operation of the access.
Operation | Value
Get parameters | 0
Set parameters | 1
P2 (I/C) | The number of the communication link. For example, the number of the first link is 1. Note that the link must be an Ethernet link or the operation will fail.
P3 (I/C) | The ID of the sub-link. If the specified communication link has no sub-link, this parameter is ignored.
P4 (I) The starting location of the memory block that stores the parameters. The memory arrangement of the block is shown in the following table.
Word No. | Description
0 | The communication delay. The unit is 1 millisecond.
1 | The timeout time. The unit is 0.1 second.
2,3 | The IP address. The four bytes of this double-word stores the 4 numbers of an IP address.
 | Byte |  | Content
 | High byte of word No. 3 |  | The 1st number
 | Low byte of word No. 3 |  | The 2nd number
 | High byte of word No. 2 |  | The 3rd number
 | Low byte of word No. 2 |  | The 4th number
 | [Example] The following table shows how the IP address '192.168.1.100' is stored in the memory block when the memory block starts at $U100.
 | Byte | Content |  | Remark
 | HIgh byte of $U103 | C0H (192) |  | The word value of $U103 is C0A8H
 | Low byte of $U103 | A8H (168) |  |
 | High byte of $U102 | 01H (1) |  | The word value of $U102 is 0164H
 | Low byte of $U102 | 64H (100) |  |
 | [Note] You can use a numeric entry object to display and enter an IP address. When configuring a numeric entry object to display an IP address, Select '32-Bit Unsigned Integer' as the Data Type and select 'IP Address' as the Display Type.
4 | The IP port number.
5 | Reserved
6 | Reserved
7 | Reserved
Example 1 | LINK_PAR(0, 1, 2, $U100) /* Get the communication parameters of sub-link 2 of communication link 1 and save it to the memory block starting at $U100. */
Example 2 $U200 = 10 (U) /* Will be used to set the command delay to 10 ms */
$U201 = 1 (U) /* Will be used to set the timeout time to 0.1 second */
$U202 = C0A80164H (UD) /* Will be used to set the IP address to 192.168.1.100 */
$U204 = 2000 (U) /* Will be used to set the IP port to 2000 */
LINK_PAR(1, 2, 0, $U200) /* Set the communication parameters of link 2 using the data stored in the memory block starting at $U200. */


15.4.14 System Service

System Service

■ GET_RTC

Format | GET_RTC(P1 ) | Data Type | U
Function | Gets the data of the real time clock and saves the result in P1.
P1 (I) The starting location of the memory block that is used as an RTC data block to receive the operation result. The structure of the RTC data block is shown below:
Data Item | Data Type/Size | Word No.
Second | 16-bit Unsigned Integer | 0
Minute | 16-bit Unsigned Integer | 1
Hour | 16-bit Unsigned Integer | 2
RTC adjustment | 16-bit Signed Integer | 3
Day | 16-bit Unsigned Integer | 4
Month | 16-bit Unsigned Integer | 5
Year | 16-bit Unsigned Integer | 6
Day of week | 16-bit Unsigned Integer | 7
Second: 0-59; Minute: 0-59; Hour: 0-23; RTC adjustment: -63-63; Day: 1-31; Month: 1-12; Year: 0(2000)-99(2099); Day of week: 0(Sunday)-6(Saturday)
An RTC data block requires 8 words.
Example 1 | GET_RTC($U100) /* Get the data of the real time clock. The second will be in $U100 and the day-of-week will be in $U107. */

■ SET_RTC

Format | SET_RTC(P1 ) | Data Type | U
Function | Sets the real time clock using the data in P1.
P1 (I) | The starting location of the memory block that is used as an RTC data block to contain the new settings for the real time clock. See the description of GET_RTC to know the structure of the RTC data block.
Example 1 | $U100 = 0 // Second $U101 = 30 // Minute $U102 = 8 // Hour $U103 = 0 // Adjustment $U104 = 1 // Day $U105 = 7 // July $U106 = 10 // Year 2010 $U107 = 4 // Thursday SET_RTC($U100) /* Set the real time clock to 8:30:00 July 1st 2010 Thursday */

■ SYS

Format | SYS(P1,P2,P3) | Data Type | U
Function | Requests system service P1 with the arguments P2 and P3. This command is reserved for system use.
P1 (I) | The code of the system service.
P2,P3 (I/C) | The arguments of the system service.
Example 1 | SYS(0x6630, 0, 0) /* Restart the application */
Example 2 | SYS(0x6631, 0, 0) /* Run Panel Setup */
Example 3 | Generate a random number. The random number generation starts from a seed value, so you must do initialization first.
SYS(0x63A1,0,0) /* Initialize a seed value for a random number. */
SYS(0x63A2,0,0) /* Generate a random number and save it into $S521*/
W220 = $S521%255 + 1(S) // Get a random number between 1 and 256
Example 4 | Calculate the relative humidity with given temperatures of dry bulb and dew point, please see 15.4.14.1 Calculating Relative Humidity.htm for details
$U200 = 70 (F) // Set the dry bulb temperature in Celsius
$U202 = 65 (F) // Set the dew point temperature in Celsius

SYS(31,1,$U200) // Calculate the relative humidity
// The result is saved in $U204 and $U205 and should be 80.2547

■ SetBacklight

Format SetBacklight(P1) Data Type U
Function
Switches the LCD backlight.
P1 (I/C) Specifies the switch operation.
P1 | Operation
0 | Turns off the backlight
1 | Turns on the backlight
Example
SetBacklight(0) /* Turn off the backlight. */

■ SetScreenSaver

Format | SetScreenSaver(P1) | Data Type | U
Function | Sets the wait time of the screen saver.
P1 (I/C) | The wait time. The time unit is minute. The screen saver is disabled when the wait time is 0
Example | SetScreenSaver(20) /* Set the wait time of the screen saver to 20 minutes. */

■ SetIdleProc

Format | SetIdleProc(P1,P2) | Data Type | U
Function
Sets the properties of the idle processing.
P1 (I/C) Specifies the setting operation
P1 | Operation
0 | Resets all properties to the original settings.
1 | Sets the idle time.
2 | Sets the idle screen.
3 | Sets the user level.
P2 (I/C) Specifies the property of the designated operation.
P1 | P2
0 | 0
1 | The idle time. The time unit is minute. The idle processing is disabled when the idle time is 0.
2 | The idle screen number. The HMI will display the idle screen when it enters in the idle mode. Set P2 to 0 if no idle screen is to display.
3 | The user level that the HMI will change to when it enters in the idle mode. A valid user level is between 0 and 8. Set P2 to 255 if changing user level is not required.
Example | SetIdleProc(2, 10) /* Set the idle screen to screen No. 10. */

■ GetID

Format | P1 = GetID(P2) | Data Type | U
Function | Gets P2 type of the identifier of the HMI unit and saves the result starting from P1.
P1 (I) The starting location of the memory block to save the identifier.

Two kinds of data can be used as the identifier of an HMI unit, which are the product serial number and the MAC address of an Ethernet port. The required sizes of memory to save the two kinds of identifiers are different. The product serial number needs seven words because the serial number is a string with 14 characters. The MAC address needs six words because the address is composed of 6 numbers.
P2 (I/C) The type of the identifier.
The following table describes the type codes and the supporting HMI models:

Type Code | Type of identifier | Supporting models
0 | Product serial number | T Series HMI
1 | MAC address of the first Ethernet port | T Series HMI; The HMI Runtime
2 | MAC address of the second Ethernet port | The HMI Runtime
Example $U100 = GetID(0) /* Get the HMI’s serial number. The result is saved in $U100-$U106 */

$U110 = “07WT4DX1130118”

$U120 = STRNCMP($U100, $U110, 14) /* Set $U120 to 0 if the identifier is 07WT4DX1130118 */

■ SetBrightness

Format | SetBrightness(P1 ) | Data Type | U
Function | Sets the brightness of the LCD.
P1 (I/C) | Specifies the brightness level. A valid level is between 0 and 15. Level 0 is the darkest and level 15 is the brightest.

■ SetBriRange

Format | SetBriRange(P1,P2) | Data Type | U
Function | Sets the adjustable range of the LCD brightness. The range is determined by two values: the darkest percentage and the brightest percentage.
P1 (I/C) | Specifies the darkest percentage which is the percentage of the least brightness that is allowed to set to the full brightness of the display. A valid value is between 0 and 99 and must be less than the brightest percentage.
P2 (I/C) | Specifies the brightest percentage which is the percentage of the most brightness that is allowed to set to the full brightness of the display. A valid value is between 1 and 100 and must be greater than the darkest percentage.
Example | SetBriRange(10, 85) /* The adjustable range is between 10% and 85% of the full brightness when the darkest percentage and the brightest percentage are 10 and 85 respectively. */


15.4.14.1 Calculating Relative Humidity

Calculating Relative Humidity

The following four calculations can be done by macro command SYS with service code 31:

1. Calculates the relative humidity with given temperatures of dry bulb and dew point.

2. Calculates the relative humidity with given temperatures of dry bulb and wet bulb.

3. Calculates the dew point temperature with given relative humidity and dry bulb temperature.

4. Calculates the wet bulb temperature with given relative humidity and dry bulb temperature.

All the calculations are based on the vapor pressure formula published by Hyland and Wexler.

1. To calculate the relative humidity with given temperatures of dry bulb and dew point, use one of the following macro commands.

SYS(31, 1, P3) or SYS(31,2,P3)

Parameters:

P1 (I/C) | The system service code. It must be 31.
P2 (I/C) | The operation code
 | Operation Code | Description
 | 1 | For the temperatures in Celsius
 | 2 | For the temperatures in Fahrenheit
P3 (I) | The memory block that stores the given temperatures and the result. The temperatures and the result are all 32-bit floating point numbers. The memory block hence requires 6 words. The following is the memory arrangement of the memory block.
 | Word No. | Description
 | 0,1 | The given dry bulb temperature
 | 2,3 | The dew point temperature
 | 4,5 | The calculated relative humidity. Note: The value is 0 if the calculation failed.
Example | $U200 = 70 (F) // Set the dry bulb temperature in Celsius $U202 = 65 (F) // Set the dew point temperature in Celsius SYS(31,1,$U200) // Calculate the relative humidity // The result is saved in $U204 and $U205 and should be 80.2547

2. To calculate the relative humidity with given temperatures of dry bulb and wet bulb, use one of the following macro commands.

SYS(31, 3, P3) or SYS(31,4,P3)

Parameters:

P1 (I/C) | The system service code. It must be 31.
P2 (I/C) | The operation code
 | Operation Code | Description
 | 3 | For the temperatures in Celsius
 | 4 | For the temperatures in Fahrenheit
P3 (I) | The memory block that stores the given temperatures and the result. The temperatures and the result are all 32-bit floating point numbers. The memory block hence requires 6 words. The following is the memory arrangement of the memory block.
 | Word No. | Description
 | 0,1 | The given dry bulb temperature
 | 2,3 | The wet bulb temperature
 | 4,5 | The calculated relative humidity. Note: The value is 0 if the calculation failed.
Example | $U500 = 60 (F) // Set the dry bulb temperature in Celsius $U502 = 29 (F) // Set the wet bulb temperature in Celsius SYS(31,3,$U500) // Calculate the relative humidity // The result is saved in $U504 and $U505 and should be 9.4905

3. To calculate the dew point temperature with given relative humidity and dry bulb temperature, use one of the following macro commands.

SYS(31, 5, P3) or SYS(31,6,P3)

Parameters:

P1 (I/C) | The system service code. It must be 31.
P2 (I/C) | The operation code
 | Operation Code | Description
 | 5 | For the temperatures in Celsius
 | 6 | For the temperatures in Fahrenheit
P3 (I) | The memory block that stores the given values and the result. The values and the result are all 32-bit floating point numbers. The memory block hence requires 6 words. The following is the memory arrangement of the memory block.
 | Word No. | Description
 | 0,1 | The given relative humidity
 | 2,3 | The given dry bulb temperature
 | 4,5 | The calculated dew point temperature. Note: The value is -99990 if the calculation failed.
Example | $U300 = 80.2547 (F) // Set the relative humidity $U302 = 70 (F) // Set the dry bulb temperature in Celsius SYS(31,5,$U300) // Calculate the dew point temperature // The result is saved in $U304 and $U305 and should be 65

4. To calculate the wet bulb temperature with given relative humidity and dry bulb temperature, use one of the following macro commands.

SYS(31, 7, P3) or SYS(31,8,P3)

Parameters:

P1 (I/C) | The system service code. It must be 31.
P2 (I/C) | The operation code
 | Operation Code | Description
 | 7 | For the temperatures in Celsius
 | 8 | For the temperatures in Fahrenheit
P3 (I) | The memory block that stores the given values and the result. The values and the result are all 32-bit floating point numbers. The memory block hence requires 6 words. The following is the memory arrangement of the memory block.
 | Word No. | Description
 | 0,1 | The given relative humidity
 | 2,3 | The given dry bulb temperature
 | 4,5 | The calculated wet bulb temperature. Note: The value is -99990 if the calculation failed.
Example | $U600 = 9.4905 (F) // Set the relative humidity $U602 = 60 (F) // Set the dry bulb temperature in Celsius SYS(31,7,$U600) // Calculate the wet bulb temperature // The result is saved in $U604 and $U605 and should be 29


15.4.15 Screen Operation

Screen Operation

■ OPEN_WS

Format | OPEN_WS P1 | Data Type | U
Function | Opens the window screen specified by P1. This command can only be used in a Cycle Macro.
P1 (I/C) | The number of the window screen to be opened. This command will not open the specified screen if it is a normal screen or menu screen. The macro commands following this command will not be executed until the opened window screen is closed. Also, when a screen's Cycle macro is waiting for the closing of the window screen opened by this command, that screen cannot be closed or switched by any means.

■ CLOSE_WS

Format | CLOSE_WS
Function | Closes the window screen that was opened by the macro command OPEN_WS.

■ InitWndPos

Format | InitWndPos( P1,P2,P3) | Data Type | U
Function | Sets the initial position of the specified window screen. The window screen will be shown at the specified position when it is opened.
P1 (I/C) | The number of the window screen.
P2 (I/C) | The X-coordinate of the initial position. If you want the window screen to be shown at the center of the display, set P2 to 65535.
P3 (I/C) | The Y-coordinate of the initial position.
Example | InitWndPos(10, 120, 100) /* Set the initial position of the window screen No. 10 at (120, 100) */

■ OpenScreen

Format | OpenScreen( P1,P2,P3) | Data Type | U
Function | Opens the screen specified by P1 at the designated position (P2, P3).
P1 (I) The number of the screen to be opened.

The command can open any kind of screen. If the specified screen is a normal screen, the command closes the currently displayed normal screen before opening the specified screen. If the specified screen is a menu screen, the screen will be dragged down at the designated position. If the specified screen is nonexistent or already opened, the operation is cancelled.
P2 (I) The x-coordinate of the position where the upper-left corner of the screen is placed at.

The parameter is ignored when the specified screen is a normal screen because a normal screen is always displayed at (0, 0). If the parameter makes the right part of the screen unseen, the command will move the screen left to make the whole screen visible.

To center the screen on the display, set P2 to 65535 (0xffff).
P3 (I/C) The y-coordinate of the position where the upper-left corner of the screen is placed at.

The parameter is ignored when the specified screen is a normal screen or the value of P2 is 65535 (0xffff). If the parameter makes the lower part of the screen unseen, the command will move the screen up to make the whole screen visible.
Example OpenScreen(10, 0, 0) /* Open the normal screen numbered 10 */
OpenScreen(35, 120, 200) /* Open the window screen numbered 35 and place it at the position (120, 200) */
OpenScreen($U50, 65535, 0) /* Open the window screen specified by the internal word $U50 at the center of the display */

■ CloseScreen

Format | CloseScreen(P1) | Data Type | U
Function | Closes the window screen or menu screen specified by P1.
P1 (I/C) | The number of the window screen or menu screen to be closed.
Example | CloseScreen(27) /* Close the window screen numbered 27 */


15.4.16 File Operation

File Operation

■ FILE_IO

Format | P1 = FILE_IO(P2,P3 ) | Data Type | U
Function | Performs the file operation specified by P2 and P3 using default filename and saves the completion code in P1.
P1 (I) The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
Note: This command can only be used in the following types of macros: Main Macro, Event Macro, Time Macro, and Cycle Macro.
P2,P3 (I/C) P2 specifies the type of file operation. P3 specifies the ID of the data source. The following table describes how to set P2 and P3.
File Operation | P2 | P3 | Default Filename Format
Save Logged Data (.txt) | 1 | Data logger ID (0-15) | DL<ID>_<Date>_<Time>.txt
Save Logged Data (.csv) | 14 |  | DL<ID>_<Date>_<Time>.csv
Save Logged Alarms (.txt) | 2 | 0 | AL_<Date>_<Time>.txt
Save Logged Alarms (.csv) | 15 |  | AL_<Date>_<Time>.csv
Save Alarm Counts (.txt) | 3 | 0 | AC_<Date>_<Time>.txt
Save Alarm Counts (.csv) | 16 |  | AC_<Date>_<Time>.csv
Save Recipe Data (.txt) | 4 | Recipe block ID (0-15) | RB<ID>.txt
Save Recipe Data (.csv) | 17 |  | RB<ID>.csv
Save Recipe Data (.prd) | 5 |  | RB<ID>.prd
Read Recipe Data (.csv) | 19 |  | RB<ID>.csv
Read Recipe Data (.txt) | 20 |  | RB<ID>.txt
Read Recipe Data (.prd) | 21 |  | RB<ID>.prd
Print Screen to File (256-color .bmp) | 6 | Screen number (1-7999) | S<ID>_<Date>_<Time>.bmp
Print Screen to File (64K-color .bmp) | 7 |  | S<ID>_<Date>_<Time>.bmp
Save Logged Operations (.txt) | 9 | 0 | OL_<Date>_<Time>.txt
Save Logged Operations (.csv) | 18 | 0 | OL_<Date>_<Time>.csv
Save Logged Data (.ldf) | 10 | Data logger ID (0-15) | DL<ID>_<Date>_<Time>.ldf
Take Picture (.bmp) | 12 | USB camera ID (0-3) | CAM<ID>_<Date>_<Time>.bmp
Take Picture (.jpg) | 13 |  | CAM<ID>_<Date>_<Time>.jpg
Print Screen to File (.jpg) | 22 | Screen number (1-7999) | S<ID>_<Date>_<Time>.jpg
Take Picture for HMI units (.jpg) | 23 | Video Channel ID (1-2) | V<ID>_<Date>_<Time>.jpg
Note:
<ID>: ID of the data logger, ID of the recipe block, ID of the USB camera, or number of the screen
<Date>: The date when saving the data. <Time>: The time when saving the data.
You can select the formats of <Date> and <Time> on the Custom page in the General Setup dialog box.

You can select not to show the progress bar when the macro command is executed. To hide the progress bar, use the normal operation code plus 100. For example, to save the logged data to a CSV file without showing the progress bar, use the code 114 (100+14) instead of 14.

■ FILE_IO_N

Format | P1 = FILE_IO_N(P2,P3,P4) | Data Type | U
Function | Performs the file operation specified by P2 and P3 using filename P4 and saves the completion code in P1.
P1 (I) The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
Note: This command can only be used in the following types of macros: Main Macro, Event Macro, Time Macro, and Cycle Macro.
P2,P3 (I/C) P2 specifies the type of file operation. P3 specifies the ID of the data source. The following table describes how to set P2 and P3.
File Operation | P2 |  | P3
Save Logged Data (.csv/.txt) | 31 |  | Data logger ID (0-15)
Save Logged Alarms (.txt) | 32 |  | 0
Save Alarm Counts (.txt) | 33 |  | 0
Save Recipe Data (.csv/.txt) | 34 |  | Recipe block ID (0-15)
Save Recipe Data (.prd) | 35 |  | Recipe block ID (0-15)
Print Screen to File (256-color .bmp) | 36 |  | Screen number (1-7999)
Print Screen to File (64K-color .bmp) | 37 |  | Screen number (1-7999)
Save Logged Operations (.txt) | 39 |  | 0
Save Logged Data (.ldf) | 40 |  | Data logger ID (0-15)
Take Picture (.bmp) | 42 |  | USB camera ID (0-3)
Take Picture (.jpg) | 43 |  | USB camera ID (0-3)
Print Screen to File (.jpg) | 52 |  | Screen number (1-7999)
Take Picture for HMI units (.jpg) | 53 |  | Video channel ID (1-2)
Append Logged Data (in CSV/TXT format) | 231 |  | Data logger ID (0-15)
Append Logged Alarms | 232 |  | 0
Append Logged Operations | 239 |  | 0
Load Logged Data (in CSV/TXT format) | Code | ID of the file buffer that the loaded data will be stored | Data logger ID (0-15)
 | 1000 | 0
 | 1001 | 1
 | 1002 | 2
 | ... | ...
 | 1015 | 15

Note: You can select not to show the progress bar when the macro command is executed. To hide the progress bar, use the normal operation code plus 100. For example, to save the logged data to a CSV file without showing the progress bar, use the code 131 (100+31) instead of 31.
P4 (I) | The byte array that contains the specified filename or full pathname. The name must be a valid Windows pathname with ASCII characters only. The character string must be null terminated and each character occupies one byte. The maximum length of the string is 127. All the folders stated in the full pathname must already exist or the file operation will fail.

■ MKDIR

Format | P1 = MKDIR(P2 )
Function | Creates a new directory with the specified name P2 and saves the result to P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I) | The byte array that contains the name of the new directory. The name must be a valid directory name with or without pathname and has only ASCII characters in it.

■ OPEN_FILE

Format | P1 = OPEN_FILE(P2,P3 ) | Data Type | U
Function | Creates or opens a file.
P1 (I) The starting location of the memory block that is used as a File Information Block to receive the operation result. The structure of the File Information Block is shown below:
Data Item | Data Type/Size | Word No.
File handle | 32-bit Unsigned Integer | 0 and 1
File size | 32 bit Unsigned Integer | 2 and 3
Filename | Byte array with 81 elements | 4 through 44
The file handle is zero if the operation failed.
The file size is zero for a newly created file.
The filename is a null-terminated character string. The maximum allowable size is 80. It is set when the file is successfully opened.
A File Information Block requires 45 words.
P2 (I) | The byte array that contains the filename or the full pathname of the file to be opened. The name is a null-terminated string and has only ASCII characters in it.
P3 (I/C) Specifies the purpose of opening the file.
Purpose | Value
Read | 0
Write | 1
Append | 3
Read CSV File | 5
Example 1 $U10 = “test.txt”
$U100 = OPEN_FILE($U10, 0) /* Open the file “test.txt” for the read operation. The double word $U100 will contain the file handle. The double word $U102 will contain the file size. The byte array $U104 will contain the filename. */

■ READ_FILE

Format | P1 = READ_FILE(P2,P3,P4 ) | Data Type | U
Function | Reads P4 bytes from file P2 to buffer P3 and saves the result in P1.
P1 (I) | The word to receive the number of bytes that were actually read. If the operation failed, the number is 65535 (0xFFFF).
P2 (I) | The file handle of the file to be read.
P3 (I) | The memory block to receive the data read from the file.
P4 (I/C) | Number of bytes to be read from the file. The maximum you can specify is 32767(0x7FFF).
Example 1 | $U200 = READ_FILE($U100,$U150,20) /* Read 20 bytes from the file specified by the file handle in $U100 and saves the data in the memory block starting from $U150. */

■ WRITE_FILE

Format | P1 = WRITE_FILE(P2,P3,P4 ) | Data Type | U
Function | Writes P4 bytes of data in P3 to file P2 and saves the completion code in P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I) | The file handle of the file.
P3 (I) | The memory block (or byte array) that stores the data to be written to the file.
P4 (I/C) | Number of bytes to be written to the file.
Example 1 | $U200=WRITE_FILE($U100,$U150,30) /* Write 30 bytes of data stored in the memory block starting from $U150 to the file specified by the file handle in $U100. */

■ CLOSE_FILE

Format | P1 = CLOSE_FILE(P2,P3 ) | Data Type | U
Function | Closes an opened file P2 and saves the completion code in P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I) | The file handle of the file to be closed.
Example 1 | $U200=CLOSE_FILE($U100) /* Close the file specified by the file handle in $U100. */

■ DELETE_FILE

Format | P1 = DELETE_FILE(P2 ) | Data Type | U
Function | Deletes a file named P2 and saves the completion code in P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I) | The byte array that contains the filename or the full pathname of the file to be deleted. The name is a null-terminated string and has only ASCII characters in it.
Example 1 | $U10 = “test.txt” $U200 = DELETE_FILE($U10) /* Delete the file “test.txt”. */

■ RENAME_FILE

Format | P1 = RENAME_FILE(P2,P3 ) | Data Type | U
Function | Renames file P2 with new name P3 and saves the completion code in P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I) | The byte array that contains the filename or the full pathname of the file to be renamed. The name is a null-terminated string and has only ASCII characters in it.
P3 (I) | The byte array that contains the new filename. The name is a null-terminated string and has only ASCII characters in it.
Example 1 | $U10 = “test.txt” $U50 = “new.txt” $U200 = RENAME_FILE($U10, $U50) /* Rename the file “test.txt” to “new.txt”. */

■ COPY_FILE

Format | P1 = COPY_FILE(P2,P3 ) | Data Type | U
Function | Copies the file P2 to a new file P3 and saves the completion code in P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; Otherwise the operation failed. Note: This command can only be used in the following types of macros: Main Macro, Event Macro, Time Macro, and Cycle Macro.
P2 (I) | The byte array that contains the filename or the full pathname of the file to be copied. The name is a null-terminated string and has only ASCII characters in it.
P3 (I) | The byte array that contains the filename or the full pathname of the new file. The name is a null-terminated string and has only ASCII characters in it.
Example 1 | $U10 = “c:\abc.txt” $U50 = “d:\new.txt” $U200 = COPY_FILE($U10, $U50) /* Copy the file “c:\abc.txt” to the new file “d:\new.txt”. */

■ GET_VOL_INFO

Format | P1 = GET_VOL_INFO(P2,P3 ) | Data Type | U
Function | Gets the information of volume P2 and saves the result in P3. The completion code is saved in P1.
P1 (I) | The word to receive the completion code of the operation. If the completion code is 0, the operation succeeded; otherwise the operation failed.
P2 (I/C) The drive ID.
ID | Drive
0 | Current drive
3 | Drive C
4 | Drive D
5 | Drive E
T
P3 (I) The starting location of the memory block that is used as a Volume Information Block to receive the operation result. The structure of the Volume Information Block is shown below:
Data Item | Data Type/Size | Word No.
Volume name | Byte array with 32 elements | 0 through 15
Volume size | 32-bit Unsigned Integer | 16 and 17
Free size | 32-bit Unsigned Integer | 18 and 19
Drive ID | 16-bit Unsigned Integer | 20
The volume name is a null-terminated character string. The maximum allowable size is 31 characters.
Both the unit of volume size and the unit of free size are 1024 bytes.
A Volume Information Block requires 21 words.
Example 1 | $U100 = GET_VOL_INFO(0, $U0) /* Get the volume information of the current drive. The volume name will be stored in $U0 through $U15. The size of the drive will be stored in $U16 and $U17. The free size of the drive will be stored in $U18 and $U19. The ID of the current drive will be stored in $U20. */

■ READ_CSV

Format | P1 = READ_CSV(P2,P3,P4 ) | Data Type | S/U/SD/UD/F
Function | Reads the data in the field of row P3 and column P4 of the CSV file P2 and saves the result in P1.
P1（I） | The word location to receive the value of the specified field. The data type selected for this command should be the same as the data type of the specified field, or the operation may fail. If the operation fails for any reason, no value will be written to P1. To know if the operation failed or not, check the word $S522. When the value of $S522 is non-zero, the operation failed.
P2（I） | The file handle of the file to be read. The file must be a CSV file and is opened with the purpose of Read CSV File. The delimiter must be TAB.
P3（I/C） | The row number of the field to be read. The row counts from 0.
P4（I/C） | The column number of the field to be read. The column counts from 0.
Example 1 $U10 = "test.csv"
$U100 = OPEN_FILE($U10,5) /* Open the file "test.csv" for the READ CSV FILE operation. */
$U200 = READ_CSV($U100,2,3) (F) /* Read the floating point number in the field of row 2 and column 3 and save the result in $U200 and $U201. */

■ READ_CSV_STR

Format | P1 = READ_CSV_STR (P2,P3,P4 )
Function | Reads the string in the field of row P3 and column P4 of the CSV file P2 and saves the result in P1.
P1（I） | The byte array to receive the string in the specified field. The maximal string length that this command can handle is 128. If the operation fails for any reason, no value will be written to P1. To know if the operation failed or not, check the word $S522. When the value of $S522 is non-zero, the operation failed.
P2（I） | The file handle of the file to be read. The file must be a CSV file and is opened with the purpose of Read CSV File. The delimiter must be TAB.
P3（I/C） | The row number of the field to be read. The row counts from 0.
P4（I/C） | The column number of the field to be read. The column counts from 0.
Example 1 $U10 = "test.csv"
$U100 = OPEN_FILE($U10,5) /* Open the file "test.csv" for the READ CSV FILE operation. */
$U200 = READ_CSV_STR($U100,2,4) /* Read the string in the field of row 2 and column 4 and save the result in the byte array starting at $U200. */


15.4.17 Comparison

Comparison

■ ==

Format | P1 = P2 == P3 | Data Type | U/S/UD/SD/F/B
Function | Sets bit P1 to 1 if P2 is equal to P3, otherwise sets P1 to 0.
P1 (I/E) | The bit location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U3.3 = ($U10 + $U20) == 25.75 (F)

■ !=

Format | P1 = P2 != P3 | Data Type | U/S/UD/SD/F/B
Function | Sets bit P1 to 1 if P2 is not equal to P3, otherwise sets P1 to 0.
P1 (I/E) | The bit location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U3.3 = ($U10 + $U20) != -700 (S)

■ >

Format | P1 = P2 > P3 | Data Type | U/S/UD/SD/F
Function | Sets bit P1 to 1 if P2 is greater than P3, otherwise sets P1 to 0.
P1 (I/E) | The bit location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U3.3 = ($U10 + $U20) > $U30 (UD)

■ >=

Format | P1 = P2 >= P3 | Data Type | U/S/UD/SD/F
Function | Sets bit P1 to 1 if P2 is greater than or equal to P3, otherwise sets P1 to 0.
P1 (I/E) | The bit location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U3.3 = ($U10 + $U20) >= 25.75 (F)

■ <

Format | P1 = P2 < P3 | Data Type | U/S/UD/SD/F
Function | Sets bit P1 to 1 if P2 is less than P3, otherwise sets P1 to 0.
P1 (I/E) | The bit location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U3.3 = ($U10 + $U20) < 25.75 (F)

■ <=

Format | P1 = P2 <= P3 | Data Type | U/S/UD/SD/F
Function | Sets bit P1 to 1 if P2 is less than or equal to P3, otherwise sets P1 to 0.
P1 (I/E) | The bit location to save the result.
P2,P3 (I/E/C/AE) | The operands.
Example 1 | $U3.3 = ($U10 + $U20) <= 25.75 (F)


15.4.18 Print Operation

Print Operation

■ PRINT

Format | P1 = PRINT(P2,P3 ) | Data Type | U
Function | Sends P3 bytes of data stored in byte array P2 to the printer and saves the completion code in P1.
P1 (I) The word to receive the completion code of the operation. The following table describes the meanings of the completion codes.
Code | Description
0 | Succeeded
1 | Printer not ready
3 | System error
4 | Printer busy
7 | No printer specified
P2 (I) | The starting location of the byte array that stores the data to be sent to the printer.
P3 (I/C) | The length in byte of the data to be sent to the printer.
Example 1 $U10 = "This is a test."
$U20 = PRINT($U10, 15) /* Send the string “This is a test.” to the printer. */
$U10 = 10
$U20 = PRINT($U10, 1) /* Send the line-feed character to the printer */
$U10 = 12
$U20 = PRINT($U10, 1) /* Send the form-feed character to the printer */
Example 2 $U10 = 0x401b /* ESC, '@' */
$U20 = PRINT($U10, 2) /* Send the initialization command to the EPSON printer */

■ PRINT_SCREEN

Format | P1 = PRINT_SCREEN(P2,P3 ) | Data Type | U
Function | Prints screen P2 and saves the result in P1.
P1 (I) The word to receive the completion code of the operation. The following table describes the meanings of the completion codes.
Code | Description
0 | Succeeded
1 | Printer not ready
2 | Invalid screen number
3 | System error
4 | Printer busy
5 | System busy
6 | Improper use of this command (See Note)
7 | No printer specified
Note: This command can only be used in the following types of macros: Main Macro, Event Macro, Time Macro, and Cycle Macro.
P2 (I/C) | The number of the screen to be printed. The printed area is specified in the Screen Properties dialog box.
P3 (I/C) | Reserved for future use. Must be 0.
Example 1 | $U0 = PRINT_SCREEN(28, 0) /* Print screen #28*/

■ BLANK

Format | P1 = BLANK (P2) | Data Type | U
Function | Blanks the print buffer P1, i.e. makes the print buffer P1 contain only blank characters.
P1 (I) | The print buffer to be blanked. The print buffer is a byte array. You should always blank a print buffer before printing strings to it.
P2 (I/C) | The size of the print buffer. The unit is byte (one-byte character). For example, if the size of a print buffer is 40, it has 20 words and can contain up to 40 one-byte characters.
Example 1 | BLANK($U100, 80) /* Blank the print buffer starting at $U100 with a length of 40 words. */

■ P2B

Format | P1 = P2B (P2,P3 ) | Data Type | U
Function | Prints the null-terminated string P1 to the print buffer P2 at the specified byte position P3.
P1 (I) | The byte array that holds the string to be printed.
P2 (I) | The byte array that is used as a print buffer to accept the string P1.
P3 (I/C) The byte position in the print buffer to put the string. The byte position counts from 0.
For example, to print a string at the beginning of the print buffer, set P3 to 0.
Example 1 BLANK($U100, 20) /* Blank the print buffer. */
$U10 = “Weight:”
P2B($U100, $U10, 0) /* Print the string “Weight:” at the position of byte 0 of the print buffer. */
$U10 = I2A(1234, 2) /* The byte array $U10 will hold the string “12.34” after this command is executed. */
P2B($U100, $U10, 8) /* Print the string “12.34” at the position of byte 8 of the print buffer. */
$U10 = “kg”
P2B($U100, $U10, 14) /* Print the string “kg” at the position of byte 14 of the print buffer. */
PRINT($U100, 20 ) /* Print string “Weight: 12.34 kg” in the print buffer to the real printer. */

■ P2B_R

Format | P1 = P2B_R (P2,P3 ) | Data Type | U
Function | Prints the null-terminated string P1 to the print buffer P2. The string is right aligned with the byte position P3.
P1 (I) | The byte array that holds the string to be printed.
P2 (I) | The byte array that is used as a print buffer to accept the string P1.
P3 (I/C) The byte position in the print buffer that the last characters of the string is placed. The byte position counts from 0.
For example, to print a string with 6 characters at the beginning of the print buffer, set P3 to 5 as the last character of the string should be placed at the position of byte 5.
Example 1 BLANK($U100, 20) /* Blank the print buffer. */
$U10 = “Weight:”
P2B_R($U100, $U10, 6) /* Print the string “Weight:” to the print buffer and align the string right with the position of byte 6. */
$U10 = I2A(1234, 2) /* The byte array $U10 will hold the string “12.34” after this command is executed. */
P2B_R($U100, $U10, 12) /* Print the string “12.34” to the print buffer and align the string right with the position of byte 12. */
$U10 = “kg”
P2B_R($U100, $U10, 15) /* Print the string “kg” to the print buffer and align the string right with the position of byte 15. */
PRINT($U100, 20 ) /* Print string “Weight: 12.34 kg” in the print buffer to the real printer. */


15.4.19 Sound Operation

Sound Operation

■ SOUND

Format | SOUND (P1,P2,P3 ) | Data Type | U
Function | Plays the sound P1.
P1 (I/C) | The identifier of the sound to be played. Note: The sounds and their identifiers are defined in the sound table of the panel application.
P2 (I/C) | The number of times you want the sound to be played. If you want the specified sound to be played just once, set P2 to 1.
P3 (I/C) | The break time between two consecutive plays. The time unit is 100 ms (0.1 second). If you do not want any break between two plays, set P3 to 0.
Example 1 | SOUND(10, 5, 3) /* Play the sound #10 5 times with a break of 0.3 second between two consecutive plays. */

■ STOP_SOUND

Format | STOP_SOUND
Function | Stops playing the current sound.
Example 1 | STOP_SOUND /* Stop playing the current sound.*/


15.4.20 String Operation

String Operation

■ STRCPY

Format | STRCPY(P1, P2 ) | Data Type | U
Function | Copies the string in P2 to P1.
P1 (I) | The byte array that receives a copy of the string in P2. The byte array must be large enough to hold the string and the null terminator.
P2 (I) | The source, i.e. the byte array that contains the null-terminated string to be copied.
Example 1 $U10 = “ABCDE”
STRCPY($U20, $U10)
After the command STRCPY is executed, the byte array $U20 contains the string “ABCDE” and the memory content is like the following:
Word | Low Byte | High Byte
$U20 | 'A' | 'B'
$U21 | 'C' | 'D'
$U22 | 'E' | 0
Example 2 $U10 = “12”
STRCPY($U20, $U10)
After the command STRCPY is executed, the byte array $U20 contains the string “12” and the memory content is like the following:
Word | Low Byte | High Byte
$U20 | '1' | '2'
$U21 | 0 | Undefined

■ STRCAT

Format | STRCAT(P1, P2 )
Function | Appends string in P2 to string in P1.
P1 (I) | The byte array that contains a null-terminated string to which the command appends P2. The byte array must be large enough to hold both strings and the null terminator.
P2 (I) | The byte array that contains a null-terminated string to be appended to the string in P1.
Example 1 | $U10 = “ABC” $U20 = “12345” STRCAT($U10, $U20) /* After this command is executed, the byte array $U10 contains “ABC12345” */
Example 2 | $U100 = “C:\MyFolder\” $U130 = “Test” $U140 = “.txt“ STRCAT($U100, $U130) STRCAT($U100, $U140) /* After this command is executed, the byte array $U100 contains “C:\MyFolder\Test.txt” */

■ STRLEN

Format | P1 = STRLEN(P2 )
Function | Gets the length of string P2 and saves the result in P1.
P1 (I) | The word to receive the result.
P2 (I) | The byte array that stores the null-terminated string.
Example 1 | $U10 = “ABC” $U20 = STRLEN($U10) /* After this command is executed, the value of $U20 is 3. */

■ STRCMP

Format | P1 = STRCMP(P2,P3 )
Function | Compares strings P2 and P3 lexicographically and saves a value indicating their relationship in P1.
P1 (I) The value of comparison result.
Value | Description
0 | P2 and P3 are identical.
1 | P2 is greater than P3.
0xFFFF | P2 is less than P3.
P2,P3 (I) | The byte array that contains a null-terminated string to compare.
Example 1 $U10 = “ABC”
$U20 = “abc”
$U30 = STRCMP($U10, $U20) /* After this command is executed, $U30 is 0xFFFF*/
Example 2 $U10 = “XYZ”
$U20 = “ABC”
$U30 = STRCMP($U10, $U20) /* After this command is executed, $U30 is 1*/
Example 3 $U10 = “ABC”
$U20 = “ABC”
$U30 = STRCMP($U10, $U20) /* After this command is executed, $U30 is 0*/

■ STRICMP

Format | P1 = STRICMP(P2,P3 )
Function | Compares lowercase version of strings P2 and P3 lexicographically and saves a value indicating their relationship in P1.
P1 (I) The value of comparison result.
Value | Description
0 | P2 and P3 are identical.
1 | P2 is greater than P3.
0xFFFF | P2 is less than P3.
P2,P3 (I) | The byte array that contains a null-terminated string to compare.
Example 1 $U10 = “ABC”
$U20 = “abc”
$U30 = STRICMP($U10, $U20) /* After this command is executed, $U30 is 0*/
Example 2 $U10 = “XYZ”
$U20 = “ABC”
$U30 = STRICMP($U10, $U20) /* After this command is executed, $U30 is 1*/
Example 3 $U10 = “ABC”
$U20 = “ABC”
$U30 = STRCMP($U10, $U20) /* After this command is executed, $U30 is 0xFFFF*/

■ STRNCMP

Format | P1 = STRNCMP(P2,P3,P4 )
Function | Lexicographically compares, at most, the first? P4 characters in strings P2 and P3 and saves a value indicating the relationship between the substrings in P1.
P1 (I) The value of comparison result.
Value | Description
0 | P2's substring and .P3's substring are identical
1 | P2's substring is greater than P3's substring .
0xFFFF | P2's substring is less than P3's substring .
Note: The comparison ends if a terminating null character is reached in either string before P4 characters are compared. If the strings are equal when a terminating null character is reached in either string before P4 characters are compared, the shorter string is less.
The characters from 91 to 96 in the ASCII table ('[', '\', ']', '^', '_', and '`') will evaluate as less than any alphabetic character.
P2,P3 (I) | The byte array that contains a null-terminated string to compare.
P4 (I/C) | The number of characters to compare.
Example 1 $U10 = “XYZ”
$U20 = “XYZAB”
$U30 = STRNCMP($U10, $U20,4) /* After this command is executed, $U30 is 0xFFFF*/
Example 2 $U10 = “ABZ”
$U20 = “ABC”
$U30 = STRNCMP($U10, $U20,2) /* After this command is executed, $U30 is 0*/
Example 3 $U10 = “AXC”
$U20 = “ABC”
$U30 = STRNCMP($U10, $U20,3) /* After this command is executed, $U30 is 1*/
$U30 = STRCMP($U10, $U20) /* After this command is executed, $U30 is 0xFFFF*/

■ STRCHR

Format | P1 = STRCHR(P2,P3 )
Function | Finds the first occurrence of a character P3 in a string P2 and saves a search result in value indicating the position of the found character in P1.
P1 (I) | The value of search result. If the character P3 is not found in P2, the result value is 0xFFFF.Otherwise, the result value is the index to the first occurrence of character P3 in a string P2.
P2 (I) | The byte array that contains a null-terminated source string.
P3 (I/C) | The byte that contains a character code to be located.
Example 1 | $U10 = “The quick brown dog jumps over the lazy fox.” $U20 = 0x72 /* The ASCII code of character 'r' */ $U30 = STRCHR($U10, $U20) /* After this command is executed, $U30 is 11*/

■ NUM2STR

Format | P1 = NUM2STR(P2,P3 ) | Data Type | U/UD
Function | Converts the number in P2 to a string with P3 characters and saves the result in P1.
P1 (I) | The byte array that stores the result.
P2 (I/C) | The number or the location that holds the number to be converted.
P3 (I/C) | Specifies the exact number of characters that the result should have. If the number of digits of P2 is less than P3, the result is padded on the left with zeros. If the number of digits of P2 exceeds P3, the higher digits are truncated. If P3 is 0, there is no limitation on the length of the result.
Example 1 | $U120 = 123 $U100 = NUM2STR($U120, 0) (U) /* After this command is executed, the byte array $U100 contains “123”. */
Example 2 | $U120 = 1234567 (UD) $U100 = NUM2STR($U120, 10) (UD) /* After this command is executed, the byte array $U100 contains “0001234567”. */
Example 3 | $U120 = 1234567 (UD) $U100 = NUM2STR($U120, 5) (UD) /* After this command is executed, the byte array $U100 contains “34567”. */

■ TIME2STR

Format | P1 = TIME2STR(P2 ) | Data Type | U
Function | Converts the current system time to a string using the format specified by P2 and saves the result in P1.
P1 (I) | The byte array that stores the result.
P2 (I/C) Specifies the desired conversion format.
Format | P2 Value | Remark
hhmmss | 0 | hh: hour(00-23); mm: minute(00-59); ss: second(00-59)
hhmm | 1 | hh, mm: same as above
Example 1 | $U10 = TIME2STR(0) /* Assume that the current system time is 12:30:59. After this command is executed, the byte array $U10 contains “123059”. */

■ DATE2STR

Format | P1 = DATE2STR(P2 ) | Data Type | U
Function | Converts the current system date to a string using the format specified by P2 and saves the result in P1.
P1 (I) | The byte array that stores the result.
P2 (I/C) Specifies the desired conversion format.
Format | P2 Value | Remark
YYMMDD | 0 | YY: year (00-99); MM: month(01-12); DD: day(01-31)
YYMM | 1 | YY, MM: same as above
YYMMMDD | 2 | YY: year (00-99); MMM: month(JAN-DEC); DD: day(01-31)
YYMMM | 3 | YY, MMM: same as above
Example 1 | $U10 = DATE2STR(0) /* Assume that the current system date is December 7, 2008. After this command is executed, the byte array $U10 contains “081207”. */
Example 2 | $U20 = DATE2STR(3) /* Assume that the current system date is December 31, 2008. After this command is executed, the byte array $U20 contains “08DEC”. */

■ TD2STR

Format | P1 = TD2STR(P2 ) | Data Type | U
Function | Converts the current system time and date to a string using the format specified by P2 and saves the result in P1.
P1 (I) | The byte array that stores the result.
P2 (I/C) Specifies the desired conversion format.
Format | P2 Value | Remark
YYMMDD_hhmmss 0 YY: year (00-99); MM: month(01-12); DD: day(01-31)
hh: hour(00-23); mm: minute(00-59) ; ss: second(00-59)
YYMMMDD_hhmmss 1 YY, DD, hh, mm, ss: same as above
MMM: month(JAN-DEC)
YYMMDD_hhmm | 2 | YY, DD, hh, mm: same as above; MM: month(01-12)
YYMMMDD_hhmm 3 YY, DD, hh, mm: same as above;
MMM: month(JAN-DEC)
Example 1 | $U10 = TD2STR(0) /* Assume that the current system date is December 7, 2008 and the current system time is 15:18:30. After this command is executed, the byte array $U10 contains “081207_151830". */
Example 2 | $U20 = TD2STR(3) /* Assume that the current system date is December 31, 2008 and the current system time is 13:30:00. After this command is executed, the byte array $U20 contains “08DEC31_1330”. */

■ I2A

Format | P1 = I2A(P2,P3 ) | Data Type | U/S/UD/SD
Function | Converts the integer number in P2 to a string and saves the result in P1. The string is generated according to the format specified by P3.
P1 (I) | The byte array that stores the result. The result is a null terminated string.
P2 (I/C) | The integer number or the location that holds the integer number to be converted.
P3 (I/C) | Specifies where to insert a decimal point in the string. A decimal point is inserted to the left of the nth digit when P3 is n. No decimal point is inserted when P3 is 0.
Example 1 | $U120 = 123 $U100 = I2A($U120, 0) /* After this command is executed, the byte array $U100 contains “123”. */
Example 2 | $U120 = 1234567 (UD) $U100 = I2A($U120, 2) (UD) /* After this command is executed, the byte array $U100 contains “12345.67”. */
Example 3 | $U120 = -12345 (S) $U100 = I2A($U120, 1) (UD) /* After this command is executed, the byte array $U100 contains “-1234.5”. */

■ A2I

Format | P1 = A2I(P2,P3,P4 ) | Data Type | U/S/UD/SD
Function | Converts the string P2 to an integer value and saves the result in P1.
P1 (I) | The location that stores the result. The result is 0 when there is any conversion error.
P2 (I) | The byte array that holds the string to be converted.
P3 (I/C) | Specifies the length of the string. It is allowed to specify 0 for P3. When P3 is 0, the string must be a null terminated string.
P4 (I/C) | Specifies how many fractional digits in the string are to be converted.
Example 1 | $U120 = “123” $U100 = A2I($U120, 0, 0) /* After this command is executed, the value in word $U100 is 123. */
Example 2 | $U120 = “1234567” $U100 = A2I($U120, 6, 0) (UD) /* After this command is executed, the value in double word $U100 is 123456. */
Example 3 | $U120 = “-123.45” $U100 = A2I($U120, 0, 2) (S) /* After this command is executed, the value in word $U100 is -12345. */

■ F2A

Format | P1 = F2A(P2,P3 ) | Data Type | F
Function | Converts the floating point number in P2 to a string and saves the result in P1. The string is generated according to the format specified by P3.
P1 (I) | The byte array that stores the result. The result is a null terminated string.
P2 (I/C) | The floating point number or the location that holds the floating point number to be converted.
P3 (I/C) | Specifies the number of fractional digits the string can have.
Example 1 | $U120 = 123.45 (F) $U100 = F2A($U120, 2) /* After this command is executed, the byte array $U100 contains “123.45”. */
Example 2 | $U120 = 567.89 (F) $U100 = F2A($U120, 1) (UD) /* After this command is executed, the byte array $U100 contains “567.8”. */
Example 3 | $U120 = -1234.5 (S) $U100 = F2A($U120, 1) (UD) /* After this command is executed, the byte array $U100 contains “-1234.5”. */

■ A2F

Format | P1 = A2F(P2,P3 ) | Data Type | F
Function | Converts the string P2 to a floating point number and saves the result in P1.
P1 (I) | The location that stores the result. The result is 0 when there is any conversion error.
P2 (I) | The byte array that holds the string to be converted.
P3 (I/C) | Specifies the length of the string. It is allowed to specify 0 for P3. When P3 is 0, the string must be a null terminated string.
Example 1 | $U120 = “123.4” $U100 = A2F($U120, 0) /*The value of the floating point number in double word $U100 is 123.4. */
Example 2 | $U120 = “1234567” $U100 = A2F($U120, 6) (UD) /* The value of the floating point number in double word $U100 is 123456. */
Example 3 | $U120 = “-123.45” $U100 = A2F($U120, 0) (S) /* The value of the floating point number in double word $U100 is -123.45. */

■ GET_BAR_CODE

Format | P1 = GET_BAR_CODE(P2) | Data Type | U
Function | Gets the bar code input from the bar code reader connected to the specified USB port.
P1 (I) | The starting location of the byte array to store the bar code. The bar code is stored in the byte array as a null-terminated character string. The length of a bar code can be up to 1024 characters. Make sure the byte array has sufficient space for your application. If there is no bar code input, the first 2 bytes of the byte array are set to 0. There is only one bar code input buffer in the system, so if a bar code is not fetched in time, it could be overwritten by a new bar code input. The bar code in the buffer will be erased immediately after it is fetched, so the command can get the bar code of one input only once. The most effective way to get a bar code is to use the macro command in an Event macro and the Event macro is triggered by the system bit BarCodeInputViaUsb. When there is a bar code input, the system bit triggers the Event macro once. This guarantees that a bar code input will always be fetched and processed. Note: Only T series models support this command.
P2 (I/C) | The number of the USB port that connects to the bar code reader. For T series models, you can only specify 1.
Example 1 | $U100 = GET_BAR_CODE(1) /* Get the bar code scanned by the bar code reader connected to the USB port 1 */

■ GB2U

Format | P1 = GB2U(P2,P3 ) | Data Type | U
Function | Converts the GB code string in P3 to an UNICODE string in P2 and saves the number of characters in P1.
P1 (I) | The number of characters.
P2 (I) | Destination. The word array that stores the null-terminated UNICODE or word string.
P3 (I) | Source. The byte array that holds the null-terminated GB code string to be converted.
Example 1 | $U20 = “ABC” $U30 = GB2U($U10, $U20) /*After this command is executed, the value of $U30 is 4, and $U10 = 0x41, $U11 = 0x42, $U12 = 0x43 */

■ U2GB

Format | P1 = U2GB(P2,P3 ) | Data Type | U
Function | Converts the UNICODE string in P3 to a GB code string in P2 and saves the number of characters in P1.
P1 (I) | The number of characters.
P2 (I) | Destination. The byte array that holds the null-terminated GB code string after converted.
P3 (I) | Source. The word array that stores the null-terminated UNICODE or word string.
Example 1 | $U20 = 0x41 // "A" $U21 = 0x42 // "B" $U22 = 0x43 // "C" $U23 = 0 $U30 = U2GB($U10, $U20) /* After this command is executed, the value of $U30 is 3, and $U10 = 0x4241, $U11 = 0x43 */

■ WCSLEN

Format | P1 = WCSLEN(P2) | Data Type | U
Function | Gets the length of UNICODE or word string P2 and saves the result in P1.
P1 (I) | The number of characters.
P2 (I) | The word array that stores the null-terminated UNICODE or word string.
Example 1 | $U10 = 0x41 // "A" $U11 = 0x42 // "B" $U12 = 0x43 // "C" $U13 = 0 $U20 = U2GB($U10) /* After this command is executed, the value of $U20 is 3 */


15.4.21 Math Operation

Math Operation

■ ACOS

Format | P1 = ACOS( P2 ) | Data Type | F
Function | Calculates the arccosine of the value of P2 and saves the result to P1.
P1 (I) | The result in the range 0 to π. If the value of P2 is less than -1 or greater than 1, the result will be an indefinite by default.
P2 (I/C) | The value between -1 to 1 whose arccosine is to be calculated.
Example 1 | $U100 = 0 (F) /* Assign 0 to $U100 (and $U101)*/ $U200 = ACOS($U100) (F) /* Write the result 1.570796 of arccosine of 0 to $U200 (and $U201)*/

■ ASIN

Format | P1 = ASIN( P2 ) | Data Type | F
Function | Calculates the arcsine of the value of P2 and saves the result to P1.
P1 (I) | The result in the range -π/2 to π/2. If the value of P2 is less than -1 or greater than 1, the result will be an indefinite by default.
P2 (I/C) | The value between -1 to 1 whose arcsine is to be calculated.
Example 1 | $U100 = -0.5 (F) /* Assign -0.5 to $U100 (and $U101)*/ $U200 = ASIN($U100) (F) /* Write the result -0.523599 of arcsine of -0.5 to $U200 (and $U201)*/

■ ATAN

Format | P1 = ATAN( P2 ) | Data Type | F
Function | Calculates the arctangent of the value of P2 and saves the result to P1.
P1 (I) | The result in the range -π/2 to π/2. If the value of P2 is 0, the result will be 0.
P2 (I/C) | The value whose arctangent is to be calculated.
Example 1 | $U100 = 236.89 (F) /* Assign 236.89 to $U100 (and $U101)*/ $U200 = ATAN($U100) (F) /* Write the result 1.566575 of arctangent of 236.89 to $U200 (and $U201)*/

■ ATAN2

Format | P1 = ATAN2( P2,P3 ) | Data Type | F
Function | Calculates the arctangent of the value of P2 / P3 and saves the result to P1.
P1 (I) | The result in the range -π to π. If the value of P2 and P3 both are 0, the result will be 0.
P2 (I/C) | The value whose arctangent is to be calculated.
P3 (I/C) | The value whose arctangent is to be calculated.
Example 1 | $U100 = 60 (F) /* Assign 236.89 to $U100 (and $U101)*/ $U102 = 3 (F) /* Assign 236.89 to $U100 (and $U101)*/ $U200 = ATAN($U100,$U102) (F) /* Write the result 1.520838 of arctangent of 60/3 to $U200 (and $U201)*/

■ COS

Format | P1 = COS( P2 ) | Data Type | F
Function | Calculates the cosine of the value of P2 and saves the result to P1.
P1 (I) | The result in the range -1 to 1.
P2 (I/C) | The angle in radians whose cosine is to be calculated.
Example 1 | $U100 = 1.570796 (F) /* Assign 1.570796 to $U100 (and $U101)*/ $U200 = COS($U100) (F) /* Write the result 0 of cosine of 1.570796 to $U200 (and $U201)*/

■ SIN

Format | P1 = SIN( P2 ) | Data Type | F
Function | Calculates the sine of the value of P2 and saves the result to P1.
P1 (I) | The result in the range -1 to 1.
P2 (I/C) | The angle in radians whose sine is to be calculated.
Example 1 | $U100 = 1.570796 (F) /* Assign 1.570796 (2/π) to $U100 (and $U101)*/ $U200 = SIN($U100) (F) /* Write the result 1 of sine of 1.570796 to $U200 (and $U201)*/

■ TAN

Format | P1 = TAN( P2 ) | Data Type | F
Function | Calculates the tangent of the value of P2 and saves the result to P1.
P1 (I) | The result.
P2 (I/C) | The angle in radians whose tangent is to be calculated.
Example 1 | $U100 = 0.785398 (F) /* Assign 0.785398 to $U100 (and $U101)*/ $U200 = TAN($U100) (F) /* Write the result 1 of tangent of 0.785398 to $U200 (and $U201)*/

■ EXP

Format | P1 = EXP( P2 ) | Data Type | F
Function | Calculates the exponential of the value of P2 and saves the result to P1.
P1 (I) | The result.
P2 (I/C) | The floating point parameter whose exponential is to be calculated.
Example 1 | $U100 = 2.302585 (F) /* Assign 2.302585 to $U100 (and $U101)*/ $U200 = EXP($U100) (F) /* Write the result 10 of exponential of 2.302585 to $U200 (and $U201)*/

■ LOG

Format | P1 = LOG( P2 ) | Data Type | F
Function | Calculates the natural (base-e) logarithms of the value of P2 and saves the result to P1.
P1 (I) | The result.
P2 (I/C) | The floating point parameter whose logarithm is to be calculated.
Example 1 | $U100 = 9000 (F) /* Assign 9000 to $U100 (and $U101)*/ $U200 = LOG($U100) (F) /* Write the result 9.104980 of logarithms of 9000 to $U200 (and $U201)*/

■ LOG10

Format | P1 = LOG10( P2 ) | Data Type | F
Function | Calculates the common (base-10) logarithms of the value of P2 and saves the result to P1.
P1 (I) | The result.
P2 (I/C) | The floating point parameter whose logarithm is to be calculated.
Example 1 | $U100 = 9000 (F) /* Assign 9000 to $U100 (and $U101)*/ $U200 = LOG10($U100) (F) /* Write the result 3.954242 of logarithms of 9000 to $U200 (and $U201)*/

■ POW

Format | P1 = POW(P2,P3 ) | Data Type | U
Function | Calculates P2 raised to the power of P3 and saves the result to P1.
P1 (I) | The result.
P2 (I/C) | The base value.
P3 (I/C) | The exponent value.
Example 1 | $U100 = 2 (F) /* Assign 2 to $U100 (and $U101)*/ $U102 = 3 (F) /* Assign 3 to $U102 (and $U101)*/ $U200 = POW($U100,$U102) (F) /* Write the result 8(2 to the power of 3 is 8) to $U200 (and $U201)*/

■ SQRT

Format | P1 = SQRT( P2 ) | Data Type | F
Function | Calculates the square root of the value of P2 and saves the result to P1.
P1 (I) | The result.
P2 (I/C) | The nonnegative floating point value whose square root is to be calculated.
Example 1 | $U100 = 45.35 (F) /* Assign 45.35 to $U100 (and $U101)*/ $U200 = SQRT($U100) (F) /* Write the result 6.73 of square root of 45.35 to $U200 (and $U201)*/


15.4.22 Run Operation

Run Operation

■ RUN

Format | RUN(P1)
Function | Runs the executable P1 which is on the same PC. This command is only available for the runtime software on the PC.
P1 (I/A) | The name of the executable to be run.
Example 1 | RUN "ABC.exe" /* Run the program ABC */
Example 2 | $U10 = "XYZ.bat" RUN ($U10) /* Run the batch file XYZ */

■ RUNW

Format | P1 = RUNW(P2)
Function | Runs the executable P2 which is on the same PC and saves the result in P1. Note that the macro command following this one will not be executed until the program is closed. This command is only available for the runtime software on the PC.
P1 (I) | The word to receive the result.
P2 (I/A) | The name of the executable to be run.
Example 1 | $U10 = RUNW "ABC.exe" /* Run the program ABC and use $U10 to get the result. */ IF $U10 == 0 /* If the result is 0 then run the batch file XYZ. */ $U20 = "XYZ.bat" $U11 = RUNW ($U20) /* Run the batch file XYZ. */ ENDIF


16.1 Using Schedule

Using Schedule

The schedule function allows the HMI to perform a specified operation at the designated time. For example, the HMI can turn on a motor at the designated stat time and turn off that motor at the designated end time. Another example is that the HMI can set the running mode temperature at the designated start time of a process and reset the temperature to the standby temperature at the designated end time of that process.

Up to 80 schedules (Number 1 to Number 80) can be registered in a panel application. Each schedule can be programmed to either change the value of a specified PLC location or execute a specified macro at the designated time.

To use schedule in your application, please do the following:

  1. Setting up Schedule
    Described in Section 16.2.

  2. Creating and configuring Schedule Setting Table screen object
    Described in Section 16.3.

Notes:

  1. The time schedule features are one time actions. When the Start Time is reached, the designated device address is written to just once. The write action is not repeated.

  2. The Start Value and the Prohibit Action Bit are read only once at the beginning of the time range. Since regular readout is not possible, there may be a slight data communication delay that causes a slight delay in the Start Time. Due to the same reason, the delay may occur in the End Time.

  3. When the time range of a schedule is changed by whatever method and the current time is inside the time range, the start action is performed.

  4. When the same Start Times and End Times appear in multiple schedules, they are handled in order, starting from the smallest schedule number.

  5. If the Start Action is completed and then a power outage occurs, the End Action will be performed at the End Time after the power is resumed.


16.2 Setting up the Schedule

Setting up the Schedule

You can set up the schedule with the Schedule dialog box. To open the Schedule dialog box of a panel application, use one of the following methods:
1) In the Project Manager window, double-click the Schedule node ( [image] ) under Setup node of the concerned panel application
2) In the Project Manager window, right-click the Schedule node ( [image] ) under Setup node of the concerned panel application to bring out the pop-up menu and select Properties.
3) In the menu bar, click Panel ->Schedule. Note that the concerned panel application must be the current panel application or you will be working on the current panel application instead of the concerned panel application.

The Schedule dialog box contains the following pages. Some of the pages appear only when they are needed.

■ General
Described in Section 16.2.1.

■ Start Macro / End Macro
Described in Section 15.2.6.


16.2.1 General Settings

Schedule - General Settings

This section describes how to define the general settings for schedule. The following is an example of the General page of the Schedule dialog box.

To enable the schedule function for the application, check the Enable box in the dialog box.

The following describes how to set up a time schedule.

Item

 Description
Use | To register the schedule, check the Use box of the schedule first. During project development, you can un-register the schedule temporarily by un-checking the Use box. The entered settings will not be lost after un-checking.
No. | The pre-assigned identifier of the schedule.
Name | Specify the schedule name for each language. The schedule name will be shown on the Schedule Setting Table screen object. The maximum length of a schedule name is 24 characters. To select the language you are working on, use the Language combo box on the bottom of the dialog box.
Start Action Specify the action you want the HMI to perform at the Start time and the End time. The following table describes the five options.
Action | Description
Set Bit | Sets the specified bit to On at the Start Time. If the End Action is selected, it resets the specified bit to Off at the End Time. Example: Start Time: 09:00:00 End Time: 17:00:00 set bit
Reset Bit | Resets the specified bit to Off at the Start Time. If the End Action is selected, it sets the specified bit to On at the End Time. Example: Start Time: 09:00:00 End Time: 17:00:00 reset bit
Write Word | Writes the Start Value to the specified word at the Start Time. If the End Action is selected, it writes the End Value to the specified word at the End Time. Example: Start Time: 09:00:00 End Time: 17:00:00 Start Value: 100 End Value: 60 Write Address: W100 write word
Write 32-bit Word | Writes the Start Value to the specified double-word at the Start Time. If the End Action is selected, it writes the End Value to the specified double-word at the End Time.
Run Macro | Runs the specified Start Macro at the Start Time. If the End Action is selected, it runs the specified End Macro at the End Time. The corresponding Start Macro tab is added to the dialog box when the Run Macro action is selected. You can edit the Start Macro in the Start Macro tab. When the End Action is selected, the corresponding End Macro tab is added to the dialog box when the End Action is selected. You can edit the End Macro in the End Macro tab.
Note: The Start Time, End Time, Start Value, and End Value mentioned in the above table are specified in the Schedule Settings dialog box.
Write Address Specify the target address for the desired action.
For Action | Address Type
Set Bit | Bit address
Reset Bit | Bit address
Write Word | An address that can refer to a 16-bit datum
Write 32-bit Word | An address that can refer to a 32-bit datum
Power-On Action Select the action to perform when the power is turned on.
Power-On Action is Enabled (Checked)
If the HMI is turned on inside of the scheduled range, the Start Action is performed.
power on-inside
If the HMI is turned on outside of the scheduled range and the End Action is enabled, the End Action is performed.
power on-outside

Power-On Action is Disabled (Unchecked)
If the End Action is enabled, the End Action is performed when the HMI is turned on.
End Action Check the item to enable the End Action. If the End Action is enabled, the HMI will do one of the following operations at the designated End Time according to the selected Start Action.
Start Action | End Action
Set Bit | Resets the specified bit to Off at the End Time.
Reset Bit | Sets the specified bit to On at the End Time.
Write Word | Writes the End Value to the specified word at the End Time.
Write 32-bit Word | Writes the End Value to the specified double-word at the End Time.
Run Macro | Runs the specified End Macro.
Details | Click the Edit button to open the Schedule Details dialog box. You can specify the Start Time, End Time, Start Value, and End Value of the schedule in the Schedule Details dialog box. See Section 16.2.2 for details.
Prohibit Action Bit | Select to prohibit the schedule function by using the specified Prohibit Action Bit. At the Start Time, the value of the Prohibit Action Bit is read before the start action is performed. If the value is on, the schedule action is not performed for the current cycle.


16.2.2 Schedule Details Dialog Box

Schedule Details Dialog Box

In the Schedule Details dialog box, you can specify the Start Time/Date, End Time/Date, Start Value, and End Value of a schedule. To open the Schedule Details dialog box of a schedule, click the Edit button of the schedule in the Schedule dialog box.

Note: The schedules for normal days will be in effect on a special day if the schedule of the special day is disabled.

To disable a special day, you need to disable it before that day. For example, if a special day is 9/13, you have to disable the special day before 00:00:00 of 9/13.

Example 1

  1. The time range starts at 09:00:00 on Monday and ends at 18:00:00 on Thursday.
  2. The operators are allowed to modify the time range by using the Schedule Setting Table at runtime.
  3. The Start Value and End Value are floating point numbers. When the schedule starts, the HMI outputs the Start Value read from the internal words $U120 and $U121 to the specified Write Address. When the schedule ends, the HMI outputs the End Value read from the internal words $U122 and $U123 to the specified Write Address.

Example 2

  1. The time range can be set by a device/PLC. The memory block starts at W100 of the PLC will be used for setting the time range.

  2. Before a valid time range is set at runtime, the default time range specified in the dialog box will be used. The default time range starts at 09:00:00 and ends at 17:00:00 on every weekday.

  3. The operators are allowed to modify the time range by using the Schedule Setting Table at runtime.

  4. The Start Value and End Value are 16-bit unsigned integers. When the schedule starts, the HMI outputs the Start Value read from the PLC word location W30 to the specified Write Address. When the schedule ends, the HMI outputs the End Value read from the PLC word location W31 to the specified Write Address.

Example 3

  1. The time range starts at 07:30:00 and ends at 20:30:00 on April 10.

  2. It is not allowed to modify the time range in the Schedule Setting Table at runtime.

  3. The Start Value and End Value are 16-bit unsigned integers. When the schedule starts, the HMI writes 100 to the specified Write Address. When the schedule ends, the HMI writes 60 to the specified Write Address.

Example 4

  1. The start time and end time of a week is set in the dialog. For example, the time range starts at 07:00:00 and ends at 07:30:00 on Every Sunday.

  2. It is not allowed to modify the time range in the Schedule Setting Table at runtime.

The following describes the items in the Schedule Details dialog box.

Item |  |  | Description
Schedule No. |  |  | The number of the concerned schedule. The field is read only.
Type | Special Day |  | Select to make the schedule valid only for the specified day.
 | Individual start and end days |  | Select to indicate that the start day and end day of the schedule are different.
 | Single Schedule |  | Select to make a single schedule.
 | One-week Schedule |  | Select to make an one-week schedule.
Output Value |  | Constant | Select this item to indicate that the start value and the end value are constants.
 |  | Variable | Select this item to indicate that the start value and the end value are to be read from the specified addresses.
 |  | Data Type | Specify the data type of the start and end values.
 |  | Start Value | Specify the start value or the address to get the start value.
 |  | End Value | Specify the end value or the address to get the end value.
Time Range |  | Constant | Select to make the time range non-settable by a device/PLC.
 |  | Variable | Select to make the time range settable by a device/PLC.
 |  | Changeable with Schedule Setting Table | Select to allow the operators to change the time range by using the Schedule Setting Table at runtime.
 |  | Time Setting Address | Specify the starting address of the Time Setting Block that the device/PLC will use to set the time range of the schedule. See Section 16.2.3 for the details of the Time Setting Block.
 |  | Default Time | Select to allow the schedule to have a default time range. This item is visible only when the Variable is selected for the Time Range. The HMI will use the default time range for the schedule if there is no valid time range set by the PLC or by the operator yet.
 |  | Month | The month of the Special Day.
 |  | Day | The day of the Special Day.
 |  | Start Time | The start time of the schedule.
 |  | Start Day | The start day of the schedule. The item is visible when the “Individual start and end days” is selected.
 |  | End Time | The end time of the schedule.
 |  | End Day | The end day of the schedule. The item is visible when the “Individual start and end days” is selected.
 |  | Applied Days | Select the day or days in a week that the schedule will apply.


16.2.3 Time Setting Block

Time Setting Block

The following table shows the word arrangement of the Time Setting Block.

Word No. | Usage | Description
0 | Time Setting Control Word | bit 0 Bit 0: Time Acquisition Request Bit When the HMI detects that the Time Acquisition Request Bit turns on (from 0 to 1), it reads out from word 2 to word 10 of the Time Setting Block to get the Action Mode, the Start Time, and the End Time for the schedule.
1 | Time Setting Status Word | bit 1 Bit 0: Time Acquisition Completion Bit - 0: Either Time Acquisition is being performed or have not been performed - 1: Time Acquisition completed Bit 1: Error Notification Bit - 0: Time data is being replaced with correct data - 1: Time data contains an error Note: 1) The device/PLC must turn the Time Acquisition Request Bit off (1 to 0) when recognizes that the Time Acquisition Completion Bit turns on (0 to 1) 2) When the HMI detects that the Time Acquisition Request Bit is turned off (1 to 0), it turns off the Time Acquisition Completion Bit and Error Notification Bit immediately. time setting status word
2 | Action Mode | bit 1 Bit 0: End Action Bit - 0: Disable the End Action of the schedule - 1: Enable the End Action of the schedule Bit 1: Individual Day Specification Bit - 0: The Start Day and End Day of the schedule are the same. - 1: The Start Day and End Day of the schedule are different. Note: If Individual Day Specification Bit is 1 and two or more of the Start/End Day bits turn on simultaneously, an error occurs.
3 | Start Day or the month of the Special Day | Designate the day used as a trigger for the Start/End Action. bit 06 Bit 00: Sunday (0: None, 1: Designate) Bit 01: Monday (0: None, 1: Designate) Bit 02: Tuesday (0: None, 1: Designate) Bit 03: Wednesday (0: None, 1: Designate) Bit 04: Thursday (0: None, 1: Designate) Bit 05: Friday (0: None, 1: Designate) Bit 06: Saturday (0: None, 1: Designate) If the schedule is configured for the Special Day, the high byte of word 3 (Start Day) should contain the month (1-12) of the Special Day and the low byte of word 3 should contain the day (1-31) of the Special Day. The content of word 7 (End Day) should be 0. bit
4 | Start Time (Hour) | Hour: 0-23
5 | Start Time (Min.) | Minute: 0-59
6 | Start Time (Sec.) | Second: 0-59
7 | End Day or the day of the Special Day | Same as Start Day or the month of the Special Day.
8 | End Time (Hour) | Hour: 0-23
9 | End Time (Min.) | Minute: 0-59
10 | End Time (Sec.) | Second: 0-59


16.3.1 Basic Operations

Schedule Setting Table - Basic Operations

You can display a list of schedules by using the schedule setting table. And the operators are allowed to change the time range of a schedule with the Schedule Setting Table at runtime.

The above is an example of the schedule setting table. The first row is the title row. It displays the title of each column. The other rows display one schedule per row. You can create scroll button groups or scroll bars to scroll the contents. A schedule setting table can have seven columns. The following table describes the content of each column for a schedule setting table.

Column | Description
Schedule No. | The number of the associated schedule. This column is optional.
Schedule Name | The name of the associated schedule.
Status | The current status of the associated schedule. The status includes: Active, Inactive, Prohibited, Error.
Set | If the associated schedule is changeable, there is a button shown in the column. Click the button, you will see the following sample Set Schedule dialog that allows the operator to change the time range of the associated schedule. set set To set the dialog, please see Section 16.2.2 for details.
Start Time | The start time of the schedule.
End Time | The end time of the schedule.
Applied Days | The day or days in a week that the schedule will apply.

The text color and font of a row are determined by the settings in the General Page.


16.3.2 Operation Options

Schedule Setting Table - Operation Options

The following operation option can be added to a schedule setting table. Select and set the option in the Schedule Setting Table dialog box.

Options | Description
Touch Operation Control | The touch operation can be enabled or disabled either by a specified bit or by the current user level. Select and set this option in the Advanced page.
Visibility Control | You can show and hide a schedule setting table with a specified bit or the current user level. Select and set this option in the Visibility page.


16.3.3 Settings

Schedule Setting Table - Settings

You can complete all the settings of a schedule setting table in the Schedule Setting Table dialog box. This dialog box contains the following three pages.

■ General
Described in Section 16.3.4.

■ Advanced
Described in Section 4.4.5.

■ Visibility
Described in Section 4.4.6.


16.3.4 General Settings

Schedule Setting Table - General Settings

This section describes how to define the general settings for a schedule setting table. The following is an example of the General page of the Schedule Setting Table dialog box.

schedule setting table

The following table describes each property in the General page.

Property |  | Description
ID |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located and is unchangeable. The format of the IDs for the schedule setting table is SSTnnnn.
Note |  | You can type a note for the object.
Shape settings |  | For details about the following properties, see Section 4.3.4 Setting up the Shape of an Object. , Border Color, BG Color
Title | Language | Select a language so you can view and edit the language dependent settings in the Title group for that language. The language dependent properties in the Title group include Font and Title Name.
 | Font | Select a font for the title text.
 | Color | Select a color for the text.
 | BG Color | Select a color for the title row.
 | Show Schedule ID | Check this option if you want the schedule setting table to have the ID column.
 | Schedule No. | Specifies the title for the Schedule No. column. This field is available when Show Schedule ID is selected
 | Schedule Name/ Status/Set/ Start Time/ End Time/ Applied Days | Specifies the title for the Schedule Name/ Status/Set/ Start Time/ End Time/ Applied Days column.
Text | Language | Select a language so you can view and edit the language dependent settings in the Text group for that language. The language dependent properties in the Text group include Font and Abbreviation.
 | Font | Select a font for the text.
 | Color | Select a color for the text.
 | Date Format | Select a format for displaying the date.
 | Abbreviation | Specifies the abbreviation text for the Sunday/ Monday/Tuesday/ Wednesday/ Thursday/ Friday/Saturday.
Status Color | Active | Select a color that will be shown in Status column when the schedule starts.
 | Inactive | Select a color that will be shown in Status column when the schedule ends.
 | Prohibited | Select a color that will be shown in Status column when the schedule is prohibited.
 | Error | Select a color that will be shown in Status column when the schedule has an error.
Grid | Horizontal | Select this option if you want the schedule setting table to have horizontal grids.
 | Vertical | Select this option if you want the schedule setting table to have vertical grids.
 | Color | Select a color for the grids.
Line Spacing |  | Specifies the extra space in pixels for two adjacent rows of the schedule setting table.
Item Spacing |  | Specifies the extra space for every column of the schedule setting table.
Show Schedule | <Check Box> | All the schedules will be listed. Check the schedule No. if you want the schedule setting table to show the associated schedule.
 | Select All | Click the button to select all schedules.
 | Clear All | Click the button to clear all the selections.


17.1 Finding and Replacing

Finding and Replacing

You can use the Find/Replace tool to find and replace texts or addresses used in the project.


17.1.1 Finding/Replacing Texts or Addresses

Finding/Replacing Texts or Addresses

This section describes how to find or replace texts or addresses using the Find/Replace dockable window or the Find/Replace dialog box.

The following is an example of the Find/Replace dockable window for finding Text/Address.
To open the window, use the Find… command on the Edit > Find and Replace menu.

The following is an example of the Find/Replace dialog box for replacing Text/Address.
To open the dialog box, use Replace… command on the Edit > Find and Replace menu.

The following table describes each property in the Find/Replace dockable window/dialog box.

Property |  | Description
Find what | <Combo Box> | Type the text /address you want to search for, paste it from the clipboard or click a recent entry from the list.
 | Match case | Check this option to search only for occurrences that match the combination of uppercase and lowercase characters you enter in the Find what box.
 | Match whole word | Check this option to search only for whole words instead of matching the text entered in the Find what box as it occurs within words.
Look in | <Combo Box> | Select one of the following portions of the project you want to search in. Current screen, Current panel application’s screens, All screens, Current Macro, Current panel application’s macro, All macros, Current panel application’s tags, Tags of all panel applications.
 | Text/Address | Click any of the listed options to specify the type of text/address to search for.
In dockable window | Find | Click the button to find the specified text or address with selected options. The matches for the search appear in the Find Result window. Please see Section 17.1.2. for details about the Find Result window.
 | Replace… | Click the button to bring up the Find/Replace dialog box to do the replacing operation.
In dialog box | Replace with | Type the text you want to replace the find text with, paste it from the clipboard or click a recent entry from the list.
 | Find Next | Click the button to find the next occurrence of the text/address specified in the Find what box with selected options until there are no more occurrences. The matches for the search appear in the Find Result window. Please see Section 17.1.2. for details about the Find Result window.
 | Replace | Click this button to search for text that matches the find text, then replace it with the text in the Replace with field. The replacement information appears in the Find Result window. Please see Section 17.1.2. for details about the Find Result window.
 | Replace All | Replaces all occurrences of the find text with the text in the Replace with field. The replacement information appears in the Find Result window. Please see Section 17.1.2. for details about the Find Result window.
 | Close | Click the button to close the dialog box.


17.1.2 Find Result Window

Find Result Window

The Find Result window is a dockable window. It lists all the search matches and replacement information. Each information contains [Application Name]\[Screen Name]\[Object Name]([Object ID] at [Usage] Current operation). The following is an example of the Find Result window. You can browse the search matches or replacements by double-clicking each entry in the Fine Result Window.

You can right-click the Find Result window to get the pop-up menu with the following menu items:

Menu Item | Description
Clear | Clears all the entries in the window.


17.1.3 Quick Find and Replace in Macro Editor Window

Quick Find and Replace in Macro Editor Window

Quick find and replace allows you to search the text in a currently active macro editor window. The selection moves from match to match, allowing you to review each match within its context.
In the currently active macro editor window, quick find and replace can search or replace through a macro forward from the insertion point. The search or replace automatically continues past the end of the macro into the unsearched portion. A message appears when the entire macro has been searched or replaced.

Note: The matches found are not listed in the Find Results window
To display the Replace dialog box, use the Replace… command on the Edit > Find and Replace menu. The following is an example of the Replace dialog.

The following table describes each property in the Replace dialog box.

Property

 Description
Find what | Type the text you want to search for or paste it from the clipboard.
Replace with | Type the text you want to replace the found text with or paste it from the clipboard.
Match whole word only | Check this option to search only for whole words rather than matching the text you enter in the Find what box as it occurs within words.
Match case | Check this option to search only for occurrences that match the combination of uppercase and lowercase characters you enter in the Find what box.
Replace in Select one of the following portions for the project you want to search in
Option | Description
Selection | Searches or replaces only the selected text in the currently active document.
Whole file | Searches or replaces all content displayed in this window for the Find what string.
Find Next | Click the button to find the next occurrence of the text specified in the Find what box with the selected options until there are no more occurrences. The matches for the search will be highlighted in the window.
Replace | Click this button to search for text that matches the found text, and then replace it with the text in the Replace with field.
Replace All | Replaces all occurrences of the found text with the text in the Replace with field.
Cancel | Click the button to close the dialog box.


17.2 Screen Overview

Screen Overview

Screen Overview shows the relations between screens of the current application. The relationship between screens is depicted by a line with an arrow head which is called the link. A link is a relationship between screens with the screen button or page selector.
To open the Screen Overview, check the Screen Overview menu item in the View menu. The following is an example of the Screen Overview.

With the selected screen and links, you may do the following:
* Open the screen or screen properties
Double-click the selected screen to open it if it is not already opened.
Double-click the selected screen to open its property sheet if it is not already opened.

* Move the selected screen and its links
Left-click anywhere inside the selected screen and hold down the button. When the cursor changes to [image], drag the mouse to move the selection to another area of the screen overview window. It will float over the rest of the window, allowing you to position it wherever you want it to be. Release the mouse button to "let go" of the selection.

The following table describes each icon in the Screen Overview window.

Icon

 Tool Tip Description
Refresh | Reload the current content of the screens. Available only when the relations between screens are changed.
New Screen | Create a new screen for the current panel application.
Add Screen Button Link | Add a new screen button for the selected screen and set up the properties of the screen button in the pop-up properties dialog. Available only when a screen is selected.
Add Page Selector Link | Add a new pages selector for the selected screen and set up the properties of the page selector in the pop-up properties dialog. Available only when a screen is selected.
Zoom In | Make the screen overview one step bigger.
Zoom Out | Make the screen overview one step smaller.
Normal Size | Restore the screen overview to normal size.
Show Content Show all the contents of the screens. For example:
Show Name/Number Show screen name and screen number in a rectangle to indicate a screen. For example:
Print | Print the application information, screen index and screen overview. The application information includes Panel Name, Model, Start Screen, Total Screens, Application Name. Screen Index is used to list all the screens and the page where the screen is located.
Print Preview Preview the screen overview before printing. The following is examples of the Print Preview Window.

Choose from the following commands to customize your page preview.
Click the button | To do this
Print… | Set printing options and print the page.
Next Page | Display the next page to be printed.
Prev Page | Display the previous page to be printed.
One Page | Display only one full page in the screen.
Zoom In | Increase the magnification.
Zoom Out | Decrease the magnification.
Close | Close the Print Preview window.

You can right-click the blank space in the Screen Overview to get the pop-up menu with the following menu items:

Menu Item | Description
New Screen… | Create a new screen for the current panel application and display the screen overview.
Select All | Select all the screens and links.

You can right-click the selected screen to get the pop-up menu with the following menu items:

Menu Item | Description
Add Screen Link… | Add a new screen button for the selected screen and set up the properties of the screen button in the pop-up properties dialog.
Open Screen… | Open the selected screen.
Delete Screen | Delete the selected screen.
Screen Properties… | Open the screen property dialog box of the selected screen.

You can right-click the selected link to get the pop-up menu with the following menu items:

Menu Item | Description
Insert Point | Add a point at the specified position.
Delete Point | Delete a selected point.
Delete Screen Link | Delete the selected link.
Delete Screen Link and Button | Delete the selected link and its associated button.
Screen Link Properties | Set the screen link properties in the following pop-up dialog.


17.3 Link Overview

Link Overview

Link Overview shows the relations between devices/servers and panels of the entire project. The Link Overview is a block and line diagram. The block indicates a target panel or the device/server. The line indicates the link. The line with an arrow header indicates the link relationship.
There are two types of blocks in the link overview window: Target Panel Block and Device/Server Block.
The Target Panel Block includes application Name and supported link ports, such as C stands for COM port (C1 = COM1), E stands for Ethernet port. The Device/Server Block includes the device type.

To open the Link Overview, check the Link Overview menu item in the View menu. The following is an example of the Link Overview.

You can position the mouse over a target panel block, a device/server block, or a link to select the related item. With the selected item, you may do the following:

■ Open the properties dialog to set up item properties
Double-click the target panel block to open the General Setup dialog box to set up the panel application.
Double-click the link to open the Link Properties dialog box to set up the link.
Double-click the device/server block to open the Link Properties property sheet to select the device for the link.

■ Move the selected block
Left-click anywhere inside the selected block and hold down the button. When the cursor changes to [image] , drag the mouse to move the selection to another area of the link overview window. It will "float" over the rest of the window, allowing you to position it wherever you want it to be. Release the mouse button to "let go" of the selection.

■ Shape the connection line
Position the mouse pointer over one of the points on the selected connection line, drag the point until the connection line is the shape and size you want.

■ Create a link
1. Position the mouse pointer over the point of the communication port. For example:

2. Drag the mouse to move the point to the communication port of another panel or device/server. For example:

3. Release the mouse button to bring up the Link Properties dialog box to set up the new link.

4. Press the OK button to accept the settings or press the Cancel button to cancel the operations. The following is an example of the new links between two panels.

The following table describes each icon in the Link Overview window.

Icon | Tool Tip | Description
 | Add Panel Application | Add a new panel application, set up the panel type and application name in the pop-up property sheet.
 | Add Link | Add a new link for the selected panel and set up the link properties in the pop-up property sheet. Only available when the target panel is the current selection.
 | Add Device/Server | Add a new Device/Server.
 | Refresh | Reload the current relations between panels and the device/server of the project.
 | Show Relationship | Display lines with an arrow head to show the relationship between panels and the device/server.

You can right-click the target panel block in the Link Overview to get the pop-up menu with the following menu items:

Menu Item | Description
Add Link | Create a new communication link.
Delete Panel Application | Delete the panel application.
Panel Application Properties | Open the General Setup dialog box.

You can right-click the link in the Link Overview to get the pop-up menu with the following menu items:

Menu Item | Description
Insert Point | Add a point at the specified position.
Delete Point | Delete a selected point.
Delete Link | Delete the associated communication link.
Link Properties | Open the Link Properties dialog box of the associated communication link.

You can right-click the blank place in the Link Overview to get the pop-up menu with the following menu items:

Menu Item | Description
Add Device/Server | Create a new Device/Server
Add Panel Application | Create a new panel application.
Refresh | Reload the current relations between panels and device/server of the project.

You can right-click the Device/Server block in the Link Overview to get the pop-up menu with the following menu items:

Menu Item | Description
Remove Device/Server | Delete the selected Device/Server.
Device/Server Properties | Open the Link Properties dialog box


17.4 Object Library

Object Library

The Object Library Window is a dockable window. It makes configuring, managing and sharing user-defined objects easier. It contains default objects, common objects, object groups and global objects.

■ Default Objects
Each type of screen objects can have one default object and the default objects are saved in the object library. The settings of a default object will be used as the initial settings for a newly created object of the same type. To view all the default objects for the project, you can click the window tab named Objects.

You are allowed to specify any object as the default object for the type of that object. The old default object of the same type is discarded when you specify a new default object. To make an object as a default object, right-click the object to get the pop-up menu and click the Save as Default command in the pop-up menu.

■ Common Objects/Object Groups
The common object/object group can be used in the whole project. To view the common objects/object groups, you can click the window tab with a user defined name.

To make an object as a common object/object group, right-click the object/object group to get the pop-up menu and click the Save to Object Library… command to bring up the Save to Object Library dialog. In the dialog, you may type a name and select a user defined category for the common object/object group.

■ Global Objects
Global objects can be used in the entire project. Any modification of a global object will be applied everywhere it is used in the project. To view all the global objects for the project, you can click the window tab named Global.

To make an object as a global object, right-click the object to get the pop-up menu and click the Save as Global Object… command to bring up the Save to Object Library dialog. In the dialog, you may type a name and select a user defined category for the global object.

To open the Object Library, check the Object Library menu item in the View menu. The following is an example of the Object Library Overview.

You can right-click the tab on the top of Object Library to get the pop-up menu with the following menu items:

Menu Item | Description
Add Category… | Create a new category for common objects and object groups. The left dialog is an example of the Add Category dialog for you to specify the category name and icon size for displaying the object of the new category.
Delete Category… | Delete the selected category.
Category Properties… | Click the command to bring up the left sample dialog to set up category properties. You can rename the category in the dialog and define the icon size for the object to be displayed.
Import Library… | Import an existing category from an object library file (*.pol)
Export Library… | Export a selected category of the object library to an object library file (*.pol)
Clean Unused Data in Library | Click the command to clean all the unused objects in the selected category.

You can right-click the selected object in the Global category window or the user defined category window to get the pop-up menu with the following menu items:

Menu Item | Description
Rename Object… | Click the command to bring up the Rename dialog to rename the selected object.
Delete Selected Objects… | Delete the selected object.
Object Properties… | Click the command to bring up the object properties dialog. Only available in the Global category.


17.5 Object List

Object List

The Object List window is a dockable window. It shows the screen objects and the associated I/O addresses.
You can modify the object properties in the Object Property dialog box by double-clicking each entry in the Object List window.
You can right-click anywhere inside the Object List window to get the pop-up menu. In the pop-up menu, check any of the menu items such as ID, Write, Monitor, Read, Notification, TCtrl, VCtrl, and Note to display that column. Use the Select All command in the pop-up menu to display all the columns.

To open the Object List, check the Object List menu item in the View menu. The following is an example of the Object List.


17.6 I/O List

I/O List

The I/O list window is a dockable window. It shows all the I/O addresses of the project and their owners.
You can modify the address by double-clicking each entry in the I/O list window.
If the address is used by an object, you can redefine the address in the pop-up property dialog of the associated object.
If the address is used by a Macro, you can change the address in the macro editor window.

You can also click the Address column of the selected entry to type in the address directly.
To open the I/O List, check the I/O List menu item in the View menu. The following is an example of the I/O List.


18.1 Compiling an Application

Compiling an Application

Using the compiler offered by the software, you can verify the correctness of all the settings and designs, optimize the communication with the connected controllers, interpret macros into compact and ready-to-execute codes, and build the panel runtime data to be executed by the HMI engine of the target panel. The panel runtime data will be generated and saved into a PL3 file after the user compiles an application.


18.1.1 Compiling an Application

Compiling an Application

To compile an application, you can do the following:

  1. In the menu bar, click Panel to bring up the Panel sub-menu. Click Compile… in the Panel sub-menu.
    Alternatively, click [image] the Compile icon in the main toolbar.

  2. The Compile Panel Application dialog will pop-up and show the progress of the compiling process. If you want to cancel the compiling operation, click the Cancel button.
    The following is an example of the Compile Panel Application dialog in the process of compiling.

  3. After the compilation is complete, the Compile Panel Application dialog will display the compilation information according to the result and the target panel model. And all the details will be listed in the Build List Window. To know about the Built List Window, please see Section 18.1.3 Built List Window.

The following are the examples of the Compile Panel Application dialog and the Built List Window when the compilation is complete.

Panel Model and Compile Result | Compile Panel Application dialog and Build List Window
If the compilation fails | The Compile Panel Application dialog will display the error count and warning count.
If the target panel is HMI, and the compilation is completed successfully | The Compile Panel Application dialog will display the total file size of the panel runtime data. The runtime data of the current panel application will be saved into a file named Project Name_Application Name.pl3. The extended data will be saved on a mass storage device. You need to specify the device for extended data saving in the Custom page of General Setup properties dialog box. Please see details in Section 3.1.2 Custom Settings.
If the target panel is the HMI Runtime, and the compilation is completed successfully | The Compile Panel Application dialog will display the total file size of the panel runtime data and the total static I/O point count. The runtime data of the current panel application will be saved into a file named Project Name_Application Name.pe3. To find the details about the I/O point statistics which includes Bit I/O count, Word I/O count, Indexed Bit count and Indexed Word count, please open the build list window.


18.1.2 Building a Panel Runtime Package

Building a Panel Runtime Package

A Panel Runtime Package (PRP) includes the panel runtime data and system programs. To build a panel runtime package, you can do the following:

  1. In the menu bar, click Panel to bring up the Panel sub-menu. Click Build Panel Runtime Package (PRP)…in the Panel sub-menu.

  2. If the compilation is completed successfully, you will be asked to specify the file name in the Save As… dialog to save the package into a PRP file.

Note: The PRP file that includes the application and the system programs is portable. You can save the PRP file anywhere on the PC or a USB disk and download it to the target panel with the software or Data Transfer Helper (DTH).

PRP Password for PRP

The software will show you a password after it built a PRP (Panel Runtime Package) file successfully. We call the password a PRP password. You can use it when a password is required while you are updating an HMI unit with the PRP file. In the past, if someone else was responsible for updating an HMI unit with a PRP file, you need to give that person the developer password. As the developer password allows a person to do almost anything on the HMI units, giving out the developer password is risky. Now with the provision of the PRP password, you will no longer have this concern.

Notes:

1) A PRP password is derived from the developer password of a project. The PRP password of a project will remain the same if the developer password is not changed.

2) The developer password is still usable for updating HMI units with PRP file.

3) Only the HMI units with the OS of V2.0.5.00 or later are able to recognize PRP passwords.


18.1.3 Build a List Window

Build a List Window

All the detailed information about the compiling process, error messages, and warning messages are listed in the Build List window. The Build List Window is a dockable window. In the window, error messages will have an error icon ( [image] ) in front of the entry, and warning messages will have a warning icon ( [image] ) in front of the entry.

The following is an example of the Build List window:

You can right-click the Build List window to get the pop-up menu with the following menu items:

Menu Item | Description
Clear | Clears all the entries in the window.


18.2 Simulating an Application

Simulating an Application

Simulator is a convenient tool for design verification. With the simulator, you don’t need to download the application to the target panel. On a PC, you can simulate how the application runs on the target panel.
There are two types of simulation offered by the software: On-line Simulation and Off-line Simulation.


18.2.1 On-line/Off-line Simulation

On-line/Off-line Simulation

Type | Description
Off-line simulation | In the off-line simulation mode, the PC will create a memory block for all registers of the device/server used in the application. The simulator will communicate with the memory on the PC, so there will never be a communication error generated with the off-line simulator. Off-line simulation is good for screen visual effects, object operation, and logic verification.
On-line simulation | The on-line simulator is similar to the off-line simulator except that the PC tries to communicate with the device/server instead of the created virtual registers in its memory. On-line simulator is used to troubleshoot communication problems.


18.2.2 Simulating an Application

Simulating an Application

To simulate an application, you can do the following:

  1. The application must be saved and compiled before the simulator can start.

  2. Using the software:
    In the menu bar, click Tools to bring up the Tools sub-menu. Click Run Off-line Simulation…in the Panel sub-menu.
    Alternatively, click the [image] Run Off-line Simulation icon in the main toolbar.

    Using PanelSim.exe, an independent executable program:
    Click Start -> All Programs -> ”The software” -> [image] PanelSim

  3. In the PanelSim startup dialog, click Run button to start simulation

Note: When simulating an application in the software, the above dialog will show up and then close automatically before the simulation starts. In this case, ignore the dialog.

  4. Simulate the application in the simulator window. The simulator window is similar in appearance to the target panel. The following is an example of the simulator window while running the application.


18.3 Transferring Data Between PC and Panel

Transferring Data Between PC and Panel

In the software, you can transfer the panel runtime data using any of the Serial port, Ethernet port or USB client port whenever the target panel is running.
You can also use a Micro SD card or USB memory stick for the trouble-free update of the application.


18.3.1 Downloading Data to Panel

Downloading Data to Panel
  1. To download data by using the software, you may do the followings:
    In the menu bar, click Panel to bring up the Panel sub-menu. Click Download…in the Panel sub-menu.
    Alternatively, click the [image] Download icon on the standard toolbar.
  2. In the Download Data to Panel dialog, select the options and settings before downloading.
    The following is an example of the Download Data to Panel dialog.

Note: If the application is modified, the software will automatically compile the application before downloading.

The following table describes each property in the Download Data to Panel dialog.

Property | Description
Data Source | Select the data you want to download. The current panel application is the data generated by the compiler. The panel runtime data package includes the current panel application data and system programs saved in a PRP file. You need to select a PRP file to download if the Panel Runtime Data Package (PRP) File option is selected.
Download | Check Runtime Data and System Programs, Configuration Data, Time and Date if you want to download them. Available only when the data source is the current panel application. You can select the configuration data to backup the panel application to the target panel. The data format is the same as the Panel Application Files(PLF)
Keep Previous Data | Check the previous data of User Data ($N), Alarm History, Recipe Data or Sampled Data if you want the selected data to be kept instead of being cleared after downloading. The selected data will be kept only if: 1) The previous application was compiled and downloaded by the software V1.2.26 or later. 2) The configurations of battery backed user memory, recipe blocks, data loggers, alarm blocks, and the alarm logging buffer for both the old and new applications are exactly the same.
Link Settings | Select the communication port that is used to download the data.
 | Communication Port | Description
 | COM | Use the serial port to perform the download and select the communication port and the baud rate used.
 | Ethernet | Use the Ethernet to perform the download. Type the IP Address where the target panel is located, or choose a recently connected entry from the list.
 | USB | Use the USB to perform the download. You need to install the USB driver before transferring data with the USB cable. To know how to install a USB driver, please see Section 18.3.3.
 | If the target panel has sufficient memory, you can perform data transmission in safe mode.
 | Mode | Description
 | Direct Mode | Download data directly to flash memory.
 | Safe Mode | Buffer the data in the RAM of the target panel to prevent download problems in large files. The transmission has to be done successfully before the data in the SDRAM will be saved to the flash memory.
Status | Display the transmission status and progress.
Start | Click the button to start download the data.
Cancel | Cancel the download operation.
Close | Exit the dialog.

Note: On the standard toolbar, you can click [image] the Download Immediately icon to immediately download data using the existing settings of the Download Data to Panel dialog to the target panel.


18.3.2 Uploading Data from Panel

Uploading Data from Panel

To upload data using the software, you may do the following:

  1. In the menu bar, click Panel to bring up the Panel sub-menu, then click Upload… in the Panel sub-menu.
  2. In the Upload Data from Panel dialog, select the options and settings before uploading

The following is an example of the Upload Data from Panel dialog.

Note: If the application is modified, the software will automatically compile the application before downloading.

The following table describes each property in the Upload Data from Panel dialog.

Property | Description
Upload | Select the data you want to upload and save the uploaded data to the specified file. You can import existing panel applications from the configuration data file (PLF file).
Link Settings | Select the communication port that is used to upload the data.
 | Communication Port | Description
 | COM | Use the serial port to perform the upload and select the communication port and the baud rate used.
 | Ethernet | Use the Ethernet to perform the upload. Type the IP Address where the target panel is located, or choose a recently connected entry from the list.
 | USB | Use the USB to perform the upload. You need to install the USB driver before transferring data with the USB cable. To know how to install a USB driver, please see Section 18.3.3.
Status | Display the transmission status and progress.
Start | Click the button to start uploading the data.
Cancel | Cancel the upload operation.
Close | Exit the dialog.


18.3.3 Installing a USB Driver to Transfer Data Using a USB Cable

Installing a USB Driver to Transfer Data Using a USB Cable

This section describes how to install a USB driver for downloading an application to the target panel on a Microsoft Windows based computer.

Step 1: Log on to your computer as an administrator.

Step 2: Connect the computer and the target panel through a USB cable

Step 3: Start installing the driver

You can use one of the following methods as appropriate to begin installing the driver:

■ With the Found New Hardware Wizard
Power on the target panel, “Found New Hardware Wizard” will automatically pop-up in Windows to guide you to install the driver.

■ With the Upgrade Device Driver Wizard

If the “Found New Hardware Wizard” does not appear or if it is turned off, you can do the following to bring out the Upgrade Device Driver wizard:
1. On the desktop, right-click My Computer, and then click Manage.
2. Under System Tools, click Device Manager.
The devices that are installed on the computer are listed in the right pane.
3. Expand the Other devices category
4. Right-click the device named Neo HMI for which you want to install the driver, and then click Properties.

5. Click the Driver tab, and then click Update Driver. The Upgrade Device Driver wizard starts.

Step 4: Install the driver by following the wizard instructions

1. Click Next.

2. Click Install from a list or specific location (Advanced), and then click Next.

3. Click Search for the best driver in these locations, and then select Include this location in the search, click Browse, select \Usb in the software’s installation folder as the folder that contains drivers, and then click Next.

4. Click Continue Anyway if the Hardware Installation dialog box shown as below appears.

Step 5: Click Finish to complete installing the driver for Neo HMI

Note: The first time you connect a target panel that plugs into any of the USB ports on the computer, you need to install a driver for that device.

After installing the driver, you can use the USB to transfer data between the PC and the target panel which supports USB transferring. In the software, you need to select USB as the link settings in the Download Data to Panel/Upload Data from Panel dialog box before transferring.


19.1 Setting/Starting/Ending Transparent Communication

Setting/Starting/Ending Transparent Communication

Transparent communication is a serial port communication method used to link a PC and a device/server for control and data acquisition through a target panel, as shown below. The target panel in the link is just like a transparent device that makes the communication work as if a PC is connected to the device/server directly.


19.1.1 Setting Transparent Communication Through COM Port

Setting Transparent Communication Through COM Port

To make the target panel transparent and acquire or control the device data on the PC, you need to set Transparent Communication.

To set Transparent Communication, click Tools to bring up the Tools sub-menu in the menu bar. Then, click Set Transparent Communication…in the Tools sub-menu.
The following is an example of a link illustration and Set Transparent Communication dialog.

If the target panel has an application with the link settings that are exactly the same as the real connection between the target panel and a Device/Server, the user only needs to press [image] button to get all the communication parameters from the panel before starting the transparent communication.

The following is an example of the link settings between the target panel and a Device/Server

Note: The communication parameters setting in the Link Properties dialog must be identical to the communication parameters of the Device/Server.

If the target panel has no application or if the link settings are not the same as the actual connection, the user needs to redefine the communication parameter in the dialog before starting the transparent communication.


19.1.2. Setting Transparent Communication Through Ethernet

Setting Transparent Communication Through Ethernet

When you want to monitor or modify something of your PLC with the PLC software running on a PC and the only serial port of the PLC is connected to the HMI unit, what can you do without disconnecting the HMI and reconnecting the PC with the PLC? The solution is right here. The Software allows you to make the HMI unit work as an Ethernet-to-serial converter and therefore a virtual COM port is provided for the PLC software to communicate with the PLC through the Ethernet and the HMI unit. Thanks to this feature, working on the operator interface and the PLC program at the same time with only one serial port is easier than before.

The following is an example of a link illustration.

To Install the driver for the transparent communication through Ethernet, please do the following:

1) Use "Run as Administrator" to start the Software.

2) Click the menu item "Tools > Transparent Communication > Ethernet > Set" to bring up the Transparent Communication Through Ethernet dialog box.

3) If the status of Virtual Serial Port Driver in the dialog box is "Not installed", click the Install button to install the driver. If the status is "Installed", the driver has been installed and you don't need to install it again.

4) During the installation, skip the automatic search for the driver/software offered by the Windows as the driver is already in the local disk.

5) After the installation is done successfully, the dialog box displays the following contents.

The following table describes each item on the keypad screen.

Property | Description
PC's COM Port | The virtual COM port provided by the installed driver. You need to configure the PLC software to use this port to communicate with the PLC.
HMI's IP Address | The IP address of the HMI unit that is used as an Ethernet-to-serial converter. The default address is 192.168.0.100.
HMI's COM Port | The serial port of the HMI unit that is physically connected to the PLC. The default is COM1.

To start or end the transparent communication through Ethernet, please do the following:

1) Connect the HMI unit to the LAN and turn on its power. Run the Panel Setup.

a. Press General button to open the General dialog box.

b. Set the Transparent Communication to True in the General dialog box.

c. Press OK button to save the setting.

2) Run the Software.

a. Click the menu item "Tools | Transparent Communication | Ethernet | Set..." to bring up the Transparent Communication Through Ethernet dialog box.

b. Make sure the status of the Virtual Serial Port Driver is "Installed".

c. Memorize the PC's COM Port, i.e. the virtual COM port provided by the screen design software, to set up the PLC software later.

d. Set the Panel's IP Address to the HMI unit's IP address.

e. Set the Panel's COM Port to the serial port of the HMI unit that is connected to the PLC.

f. Click the "Start Transparent Communication" button. The HMI unit will display the message box as shown below when it is ready to perform the transparent communication.

g. Click Close button to exit the dialog box.

3) Run the PLC software.

a. Set the serial communication port to the virtual COM port provided by the Software.

b. Start your operation.

4) To end the transparent communication, close the PLC software first then click the menu item "Tools | Transparent Communication | Ethernet | End" on the menu bar of the Software.


19.1.3 Starting/Ending Transparent Communication

Starting/Ending Transparent Communication

■ Start Transparent Communication
To start transparent communication, you can do one of the following:
1. Click the [image] button in the Set Transparent Communication dialog
2. Click Tools to bring up the Tools sub-menu from the menu bar. Then, click Start Transparent Communication in the Tools sub-menu.

If communication is successfully established, the target panel will display the following dialog, and then you can control and acquire the device data with the PC.

■ End Transparent Communication
To end transparent communication, you can do one of the following:
1. Click the [image] button in the Set Transparent Communication dialog in the software.
2. Click Tools to bring up the Tools sub-menu in the menu bar. Then, click End Transparent Communication in the Tools sub-menu.
3. Click the End button on the dialog that is shown on the target panel


19.2 Data Transfer Helper (DTH)

Data Transfer Helper (DTH)

Data Transfer Helper (DTH) is an independent executable program. It helps you retrieve/update application data through a serial port or Ethernet port

To run the DTH, choose Start > All Programs > “The software” > [image] Data Transfer Helper (DTH).

You can use DTH to download recipe data or OS & AP in a specified file from the PC to the HMI. With DTH, you can also get logged data, logged operations, alarm counts, logged alarms, recipe data, OS & AP from the HMI, and save the data in a specified file on the PC. The following dialog is an example of the Data Transfer Helper:

The following table describes each property in the Download Data to Panel dialog.

Property | Description
Operation Type | Select an operation you want to perform with the target panel
Link Settings | Select the communication port that is used to connect to the target panel.
 | Communication Port | Description
 | Serial Port (COM) | Use the serial port to perform the operation and select a communication port and the baud rate used.
 | Ethernet | Use the Ethernet to perform the operation. Type the IP Address where the target panel is located, or choose a recently connected entry from the list.
Password | Enter a valid password of user level 8 or higher. (* the default password of user level 8 is 88888888)
Status | Display the transmission status and progress.
Abort | Stop the communication
Next | Click the button to start the operation and do the settings for the selected operation if communication is established successfully.
Finish | Exit the dialog.
Cancel | Cancel the operation.


19.2.1 Operation Settings

Operation Settings

The following table lists all the operation types supported by DTH and shows how to make the settings for each type.

Operation Type | Settings
Get logged data (.csv/.txt) | Saves the data collected by the selected data logger in a specified file. The above dialog lists all the data loggers in the application. You may do the following in the dialog: * Check the data logger you want to get the data from. * Click [image] button in Time Range to bring up the Time Range dialog to specify the duration of the collected data. For more about the Time Range dialog, please see Section 19.2.3. * Type in a file name or click [image] button of Save To (File Name) to bring up the Open File dialog to specify the file name.
Get logged operations(.csv/.txt) | Saves the operation history in a text file or a csv file. You need to do the following in the dialog: * Click [image] button to bring up the Time Range dialog to specify the duration of the operation history data. For more about the Time Range dialog, please see Section 19.2.3. * Type in a file name or click [image] button to bring up the Open File dialog to specify the file name.
Get alarm counts(.csv/.txt) | Saves the alarm counts in a text file or a csv file. Type in a file name or click [image] button to bring up the Open File dialog to specify the file name in CSV or TXT format
Get logged alarms(.csv/.txt) | Saves the alarm history in a text file or a csv file. You may do the following in the dialog: * Click [image] button of Time Range to bring up the Time Range dialog to specify the duration of the alarm history data. For more about the Time Range dialog, please see Section 19.2.3. * Type in a file name or click [image] button to bring up the Open File dialog to specify the file name.
Get recipe data(.csv/.txt/.prd) | Saves the data of the specified recipe block in a file using the CSV/TXT/PRD format. The above dialog lists all the recipe blocks in the application. You may do the following in the dialog: * Check the recipe block you want to get the data from. * Type in a file name or click [image] button of Save To (File Name) to bring up the Open File dialog to specify the file name.
Update recipe data(.csv/.txt/.prd) | Updates the data of the selected recipe block from a CSV or TXT or PRP file. The above dialog lists all the recipe blocks in the application. You may do the following in the dialog: * Check the recipe block you want to update the data of. * Type in a file name or click [image] button of Save To (File Name) to bring up the Open File dialog to specify the file name.
Get OS & AP (.prp) | You need to enter a valid developer password to get and save the system programs and application runtime data in a specified PRP file..
Update OS & AP(.prp) | Updates the system programs and the application runtime data from a specified PRP file. The original system programs and the application runtime data are replaced by the new ones.


19.2.2 Operation Status

Operation Status

All the operation history and status will be shown in the Operation Status dialog. The following is an example of the Operation Status dialog.


19.2.3 Time Range

Time Range

The Time Range dialog is used to set up the time duration of the collected data.

The following table describes each property in the Time Range dialog.

Property | Description
All | Select this option to get all the data from the associated memory.
Last day(s) | Select this option to get the data during the last number of days. If you want to include today, check the Include today option.
Last hour(s) | Select this option to get the data during the last number of hours. If you want to include the current hour, check the Include current hour option.
Custom | Select this option to customize the duration. You need to specify the start date and time and the end date and time


19.3.1 Exporting Text

Exporting Text

You can export texts from the current panel application to a panel text file (PTX). The PTX file can be opened and edited in the TextEditor. For more about the TextEditor, please see details in Section 19.3.3.

To export texts of the panel application, click Tools to bring up the Tools sub-menu from the menu bar. And then click Export Text…in the Tools sub-menu.

The following is an example of the Export Text dialog.

Note: If the application only uses a single language, the export text operation will be invalid.


19.3.2 Importing Text

Importing Text

You can import or export texts from a panel text file (PTX) to the selected panel application.

To import texts to the panel application, click Tools to bring up the Tools sub-menu in the menu bar. Then, click Import Text…in the Tools sub-menu.

The following is an example of the Import Text dialog.

The following table describes each property in the Import Text dialog.

Property | Description
Panel Application | Select a panel application where you want to save the imported texts.
To be Imported | Check the languages of the text you want to be imported.
Open… | Click the button to open the PTX file. Note: The panel application must contain the same language name as the reference language name specified in the imported PTX file. Otherwise, the file is not allowed to be imported.
Close | Close the dialog.
Import Criteria | Select the Same Usage option to import texts to the destination with the same usage as the source in the file. Select the Same Reference Text option to import texts to the destination with the same reference text.
Import | Click the button to import all the selected texts.


19.3.3 TextEditor

TextEditor

TextEditor is an independent executable program. It is used to edit all the screen texts in multi-languages
To run TextEditor, choose Start > All Programs > “The software” > [image] TextEditor. Alternatively, click Tools to bring up the Tools sub-menu from the menu bar. Then, click TextEditor in the Tools sub-menu.

The following is an example of the TextEditor:

The following table lists all the buttons on the toolbar.

Icon | Tool Tip | Description
 | Open | Open the PTX file which saved all the screen texts in multi-language. You can create the PTX file by using Export Text Tool provided by the software. Please see details about Export Text in Section 19.3.1.
 | Save | Save the current PTX file.
 | Cut | Cut the selection and put it on the Clipboard.
 | Copy | Copy the selection and put it on the Clipboard.
 | Paste | Place the Clipboard contents on to the current screen.
 | Alt+Dn | Move the selection down from the previous item
 | Alt+Up | Move the selection up from the next item


19.4 Recipe Editor

Recipe Editor

Recipe Editor is an independent executable program. It can be used to view and edit recipe data saved as a PRD file on the PC.
To run the Recipe Editor, choose Start > All Programs > “The software” > [image] RecipeEditor.
You can display the recipe data row-wise or column wise.

The following is an example of RecipeEditor displayed row-wise. You can click [image] the button on the toolbar or use the Row-wise command in the View menu. Row-wise means that the recipe number is used to index the row.

The following is an example of the RecipeEditor displayed column-wise. You can click [image] the button on the toolbar or use the Column-wise command in the View menu. Column-wise means that the recipe number is used to index the column.


20.1 System Screens

System Screens

System screens are screens that are built into an application and can be accessed by end-users in the target panel. System screens are window screens. Each of them has a title bar at the top of the screen that displays a line of text. The text indicates the purpose of the screen. You can press the title bar and hold it down to move the screen to the position you want and then release the pressing to locate the screen.

The system screens include:
     Built-in keypads that are used to input numbers, ASCII characters, Chinese characters or passwords.
     The Select File window, Select Folder window, New Folder window, Copy To window, Delete File window and Rename window are used for file operations.

With built-in keypads, you don’t have to spend any time on programming them.


20.1.1 Numeric Keypad

Numeric Keypad

The target panel displays the numeric keypad to let you enter a value when you press and release the Numeric Entry object, Word Button object, and Recipe Table object. The following are examples of Numeric Keypads:

Decimal Numeric Keypad | Hexadecimal Numeric Keypad | Octal Numeric Keypad

The following table describes each item on the keypad screen.

Item |  | Description
Title Bar |  | Press and hold the title bar to move the window screen.
Keypad Display |  | Display the current input value.
Allowable input range display |  | Display the allowable input range.
Buttons | + | Press the button to increase the value by 1.
 | - | Press the button to decrease the value by 1.
 | 0 - 7 | Press the number buttons of the Octal Numeric Keypad to enter a number from 0 to 7.
 | 0 - 9 | Press the number buttons of the Decimal Numeric Keypad to enter a number from 0 to 9.
 | 0 - F | Press the number buttons of the Hexadecimal Numeric Keypad to enter a number from 0 to F.
 |  | Press the button to bring out the Calculator. You can use Calculator to perform simple calculations such as addition, subtraction, multiplication, and division. For details about using the Calculator, please see Section 20.1.2. Calculator.
 | Esc | Press it to close the screen and discard all changes.
 | Clr | Press it to clear the input value.
 | Del | Press it to delete the preceding character.
 | Ent | Press it to close the screen and accept all changes.


20.1.2 Calculator

Calculator

The target panel displays the calculator when you press the button [image] in the Decimal Numeric Keypad. You can use Calculator which is an immediate execution calculator to perform simple calculations such as addition, subtraction, multiplication, and division. On the calculator, the user presses a key for each operation, by pressing keys to calculate all the intermediate results, before the final value is shown. With the immediate execution calculator, each operation is executed as soon as the next operator is pressed, therefore the order of operations in a mathematical expression is not taken into account. The calculator accepts at most 13 characters including numbers, +/- sign and point. The following is an example of the Calculator.

The following table describes each item on the Calculator screen.

Item |  | Description
Title Bar |  | Press and hold the title bar to move the window screen.
M |  | When memory has value, "M" will show up on the left.
Display |  | Display the current input value or the intermediate result or the error message if any. If you get an error, the calculator display will contain an appropriate message, and possibly some further descriptive information. In the case of certain errors, the calculator functions are disabled and you need to press the C or CE button to clear the error.
Buttons |  | Stands for Memory Clear. Press it to clear the memory.
 |  | Stands for Memory Recall. Press it to bring the number of the memory into the display.
 |  | Stands for Memory Plus. Press it to add the currently displayed number to the number in memory. To see the new number, press MR.
 |  | Stands for Memory Minus. Press it to subtract the currently displayed number from the number in memory. To see the new number, press MR.
 |  | Stands for Clear Entry. Press it to erase the last number or operation entered. For example: Result: 3 (Number 3 is cleared)
 |  | Stands for Clear. Press it to remove the whole of an entry. For example: Result: 1
 |  | Press it to remove the most recently entered numbers, digit by digit.
 | 0-9 | Press the number buttons to enter a number from 0 to 9.
 |  | Press it to perform division.
 |  | Press the sign button to change the sign of the number currently displayed. To get the right answer, +/− must be pressed last, even though the minus sign isn’t written last in the formula.
 |  | Press it to perform multiplication.
 |  | Press it to compute the square root of the number currently displayed. Note that the number is entered first then the operator.
 |  | Press it to perform subtraction.
 |  | Press the percent button to display the result of an arithmetic operation as a percentage. It works the same way as the pocket calculators. For example: Calculate a $15 sweater after 6% tax. Result: 15 x (1 + 6%) = 15 + (15 x 6%) = 15.9
 |  | Press it to enter a decimal point to separate the fractional part of a decimal from the whole.
 |  | Press the equal button to display the result of an arithmetic operation. It can be used during a calculation to ensure that an intermediate result has been evaluated. Unless the "=" button is pressed, it is possible that an operation is incomplete. That means pressing "=" button ensures that no arithmetic operations are pending.
 |  | Press it to perform addition.
 |  | Press it to compute the reciprocal of the number currently displayed.
 |  | Press it to close the screen and accept all changes.
 |  | Press it to close the screen and discard all changes.


20.1.3 ASCII Character Keypad

ASCII Character Keypad

The target panel displays the ASCII Character keypad to let you enter an ASCII character when you press and release the Character Entry object. The following is an example of the Character Keypad.

The following table describes each item on the keypad screen.

Item |  | Description
Title Bar |  | Press and hold the title bar to move the window screen.
Keypad Display |  | Display the current input string
Buttons | ASCII Characters | Press the button to enter an ASCII character.
 | Esc | Press it to close the screen and discard all changes.
 | Clr | Press it to clear the input value.
 | Del | Press it to delete the preceding character.
 | Ent | Press it to close the screen and accept all changes.


20.1.4 PinYin and ASCII Character Keypad

PinYin and ASCII Character Keypad

The target panel displays the PinYin and ASCII Character keypad to let you enter a Chinese character when you press and release the Character Entry object with Unicode (Chinese Class 1 & 2, PRC) character set. The following is an example of the PinYin and ASCII Character Keypad.

The following table describes each item on the keypad screen.

Item |  | Description
Title Bar |  | Press and hold the title bar to move the window screen.
Chinese or ASCII characters Display |  | Display the current input Chinese characters.
PinYin Display |  | Display the current input Pinyin.
Possible Characters Display |  | Presents with a list of possible characters with the input Pinpin.
Buttons |  | Press it to clear the input Pinyin.
 |  | Press it to delete the preceding Pinyin.
 | ASCII Characters | Press the button to enter an ASCII character.
 | Chinese PinYin | Press the keystroke to enter Chinese PinYin which is composed of initials and finals.
 |  | Press it to switch the keyboard layout between PinYin and ASCII characters.
 |  | Press it to scroll up the possible character list.
 |  | Press it to scroll down the possible character list.
 |  | Press it to close the screen and discard all changes.
 |  | Press it to clear the input Chinese characters.
 |  | Press it to delete the preceding Chinese character.
 | Ent | Press it to close the screen and accept all changes.


20.1.5 Password Keypad

Password Keypad

The following is an example of the Password Keypad.

The following table describes each item on the Password Keypad.

Item |  | Description
Title Bar |  | Press the title bar and hold to move the window screen.
Password Display |  | Display the current input password.
Buttons | 0 - 9 | Press the number buttons to enter a number from 0 to 9. It will display asterisks (*) instead of the number.
 | Esc | Press it to close the screen and discard all changes.
 | Clr | Press it to clear the input password.
 | Ent | Press it to close the screen and input the password.


20.1.6 Password Table

Password Table

To register new passwords or modify existing passwords for your application, you have to create a function button on a screen and assign the function “Show Password Table” to the button. When the panel is running the application, a level 8 user can get the password table as shown below when he presses and releases the function button that shows the password table.

Note: The user can only get the passwords whose levels are lower than or equal to the user’s level for editing. For example, if the current user lever is 5, the password table will only show the passwords for levels 1 to 5.

The following is an example of the Password Table when the current user lever is 8.

The following table describes each item on the keypad screen.

Item | Description
Title Bar | Press and hold the title bar to move the window screen.
Password | Press the field to bring out the decimal numeric keypad to specify the password for the corresponding user level. A password is a positive integer of up to 8 digits. A password must be unique within the application.
OK | Press it to close the dialog box and accepts all changes.
Cancel | Press it to close the dialog box and discard all changes.


20.1.7 Select File

Select File

The Select File screen is only for the panels that support file operations. It allows the user to select a file from the system for the following operations:

No. | Operations | No. | Operations
1 | Select a file to update the OS & AP | 15 | Read recipe data from TXT file
2 | Select a file and run the OS & AP in it | 16 | Read recipe data from DAT file
3 | Select a file to read data | 17 | Write OS and AP to file
4 | Select a file to write data | 18 | Print screen to file (256 colors)
5 | Select a file to append data | 19 | Print screen to file (64K colors)
6 | Select a file to delete | 20 | Write logged data to .LDF file
7 | Select a file to rename | 21 | Read logged data from .LDF file
8 | Write recipe data to TXT file | 22 | Write line chart data to file
9 | Write recipe data to DAT file | 23 | Read line chart data from file
10 | Write logged data to file | 24 | Write scatter chart data to file
11 | Write logged alarms to file | 25 | Read scatter chart data from file
12 | Write alarm counts to file | 26 | Select a file to copy
13 | Write logged operations to file | 27 | Read logged data file from file
14 | Write panel data to file |  |

The following is an example of the Select File screen.


20.1.8 Select Folder

Select Folder

The Select Folder screen is only for the panels that support file operations. It allows the user to select a folder from the system and the selected folder name will be saved in the specified variable.

The following is an example of the Select Folder screen.

Click the [New Folder] button to create a new folder. The following is an example of the New Folder screen.


20.1.9 Rename/Copy/Delete

Rename/Copy/Delete File

The Rename, CopyTo, Delete File screen is only for panels that support file operations.

  • Rename File

It allows the user to rename a file in the system.

  • Copy File

It allows the user to copy one or more files to another location in the system.

  • Delete File

It allows the user to delete one or more files in the system.


20.1.10 Select Date/Select Date and Time

Select Date/Select Date and Time

The Select Date and Select Date and Time screen will be displayed when the function button with "Select Date" / "Select Date and Time" function is pressed. The screen is used to select date and time of any Historic Data Table, Historic Trend Graph and Historic Radar Chart.

  • Select Date

It allows the user to select date for the associated object.

  • Select Data and Time

It allows the user to select date and time for the associated object.


20.2 Panel Setup

Panel Setup

After power is applied, the target panel displays the Panel Setup screen. The following is an example of a Panel Setup screen:

Note: Some of the buttons on the Panel Setup screen appear only when they are needed.

Note: After powering up, the target panel will not display the Panel Setup screen if "Run AP After Power On" in General Settings is True. If it is False, the target panel will run the application directly.

The following table describes the function of each button on the Panel Setup screen of the target panel.

Property | Press the button to
English/中文(繁體)/中文(簡体) | Display the texts of the screen in the corresponding language.
General | Set the contrast and brightness of the display. Please see Section 20.2.2 for details.
Touch Panel | Calibrate the touch panel. Please see Section 20.2.3 for details.
Set Time/Date | Set the date and time on the Real Time Clock Chip. Please see Section 20.2.4 for details.
H/W Information | Display the hardware information of the target panel. The following is an example of the hardware information screen
Link 1 - Link 4 | Set the parameters for communication between the target panel and PLC/Controllers. Please see Section 20.2.5 or Section 20.2.6 for details.
LAN Printer Address | Specify the IP address of the network printer. Please see Section 20.2.7 for details.
Copy AP to HMI | Copy the application to another HMI.
Copy AP to File | Save the system programs and the application runtime data to a PRP file. The file can be used by the software and compatible target panels.
Copy File | Copy the file.
Delete File | Delete the file.
Format Disk C | Format the built-in flash disk (C:). This operation requires a user level of 8 or higher.
FTP/VNC | Assign the user name and the permission of the file operations for the target panel as a FTP site. Assign the permission of the remote control for the target panel as a VNC server. Please see Section 20.2.8 for details.
Boot from File | Load-and-run the system programs and the application runtime data from a PRP file. The original system programs and runtime data are intact. The loaded system programs and the runtime data will be lost after power off.
Update from File | Update the system programs and the application runtime data from a PRP file. The original system programs and the application runtime data are replaced by the new ones.
Clear Recorded Data | Clear the data stored in the battery backed RAM, which include the operation history, alarm history, alarm counts, and the data collected by data loggers. This operation requires a user level of 7 or higher.
Run | Start running the application. If login is required, the operator must enter a valid password of any user level before the target panel displays the first screen. The user level of the password you enter becomes the current user level. Any operation that requires a user level higher than the current user level will not work while the application is running.


20.2.1 Entering Panel Setup Mode

Entering Panel Setup Mode

Sometimes, you need to put the target panel into the Panel Setup Mode in order to set it up. These are the steps for you to enter the Panel Setup Mode when an application is running:

Step 1: Pin-point the upper-left corner of the screen. If successful, there will be a red square blinking once on the corner.
Step 2: Pin-point the upper-right corner of the screen. If successful, there will be a red square blinking once on the corner.
Step 3: Pin-point the upper-left corner of the screen. If successful, there will be a red square blinking once on the corner.

Only after pin-pointing the left-right-left corners of the screen successfully, will you be able to get the target panel into the Panel Setup Mode.

The region is very small to avoid touched accidentally , so we suggested that using pen to do that .

Note: If the above procedure does not work, you need to check to see whether the Allow to Run Panel Setup flag under the General Settings screen is True. If it is False, the target panel will not be allowed to run panel setup.


20.2.2 General Settings

General Settings

You may press the General button on the Panel Setup screen to bring up the General screen. The following is an example of the General screen:

The following table describes each property on the General screen.

Property |  | Description
Check Battery |  | Select True if you want the panel to check the battery before running the application. If the battery check failed, the “Battery backed RAM data error! All recorded data are cleared!” error message will be displayed on the screen. The default setting is True.
Screen Saver Time (minutes) |  | Enter a number between 0 and 60 to specify the time that the panel turns off the back light of the display when the panel has not been touched for the specified amount of time. The unit of time is minutes. This option lengthens the life of the CCFT back light. If you set “Screen saver time” to 0, the panel never turns off the back light.
Allow To Run Panel Setup |  | Select True if you want to exit the running application and enter the panel setup mode.
Communications Settings |  | When downloading an application, select Default to use the same communication parameters as those used when transmitting data. Select Current to use the communication parameters set in the target panel. To set up communication parameters, press the Link button on the Panel Setup screen. Please see Section 20.2.5 or Section 20.2.6 for details.
Start-up Language |  | When downloading an application, select Default to use the same start-up language as what is used when transmitting data, or select 1 to 10 as the start-up language.
Run AP After Power On |  | Select True if you want to run the application immediately after powering on. The default setting is False.
Display Upside Down |  | Select True if you want to display the screen upside down. The default setting is False.
IP Address |  | Press the edit field and bring up the Numeric keypad to input the IP address. Each IP byte can be a value between 0 and 255.
Subnet Mask |  | Press the edit field and bring up the Numeric keypad to input the Subnet Mask. Each byte can be a value between 0 and 255.
Gateway |  | Press the edit field and bring up the Numeric keypad to input the Gateway. Each byte can be a value between 0 and 255.
LCD Brightness | Increase | Click it to increase the LCD brightness.
 | Decrease | Click it to decrease the LCD brightness.
 | Save | Click it to save the current setting of the LCD brightness.
OK |  | Click it to close the dialog box and accept all changes.
Cancel |  | Click it to close the dialog box and discard all changes.


20.2.3 Calibrating the Touch Panel

Calibrating the Touch Panel

To calibrate the touch panel, you can press [Touch Panel] button on the Panel Setup screen. Use the following procedure to pin-point the white dots and ok buttons on the screen with an unsharp pencil.

1. Pin-point the white dot on the upper-left corner of the screen.

2. Pin-point the white dot on the lower-right corner of the screen.

3. You can press the Redo button on the upper-left corner of the screen to go back to step 1.

Alternatively, pin-point the ok button on the lower-left corner of the screen to go to the next step.

4. You can press the Redo button on the upper-left corner of the screen to go back to step 1.

Alternatively, pin-point the ok button on the upper-right corner of the screen to go to the next step.

5. You can press the Redo button on the upper-left corner of the screen to go back to step 1.

Alternatively, pin-point the ok button at the center of the screen to complete the calibration.

After calibration is completed, the Panel Setup screen displays again.

Note: Do not use anything that is made of metal or is sharp, such as a screw driver or a ball-point pen on the touch panel.


20.2.4 Time and Date Settings

Time and Date Settings

You may press the Set Time/Date button on the Panel Setup screen to bring up the Set Time and Date screen. The following is an example of the Set Time and Date screen.

The following table describes each property on the General screen.

Property | Description
Current Time (hh:m:ss) | Displays the current time in the Real Time Clock chip.
Current Date (yy/mm/dd) | Displays the current date in the Real Time Clock chip.
Current Day of Week | Displays the current day of week in the Real Time Clock chip.
Hour | Select an integer value from 0 through 23 representing the hour of the day.
Minute | Select an integer value from 0 through 59 representing the minute.
Second | Select an integer value from 0 through 59 representing the second.
Year | Select an integer value from 0 through 99 representing the year.
Month | Select an integer value from 1 through 12 representing the month of the year.
Day | Select an integer value from 1 through 31 representing the day of the month.
Day of Week | Select Mon, Tue, Wed, Thu, Fri, Sat or Sun representing the day of the week.
RTC Adjustment (sec./day) | Set the adjustment in seconds per day to correct the Real Time Clock (RTC).
Set | Save all the changes you made
Set & Exit | Click it to close the dialog box and accept all changes.
Cancel | Click it to close the dialog box and discard all changes.


20.2.5 Link Settings (Serial Port)

Link Settings (Serial Port)

This section describes how to set up the communication parameters for the serial communication links using the link screen in the target panel. The default setting of the link screen is transmitted to the target panel along with all the other data when you download an application.

You can press the corresponding Link button on the Panel Setup screen to bring out the link screen. If the link is a serial link, the target panel will display the serial port parameters screen. The following is an example:

The screen for a serial link appears with the following options:

Property | Description
Communications | Select False if you want to disable the communication between the target panel and the controller. When communication is disabled, the target panel doesn’t communication with the controller but can still display screens.
Port | Select either COM1 or COM2 or COM3 to specify the serial port of the target panel that is connected to the controller. The default setting is COM2.
Baud Rate | The baud rate used.
Data Bits | The number of data bits used.
Parity | The scheme of parity used.
Stop Bits | The number of stop bits used.
Command Delay | If the Command Delay is 0, the communication driver sends the next request immediately to the connected device after it received the reply of the last request. If the Command Delay is nonzero, the communication driver delays for the specified amount of time before sending the next request to the connected device.
Retry Count | The number of times that the communication driver will retry to get a successful reply from the connected device for each request. If the number is zero, the communication driver will use a default retry count.
Timeout Time | The maximum time allowed for the communication driver to wait for the reply from the connected device. When the elapsed time exceeds the Timeout Time, the communication driver assumes that the communication failed.
Panel Address | The address of the target panel.
PLC Address | The address of the connected device.


20.2.6 Link Settings (Ethernet Port)

Link Settings (Ethernet Port)

This section describes how to set up the communication parameters for the Ethernet communication links using the link screen of the target panel. The default setting of the link screen is transmitted to the target panel along with other data when you download an application.

You can press the corresponding Link button on the Panel Setup screen to bring out the link screen. If the link is an Ethernet link, the target panel will display the Ethernet parameters screen. The following is an example:

The screen for an Ethernet link appears with the following options:

Property | Description
Communications | Select False if you want to disable the communication between the target panel and the controller. When communication is disabled, the target panel doesn’t communication with the controller but can still display screens.
Command Delay | If the Command Delay is 0, the communication driver immediately sends the next request to the connected device after it received a reply from the last request. If the Command Delay is nonzero, the communication driver delays for a specified amount time before sending the next request to the connected device.
Retry Count | The number of times that the communication driver will retry to get a successful reply from the connected device for each request. If the number is zero, the communication driver will use a default retry count.
Timeout Time | The maximum time allowed for the communication driver to wait for a reply from the connected device. When the elapsed time exceeds the Timeout Time, the communication driver assumes that the communication failed.
Port | Displays the IP port for use
IP Address | Specify the IP address of the connected device. You can press the corresponding field to bring out the Decimal Numeric Keypad to input numbers.
OK | Click it to close the dialog box and accept all changes.
Cancel | Click it to close the dialog box and discard all changes.


20.2.7 LAN Printer Address

LAN Printer Address

To use a LAN printer, you need to assign an IP address and a port for the printer on the target panel. You can press the LAN Printer Address button on the Panel Setup screen to bring out the screen. The following is an example:

The LAN Printer Address screen appears with the following options:

Property | Description
IP Address | Specifies the IP address of the connected network printer. You can press the corresponding field to bring out the Decimal Numeric Keypad to input an integer value from 0 to 255.
Port | Specifies the used IP port. You can press the corresponding field to bring out the Decimal Numeric Keypad to input an integer value from 0 to 65535.
OK | Click it to close the dialog box and accept all changes.
Cancel | Click it to close the dialog box and discard all changes.


20.2.8 FTP Server

FTP Server

To access files in the target panel from a remote site you need to do the following:
1. Open Internet Explorer (or any other web browser) and enter the site address. You will need to type ftp:// and then the IP address of the target panel. For example, you can type it
as ftp://192.168.10.163. To set the IP address of the target panel, please see Section 20.2.2 for details.
2. The target panel (FTP site) requires a user name and password to login.
If the target panel has an application, the user needs to enter a password defined in that application with sufficient user level to enter the FTP site for reading/writing files.
Note: A user that can write files is able to read files too.

  If the target panel has no application, the user can remote access the FTP site by using the default password “123”.

After you have successfully logged on to the target panel (FTP site), you will see the available files that you have permission to access. It will look very similar to your Windows Explorer or My Computer view. From there, you can read and write files from your local hard drive to the target panel (FTP site) and vice versa. Keep in mind that you will need to have the appropriate permission to perform file operations. These permissions will be assigned to the user account in the target panel (FTP site).

To assign a user name and read/write permissions for the target panel (FTP site), you can press the FTP/VNC button on the Panel Setup screen to bring out the following sample screen:

The FTP Site screen appears with the following options:

Property | Description
User Name | Specifies the user name for the target panel. You can press the field to bring up the ASCII Character Keypad to input up to 8 ASCII characters. The default user name is “user”.
Lowest User Level for Write | Specifies the user level that is required to write files to the target panel.
Lowest User Level for Read | Specifies the user level that is required to read files from the FTP site.
File Folder For FTP Server | Press it to bring out the ASCII Character Keypad to enter the file folder.
OK | Click it to close the dialog box and accept all changes.
Cancel | Click it to close the dialog box and discard all changes.


20.2.9 VNC Connecting

VNC Connecting

Part 1: Local network

1. Set IP Address on the HMI

  • Find “General” Button in the "Panel Setup" Screen and press it.
  • Set “IP Address” to 192.168.10.84, "Subnet Mask" to 255.255.255.0, "Gateway" to 192.168.10.1.
  • Press “OK” to save the setting.

2. Connect HMI network cable to a router or a switch.

3. Confirm your new IP address.
Choose an IP address which is not in the range of Starting and Ending IP Address, for example, 192.168.10.84
On any computer of the network, move mouse to “Start -> Programs -> Accessories -> Command Prompt", key in “ping 192.168.10.84”

If “Destination host unreachable” appears, this IP address can be used. Otherwise, choose another IP address and repeat these steps.

4. Start one of VNC Client applications on PC (such as ultraVnc or TightVnc or realVnc) or on Android or on iPad/iPhone and connect to HMI. Key in HMI's IP address in Server column. Here is 192.168.10.84.

Part 2: Remote network

1. Find a router or a switch, for example:

2. Connect a cable from the HMI to this device.

3. Log in the router
Activate your web browser and type in the IP address of the DI-604 into the Address (for IE) field and press “Enter.” The default IP address of the DI-604 is 192.168.10.1
For example: http://192.168.10.1

After the connection is established, the logon screen will pop up. To log in as an administrator, enter the username of “admin” and the password (there are no default password, leave it blank). Click the OK button. If the password is correct, the web-management interface will appear.

If either User Name or Password is input incorrectly, this dialog will appear again. Please double check the User Name and Password or ask somebody to get the correct User Name and Password.

4. Check the starting IP address and the ending IP address.

Move mouse to DHCP button on the left side, and press it.

Here are “Starting IP Address” and “Ending IP Address”, They are from 192.168.10.100 to 192.168.10.199.
Choose an IP address which is not in the range of Starting and Ending IP Address, for example, 192.168.10.84

5. Set IP Address on the HMI

  • Find “General” Button in the "Panel Setup" Screen and press it.
  • Set “IP Address” to 192.168.10.84, "Subnet Mask" to 255.255.255.0, "Gateway" to 192.168.10.1.
  • Press “OK” to save the setting.

6. Confirm your new IP address.

On any computer of the network, move mouse to “Start -> Programs -> Accessories -> Command Prompt, key in “ping 192.168.10.84”

If “Destination host unreachable” appears, this IP address can be used. Otherwise, choose another IP address and repeat these steps.

7. Again, go back to router set page. Press “Advanced” Button on the top row and press “Virtual Server” on the left column.

The DI-604 can be configured as a virtual server so that remote users accessing Web or FTP services via the public IP address can be automatically redirected to local servers in the LAN network.

The following table describes each property of the Virtual Server.

Property | Description | Remark
Name | The name referencing the virtual service. |
Private IP | The server computer in the LAN network that will be providing the virtual services. |
Private Port | The port number of the service used by the Private IP computer. |
Protocol Type | The protocol used for the virtual service. |
Public Port | The port number on the WAN side that will be used to access the virtual service. |
Schedule | The schedule of time when the virtual service will be enabled. | The schedule may be set to Always, which will allow the particular service to always be enabled. If it is set to Time, select the time frame for the service to be enabled. If the system time is outside of the scheduled time, the service will be disabled.

After finishing set, press ”Apply” button on the bottom to save the new settings. The following is the sample setting:

Name: VNC Server
Private IP: 192.168.10.84
Protocol Type: TCP
Private Port: 5900
Public Port: 5900
Schedule: always

8. Get the external IP Address.

This is the router’s working status. Pay attention to WAN area. Write down the IP Address. This is an Internet address which every one can visit it.
In this example, it is 10.80.1.105.

9. Test this IP Address.

Run HMI unit. Go to Panel -> Send Data to Panel -> Ethernet -> IP address. Enter the IP address which you got from router’s status. The example is 10.80.1.105. And press the “Start” button to start downloading.

10. Release this IP address to any one who wants to use remote downloading function.

Basically, this is a dynamic IP address. It is going to keep same in a few days, even a few months. But it will be changed at any time. So please check it every time when download is needed.

11. Start one of VNC Client applications on PC (such as ultraVnc or TightVnc or realVnc) or on Android or on iPad/iPhone and connect to HMI. Key in HMI's external IP address which is from step 8.


20.3 Recovering System by System Loader

Recovering System by System Loader

When there is a system-critical problem that interferes with the normal operation of the target panel, users may need to boot into the system loader mode, which allows them to troubleshoot their target panel or update the application. Once you have corrected the problem, you can reboot and the target panel will run normally.

To get the target panel into the system loader mode, press the upper-left corner for 3 seconds while the power is on, once there is a beeping sound, the System Loader screen will be displayed as shown below:

The following table describes the function of each button on the System Loader screen of the target panel.

Property

 Press the button to
English/中文(繁體)/中文(簡体) Display the texts of the screen in the corresponding language.
General Set the IP address and brightness of the display. The following is an example of the General screen.

The following table describes each property in the General screen.
Property |  | Description
IP Address |  | Press the field and bring up the Numeric keypad to input the IP address. Each IP byte can be the value between 0 and 255.
LCD Brightness | Increase | Click it to increase the LCD brightness.
 | Decrease | Click it to decrease the LCD brightness.
 | Save | Click it to save the current setting of the LCD brightness.
OK |  | Click it to close the dialog box and accept all changes.
Cancel |  | Click it to close the dialog box and discard all changes.
Touch Panel | Calibrate the touch panel. Please see Section 20.2.3 for details.
Format Disk C | Format the built-in flash disk (C:). This operation requires a user level of 8 or higher.
H/W Information Display the hardware information of the target panel. The following is an example of the hardware information screen:
Update from File | Update the system programs and the application runtime data from a PRP file. The original system programs and the application runtime data are replaced by the new ones.
Run | Get into the Panel Setup mode.


13.1.5 Using Data Logging Macro to log processed data

Using Data Logging Macro to log processed data

When a data logger has to log processed data instead of original data, it needs a data logging macro. The data logging macro is activated whenever a record of data is sampled. It will process the sampled data and use the SAVE2LB command to save the converted data to the logging buffer of the data logger.

The following is an example of data logging by macro. In the sample:

  1. The target panel will read 35 words from W200 per second.

  2. Whenever a record of data is sampled, the target panel will write the 35 words sampled data from W200 to the internal memory buffer $U200 for the data logging macro. And the data logging macro will be activated.

  3. In the data logging macro, you can process 35 words sampled data from $U200.

  4. And then use the SAVE2LB command to save the converted 30 words from $U1000 to the logging buffer of the data logger.


13.1.6 Difference between Indexed String and Identified String

Difference between Indexed String and Identified String

Three examples will be used to describe the difference between Indexed String and Identified String.

Assume that there are 7 strings defined in the text table A. All other entries in the text table are empty.

Text Table A

String ID | Language 1
A00001 | S1
A00002 | S2
A00003 | S3
A00004 | S4
A00005 | S5
A05000 | S5000
A20000 | S20000

Assume that there is a data logger to collect the value of $U100 and there is a historic data table to display the data collected by the data logger.

Example 1 (Indexed String)
The configuration of Data Item of the data logger is shown below.

The following table list the strings that will be displayed in the historic data table according to the data values.

Data Value | String Number | String ID | Comment
0 | 0+1 = 1 | A00001 |
1 | 1+1 = 2 | A00002 |
2 | 2+1 = 3 | A00003 |
3 | 3+1 = 4 | A00004 |
4 | 4+1 = 5 | A00005 |
5~65535 | 6~65536 |  | The string indexed by the value is not within the valid range (1~5) defined by First String No. and Last String No.

Note that the intended string number is the sum of the data value and First String No.

Example 2 (Indexed String)
The configuration of Data Item of the data logger is shown below.

The following table list the strings that will be displayed in the historic data table according to the data values.

Data Value | String Number | String ID | Comment
0 | 0+3 = 3 | A00003 |
1 | 1+3 = 4 | A00004 |
2 | 2+3 = 5 | A00005 |
3~4996 | 6~4999 | A00006~ A04999 | The indexed string is undefined
4997 | 4997+3 = 5000 | A05000 |
4998~65535 | 5001~65538 |  | The string indexed by the value is not within the valid range (3~5000) defined by First String No. and Last String No.

Note that the intended string number is the sum of the data value and First String No.

Example 3 (Identified String)
The configuration of Data Item of the data logger is shown below.

The following table list the strings that will be displayed in the historic data table according to the collected values.

Data Value | String Number | String ID | Comment
0 | 0 |  | No string is identified.
1 | 1 | A00001 |
2 | 2 | A00002 |
3 | 3 | A00003 |
4 | 4 | A00004 |
5 | 5 | A00005 |
6~4999 | 6~4999 | A00006~A04999 | The identified string is undefined
5000 | 5000 | A05000 |
5001~19999 | 5001~19999 | A05001~A19999 | The identified string is undefined
20000 | 20000 | A20000 |
20001~65535 | 20001~65535 |  | No string is identified.

Note that the intended string number is the data value.

Indexed String

  • The intended string number is the sum of the data value and First String No.

  • Not intuitive to use

  • More memory required

  • Faster display speed

  • One text table can serve for many purposes

Identified String

  • The intended string number is the data value

  • Intuitive to use

  • Memory efficient

  • Slower display speed

  • One text table probably will be limited for only one purpose


3.1.5 Avoiding Data Corruption Due To Random Power-off

Avoiding Data Corruption Due To Random Power-off

The HMI unit stores various kinds of data in non-volatile storage devices. The data include data log, alarm log, operation log, recipes, schedules, non-volatile user data, and so on. The storage devices include built-in battery backed RAM, built-in flash disk, Micro SD card, and USB memory stick. Turning off the HMI unit while it is writing data to a storage device could fail the write operation. This results in data loss, ruined data integrity, and troublesome sectors in the storage device. In order to avoid the problem, the function button supports a new operation named "Stop Operation Safely". The operator can activate such a function button to stop the HMI operation before turning the power off and it guarantees that all operations with the non-volatile storage devices are safely completed. Although the chance of data corruption is rare, we still recommend you to use the method described here to make your product/project more reliable.

1. The following figure shows how to select the "Stop Operation Safely" operation for a function button.

2. The HMI unit will display the following message when you press a "Stop Operation Safely" function button.

3. The HMI unit will display the following message when it stops the current application successfully.

4. You can configure the HMI unit to check if the operator performed the safe stop successfully for the last power-off. The check occurs when the HMI starts running the application every time. The following figure shows how to enable the check of safe stop.

5. The HMI unit will display the following message when it detects that the operator did not perform the safe stop successfully for the last power-off.

6. The software will display the following warning message when compiling a panel application if the application requires the check of safe stop but the software found no "Stop Operation Safely" function button in any of the application's screens.

7. The software will display the following warning message when compiling a panel application if the application will save data to battery backed RAM but the software found no "Stop Operation Safely" function button in any of the application's screens. If you do not want to see the message again for the current application, click the No button in the message box. Note that the message will only display for the applications that were created with V2.0.4.11 or later.


3.4.12 Using the OPC UA Client Driver

Using the OPC UA Client Driver

The configuration program provides a built-in OPC UA Client that enables connections to OPC Servers. The NEO OPC Client is built with the OPC Client SDK and can be used to interactively browse and retrieve a Server's Address Space. After the Server's Address Space (or part of the Address Space) being imported to the configuration program, the object instances in the Address Space can be selected as tags.

■ NEO OPC Client Driver

The NEO OPC Client can be launched by configuring an OPC Link from the New Link or Add Link dialog as the followings:

1) From the Link Type combo-box, select OPC Link.

2) From the Driver combo-box, select OPC UA Client Driver.

3) The built-in OPC Client can discover any registered OPC Servers running on the local machine after the Discover Server button is clicked. A list of registered OPC Servers will be displayed after this button is clicked.

To discover any OPC Servers running on other network hosts, type the host's correct URL or computer name of the target machine into the Host field, and then press the Find button to find all registered OPC Servers running on the specified remote host.

4) After selecting a target OPC Server, press the Connection Test button to create a new session to the OPC Server if it is running. If user authentication is required by the OPC Server, a user name and password are necessary. The authentication modes depend on the endpoint of the Server. Only options available for the current endpoint will be displayed. The user name/password may be left blank. If a user name is specified then it must be a valid windows account on the Server machine.

5) After a successful connection test to an OPC Server, the address of that OPC Server will be cached by The configuration program in order for future use.

■ NEO OPC UA Client Panels

Once the connection to an OPC UA Server has been established, the OPC UA Client populates the following panels as shown in the Figure below:

An example of Server’s Address Space of http://jack-computer:51211/UA/SampleServer

The browse panel available on the left displays the object instances in the Server’s Address Space while the property panel on the right shows the details of a given object instance.

The OPC UA Server’s Address Space is a full mesh network which can be viewed by expanding any of the nodes shown in the browse panel. While details of an object instance in the Server’s Address Space can be viewed by clicking its corresponding node. See OPC documentation for more detailed description about UA Server’s Address Space.

Under the Server menu, there is a Disconnect menu option. The current session can be closed at any time by clicking it.

■ Load Tags from OPC Server into The configuration program

All or part of an OPC Server’s Address Space can be loaded into The configuration program as tags for use as long as the data type (e.g. integer, floating) and value rank (e.g. one dimension or two dimensions) of an object instance are supported by The configuration program. Currently,

The supported data types are as the following:

- Boolean

- Byte

- SByte

- Float

- Int16

- Int32

- ByteString

- String

- UInt16

- UInt32

The supported value rank are as the following:

- Scalar

- One Dimension

- Two Dimensions

The object instances in the OPC Server’s Address Space with unsupported data type or value rank are automatically eliminated during loading tags from OPC Server into The configuration program.

Loading tags from OPC Server’s Address Space into The configuration program can be accomplished in Tag Table dialog. By clicking the Load Tags from OPC Server from the pop-up menu under the Link name as shown below. (Note: the driver of the Link must be an OPC UA Client driver.)

The OPC UA Client populates the following panels in which Server’s Address Space can be selected. Here, we select loading all the tags under Data node as an example.

After clicking the Load Selected Tags from OPC server, all the supported data tags under the Data node are loaded to The configuration program as the Figure shown below.

After that, drag the imported tag group (or its sub-group), e.g. the OpcServer folder under the Link1 node.

By clicking the corresponding node under the Link1 node (here take Scalar node as an example), the detailed information of the tags are displayed on the right side list.

In the Figure above, the Data Type, Address, and Description of a given tag is listed one row in the table. Here, Address does not represent the physical address but an abstract address where an object instance stays in the OPC Server’s Address Space, while R/W in the Description field means that the property of an object instance is both Read and Write allowed. If it is read only, only R appears in that field.

Then, all the tags can be used as you have been already familiar with in The configuration program.


9.8.1 Dynamic Lines - Operation Options

Dynamic Lines - Operation Options

The following operation option can be added to a dynamic line. Select and set up the option in the Dynamic Line property sheet.

Options | Description
Visibility Control | You can show and hide a dynamic line by a specified bit or the current user level. Select and set up this option in the Visibility page.


9.8.2 Dynamic Lines - Settings

Dynamic Lines - Settings

You can complete all the settings of a dynamic line in the Dynamic Line property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.8.3.

■ Visibility
Described in Section 4.4.6.


9.8.3 Dynamic Lines - General Settings

Dynamic Lines - General Settings

This section describes how to define the general settings for dynamic lines. The following is an example of the General page of the Dynamic Line property sheet.

The following table describes each property in the General page.

Property |  |  | Description
ID |  |  | The object’s identifier. It is generated when the object is created. The identifier is unique within the screen where the object is located. The format of the IDs for the dynamic lines is DLnnnn.
Note |  |  | You can type a note for the object.
Data Type |  |  | The data type of the variable that controls the dynamic line. The supported data types include: 16-Bit Unsigned Integer, 32-Bit Unsigned Integer, 16-Bit Signed Integer and 32-Bit Signed Integer.
Monitor Address |  |  | Specifies the variable that controls the dynamic line. Click [image] to enter an address for this field. Click [image] to select a tag for this field. The following table shows the data arrangement of the monitored variable.
 |  |  | Controllable | 16-bit Data |  | 32-bit Data
 |  |  | Position, Color and Style | Word No. | Data | Word No. | Data
 |  |  |  | 0 | X1 (Note) | 0,1 | X1
 |  |  |  | 1 | Y1 (Note) | 2,3 | Y1
 |  |  |  | 2 | X2 (Note) | 4,5 | X2
 |  |  |  | 3 | Y2 (Note) | 6,7 | Y2
 |  |  |  | 4 | Color (Note) | 8,9 | Color
 |  |  |  | 5 | Style (Note) | 10,11 | Style
 |  |  | Position and Color | Word No. | Data | Word No. | Data
 |  |  |  | 0 | X1 | 0,1 | X1
 |  |  |  | 1 | Y1 | 2,3 | Y1
 |  |  |  | 2 | X2 | 4,5 | X2
 |  |  |  | 3 | Y2 | 6,7 | Y2
 |  |  |  | 4 | Color | 8,9 | Color
 |  |  | Position and Style | Word No. | Data | Word No. | Data
 |  |  |  | 0 | X1 | 0,1 | X1
 |  |  |  | 1 | Y1 | 2,3 | Y1
 |  |  |  | 2 | X2 | 4,5 | X2
 |  |  |  | 3 | Y2 | 6,7 | Y2
 |  |  |  | 4 | Style | 8,9 | Style
 |  |  | Position Only | Word No. | Data | Word No. | Data
 |  |  |  | 0 | X1 | 0,1 | X1
 |  |  |  | 1 | Y1 | 2,3 | Y1
 |  |  |  | 2 | X2 | 4,5 | X2
 |  |  |  | 3 | Y2 | 6,7 | Y2
 |  |  | Color and Style | Word No. | Data | Word No. | Data
 |  |  |  | 0 | Color | 0,1 | Color
 |  |  |  | 1 | Style | 2,3 | Style
 |  |  | Color only | Word No. | Data | Word No. | Data
 |  |  |  | 0 | Color | 0,1 | Color
 |  |  | Style only | Word No. | Data | Word No. | Data
 |  |  |  | 0 | Style | 0,1 | Style
 |  |  | Note:
 |  |  | Variable | Description
 |  |  | X1 | Specifies the X coordinate of the line's starting point.
 |  |  | Y1 | Specifies the Y coordinate of the line's starting point.
 |  |  | X2 | Specifies the X coordinate of the line's ending point.
 |  |  | Y2 | Specifies the Y coordinate of the line's ending point.
 |  |  | Color | Specifies the color of the line. You can specify a 16-bit color value here. The format of the 16-bit color values is described below:
 |  |  |  | Bits | Description
 |  |  |  | 15-11 | Store the red component
 |  |  |  | 10-5 | Store the green component
 |  |  |  | 4-0 | Store the blue component
 |  |  |  | About color values, see Section 9.2.4.
 |  |  | Style | Specifies the style of the line. The following figure shows the available line styles and the associated style values.
Controllable |  | Position | Check this option when you want to control the line position.
 |  | Color | Check this option when you want to control the line color.
 |  | Style | Check this option when you want to control the line style.
Default | Color |  | Specifies the default color of the line.
 | Style |  | Specifies the default style of the line.


9.8 Dynamic Lines

Dynamic Lines

You can change the position, length, color and/or style of a dynamic line at runtime.

You can complete all the settings of a dynamic line in the Dynamic Line property sheet. This sheet contains the following two pages.

■ General
Described in Section 9.8.3.

■ Visibility
Described in Section 4.4.6.