About This Section
In this section, you will learn about:
Global Objects
Create reference objects in a display, and view the display
Using Global Object Parameters
Reference Object Properties
Modifying a global object, and view the changes in a display
Design recommendations for working with global objects
Read about Global Objects
FactoryTalk View global objects allow you to link the appearance and behavior of one graphic object to multiple references of that object in the same application.
Global objects are created on global object displays. In FactoryTalk View Studio, you create global object displays in the Global Objects folder, the same way you create standard graphic displays in the Displays folder.
Changes you make to the base object are reflected in all of the reference objects linked to it the next time a display containing the reference objects are opened, or refreshed by closing and reopening them.
Global Object Parameters
Global object parameters let you customize each reference global object instance with a specific tag(s) for that instance without having to break the link to the base object's tags and
expressions. This means each reference object can have a unique data source(s), and still be able to be updated with changes to other aspects of the base global object.
Parameter passing is dynamic, meaning it happens at runtime on the client. Global object parameters give you an alternative way of using parameter passing at design time.
Create Reference Objects
In this section of the lab, you will use a pre-created global object and add a reference objects on a display. You will use the parameter values to specify which tags you want to view and animate. You will then run the client to test your work.
Add pre-created Global Object displays
1. From the Explorer Window, add a pre-created Global Object display – Right-click on Global Objects, select the Add Component Into Application…. context menu item.
2. Browse to C:\InstantFizz - Lab Files\Global Objects, select the CIPComponents.ggfx file and click Open.
3. Open the CIPComponets global object - Expand the Global Objects folder in the Explorer, Double-click on CIPComponents
4. Right-click on the tank global object and select “Global Object Parameter Definitions”
CIPComponents global object display.
5. Review the Global Object Parameter Definitions for the tank global object.
Global object parameters are defined in base objects in global object displays. They let you customize each reference global object instance with a specific tag(s) for that instance without having to break the link to the base object's tags and expressions.
When you copy a global object from a global object display onto a standard display from the Graphics folder, you can assign values to the global parameters in the resulting reference object.
Right-click on the tank global object and select
“Global Object Parameter Definitions”
The placeholder parameters can be used in any object contained on the global object display but the Global Object Parameter Definitions are assigned at the top level group.
6. Open the CIP – Overview display - Expand the Displays folder in the Explorer, Double-click on CIP Overview
7. Create a reference object on the CIP - Overview display – Single-click on the tank global object (in the CIPComponents) to select, drag and drop it on the tank location of the CIP – Overview display. You may need to bring the CIPComponents display to the front (by double-clicking on the CIPComponents under Global Objects again) so that it is not covered by the CIP – Overview display.
We have defined parameters #1 - #5 and provided a description for each.
Click OK to close.
8. Move Sanitizer text on top of the tank, to indicate what this tank represents. Follow steps a-b.
Drag and drop the tank from the global objects display into the CIP – Overview display.
Position the object in the location shown.
a. Right-click on Sanitizer text, select Arrange > Bring to Front.
b. Move the text on top of the tank.
9. The newly added reference object should look as follows:
10. Close the CIPComponents global object.
11. Open the Global Object Parameters dialog on the reference object - Right-click on the reference object and select the Global Object Parameter Values context menu item.
Right-click on the reference object and select the Global Object Parameter Values context menu item.
The Global Object Parameter Values dialog is opened.
Notice that there is a description for the #1 to #5 parameters. You will be browsing for several tags.
12. Assign tags for #1 - Click on the … button under the Tag column for #1.
When the Tab Browser opens navigate to {[shortcut]CIPFilling[3]}
Click the OK button
13. Repeat the above step for #2 - #5 using the tags below
Name Tag Description
#2 {[shortcut]CIPTimer[3].ACC} The value of the liquid in the tank while the tank is filling.
#3 {::[shortcut]Program:Main.TempCalc[3]} The value of the liquid in the tank while the tank is emptying
#4 {[shortcut]CIPTankColour[3]} Colour of the tank
#5 {[shortcut]CIPActive} CIP active?
14. Click the OK button on the Global Object Parameter Values dialog.
You can use the test display mode to test global objects. However, this global object uses parameter placeholders and even though we set the values they are ignored. Remember, not all FactoryTalk View commands work in test display mode and parameter placeholders are ignored.
15. Close the CIP – Overview display and save.
Test Display
Now you will have to test the display in the client.
1. Go to the running Client file. If the client is not running launch it from Studio.
The completed Global
2. Click the CIP button from the navigation bar
3. What happens? The CIP - Overview display should be opened and you should see values and animations for all tanks. Each one of the tanks is a reference object to the tank global object. We have assigned unique Global Object Parameter Values for each tank, resulting in different colors, fill values and data for every tank.
4. To see the animation in action, press the CIP – Repeat Cycle button.
Reference Object Properties
The reference object has a LinkBaseObject property that specifies the name and location of the base object the reference object is linked to. You cannot modify the LinkBaseObject property. If the specified global object display or base object does not exist, the reference object will appear in red outline, with a red cross on a white background.
Once you have a reference object, you cannot easily change the object name in the base object. You will get a warning message when attempting to rename a base object. If you accidentally perform a name change or delete a base object, it can be restored. To restore the reference object, you must recreate the base global object with the same name, on the same global object display in order to allow the reference objects to work again.
A reference object has properties that link it to its base object. When a reference object is created, the global object defaults are used to set how the reference object will be linked to the base object. These properties can be modified after the object has been created. You can choose to break the link to the base object after the reference object is created. If you break the link the object will become a graphics
object and will no longer reference the base object.
The values of the Link properties determine whether aspects of the reference object’s appearance and behaviors are defined by the base object, or by the reference object itself.
LinkAnimation
The LinkAnimation property determines whether the reference object uses the animation set up for its base object.
Set up the LinkAnimation property of the reference object by selecting:
Link with expressions, to use the animation, including expressions, set up for the base object.
Link without expressions, to use the animation, excluding expressions, set up for the base object. This means you can set up the expressions for the reference object separately.
Do not link, to set up animation and expressions for the reference object separately.
For a Button push button object, the LinkAnimation property determines whether the reference object uses the press, release, or repeat actions set up for the base object. This is true when you select either Link with expressions or Link without expressions.
LinkConnections
The LinkConnections property determines whether the reference object uses the connections set up for its base object.
Set up the LinkConnections property of the reference object by selecting:
True, to use the connections assigned to the base object.
False, to set up connections for the reference object separately.
In FactoryTalk View Site Edition, a reference object that is a tag label, trend, or Button push button with an action other than Command, always uses the connections assigned to its base object. You cannot set up connections for these reference objects separately.
LinkSize
The LinkSize property determines whether the reference object uses the height and width set up for its base object.
Set up the LinkSize property of the reference object by selecting:
True, to use the height and width set up for the base object.
False, to set up the height and width of the reference object separately.
If you attempt to resize a reference object with its LinkSize property set to True, the object will
Look at the Global Object Defaults
1. Open up any display then from Explorer, select the Edit > Global Object Defaults menu item.
These are the default settings.
Global Object Default Settings
The Global Object Defaults are now set to Link with expressions for the LinkAnimation properties and true for the LinkConnections. These have changed because Global Object Parameters allow you to use placeholders in the connections and expressions. This means each reference object can have a unique data source(s), and still be able to be updated with changes to other aspects of the base global object.
All the reference objects in this application have been created with these defaults. This means that any changes we make to the animation, connection, or size of the base object will be reflected in the reference object.
2. Click the Cancel button to close the Global Object Defaults dialog.
Look at the Reference Properties
1. From Explorer, Open the CIP – Overview display that we just modified.
2. Open the Property Panel
3. Observe the reference object properties
Right-Click on our Sanitizer tank and select Property Panel.
Reference object
Properties – you can view the Global Object display name and base object name, that this reference object is linked with.
Modifying Global Objects
What happens when you think you have your application all done and then you get a change request?
The change could be adding a new item to a display or changing colors on an animation. Global objects allow you to make the change in the base object and the reference objects will inherit that change. This makes maintaining your application a lot easier.
You will be modifying the CIPComponents Global Object.
Modify Text
We will change the color of text that is used several times in the CIP Overview display. Instead of changing the color property several times for each reference, we will only change it once in the base object and every reference object will reflect that change.
1. From Explorer, open the CIPComponents Global Object
2. Open the Object Explorer by selecting View > Object Explorer menu item.
3. Find the Text1 object in the Object Explorer.
4. Double-click on Text1 to open the Text Properties dialog.
5. Click the OK button.
6. Save the global object.
7. Go to the running Client
8. Click the Close CIP button in the top right corner After Text1 properties have been opened, change the Fore Color of the text to RED.
10. Notice four reference objects have been changed
So we made a change in 1 place, the base object and the 4 reference objects now reflect the change.
The text label change would have been updated in all of the reference objects regardless of what the link properties were set to.
Section 7: Security
About This Section
In this section, you will learn about:
Security
Creating a User and User Group
Configuring Action Security
Configuring Runtime Security - Assigning security codes (A - P) o Users and User Groups
o Commands o Display Settings
Verifying Security Settings
Read About Security
For FactoryTalk products like FactoryTalk View SE, the FactoryTalk Directory stores information about which users are allowed access to the parts of a control system.
FactoryTalk Security uses this information to provide two basic services:
User authentication verifies the user’s identity, and whether a request for service actually originated with that user.
User authorization verifies the user’s request to access a software resource, based on the access rights and privileges defined for that user.
For example, when a FactoryTalk View SE network application user logs on to FactoryTalk View Studio, FactoryTalk Security services verify the user’s identity first.
If authentication succeeds, security services check permissions assigned to the user, to authorize actions performed on secured parts of the application.
In a network application, security services also check whether the user is allowed to perform authorized actions on the current computer.
In addition, FactoryTalk Security services manage system-wide policies, such as how often users must change their passwords, or whether users can back up and restore applications.
The security system is extremely powerful. Some particular considerations:
In a FactoryTalk View Site Edition application, an HMI server always inherits the permissions assigned to the area in which it resides. You cannot set up access to an HMI server separately.
You can explicitly deny rights to certain users from all computers or from specific computers.
Selecting the Deny check box for an action denies permission explicitly. This always takes precedence over allowing permission.
If a user belongs to two different groups, and one group is allowed to delete applications but the other group is denied that permission explicitly, then the user will not be allowed to delete applications.
Security
Following installation of the FactoryTalk View SE software, the All Users account is
automatically added to the Runtime Security list and allowed all run-time security codes. This gives any FactoryTalk View SE Client user permission to run a client, open displays, write to tags, and execute commands and macros.
In a secured FactoryTalk system, you must remove the All Users account, add users to the Runtime Security list, and then give the users the security permissions needed to run an application.
After the FactoryTalk View SE software is installed, all users have full initial access to network and local applications on the computer.
There is no need to log on, to run FactoryTalk View Studio, the FactoryTalk View SE Administration Console, or a FactoryTalk View SE Client. The current Windows user is automatically logged on to FactoryTalk View SE.
However, you do need to log on and off to change users, or to gain access to secured parts of the FactoryTalk system.
FactoryTalk View Runtime Security
FactoryTalk View Runtime Security manages run-time security for HMI project components, including FactoryTalk View commands and macros, graphic displays, OLE objects, and HMI tags. In FactoryTalk View Studio, you can secure access to HMI project components by assigning security codes (A - P) to users and user groups (in the Runtime Security editor); to commands and macros (in the Runtime
Secured Commands editor), to graphic displays and OLE object animation (in the Graphics editor), and to HMI tags (in the Tags editor).
Before you can assign FactoryTalk View security codes to users and user groups, you have to create the user and user group accounts in FactoryTalk Security, and then add them to the Runtime Security editor.
Creating a User and User Group
When setting up security for a FactoryTalk View application, it is recommended that you create group accounts and set up access permissions for them first. Using group accounts makes it easier to assign and manage permissions for multiple users with similar security needs. Rather than assigning
permissions to each user in the system, you can create accounts for new users, and then add the users the appropriate groups.
You are going to create a new user and user group. You will assign the user to a user group. You will do this from FactoryTalk View Studio.
1. From the Explorer, expand the Users and Groups folder.
2. Right-click on the User Group folder, select the New > User Group… context menu item.
3. The New User Group dialog will be opened.
4. Type ‘Operators’ in the Name field
5. Click the button
6. The Select User or Group dialog will open, Click the Show users only radio button and click Create New > User… menu item.
7. The New User dialog will open. Type ‘CIPOperator’ for the user name, check the user cannot change password, check the password never expires, and type ‘password’ for the password.
Follow steps a-f to configure.
8. Confirm the fields. Click the Create button.
9. You will be back at the Select User or Group dialog.
Select the CIPOperator and click the button.
10. You will be back at the New User Group dialog. CIPOperator should be in the Members list:
a. Type ‘CIPOperator ‘
b. Select User cannot change password
c. Select Password never expires
d. Type ‘password’
e. Type ‘password’
f. Click the Create button
11. Click the Create button.
12. Operators will appear under User Groups and CIPOperator will appear under Users in the Explorer.
Configuring Action Security
When setting up security, you can specify which actions a user or group can perform on the resources in your system while working from a particular computer or group of computers. In a FactoryTalk Local Directory, actions can only be performed from the local computer — the FactoryTalk Local Directory does not contain any computer accounts.
Action
An organized activity performed on a resource in order to accomplish an objective. Actions are grouped into categories. In addition to a set of common actions that apply to most FactoryTalk products, each product can also include its own set of actions. For information about those actions, see Help for the FactoryTalk product.
Resources
The objects in a FactoryTalk system for which actions can be secured. Each FactoryTalk product defines its own set of resources. For example, some products might allow you to configure security for resources such as servers in an area. Other products might allow you to configure security for logic controllers and other devices. FactoryTalk Administration Console allows you to configure security for the System folder and its contents, applications, areas, and many other items. Do not confuse resources with resource groupings: resource groupings allow you to group together control hardware represented in the Networks and Devices tree, and then configure security for the grouping in one step.
Let’s specify that our operators cannot perform certain alarming actions.
1. From the Explorer, right-click on InstantFizz and select the Security… context menu item