Studio 5000 security programming question

dakers

Member
Join Date
Nov 2017
Location
Georgia
Posts
9
Okay! Once again, I will let you all know that I'm learning as I go. I have a program that I did not develop but have been asked to make some adjustments to. I have some experience, but I have never written logic for HMIs through the PLC program. We have a numeric input on the HMI that we want to password protect (not the whole screen, just the input button). I would normally just set this up in the FT program, but they already have security setup through the Studio 5000 program. So, I figured I could use that logic to secure the input. I'm assuming that I should just need to add an instruction to the logic for the input, but I don't know what. Any one have experience with this? Any suggestions? I am attaching links to screen shots of the login and input button logic from the program.

https://drive.google.com/file/d/1NcGV8XQAwNWds2gZd9u_Q3WqjQe0Jfk5/view?usp=sharing

https://drive.google.com/file/d/1kdvrMEp4qu4CPGCBgdp4vcnvU3F5_U5G/view?usp=sharing

2018-05-09_9-22-02.jpg 2018-05-09_9-23-06.jpg
 
You could hide the actual button behind a panel that will become invisible when ActualUserAcessLevel = what ever level you desire.

Colour the 'false' button a grey colour, then people know it exists but they cannot access it.
 
+ 1 on the hide method. Right-click on the input and use the "Animation>Visibility" option. Similarly, for the panel janner_10 describes, use the inverse logic on its visibility.
 
+1 on janner_10 suggestion. Use the PLC Tag ActualUserAccessLevel.

Right click on your numeric input button, select animation > visibility. In the visibility expression editor create an expression using that tag. {[PLC_shortcut]ActualUserAccessLevel} >= 1. When the expression evaluates as true then the button would be visible. Use the same expression on the gray panel and select it to be invisible. That would remove the numeric input button for any user that has an access level of zero and show the grayed out button panel. Not sure what your access levels are but you get the idea.
 
Okay. That makes sense. I guess I was just thinking I would need to write something into the PLC program, but I see now how I can use the tag in the HMI program instead. :oops: Sometimes I get tunnel vision. Thanks!
 
The way these fine gents all outlined is definitely the best way to do it, but just for the sake of answering the original question:

In FTViewME:
- Open the display which contains the numeric input
- Right-click on the background of the screen and select "Display Settings"
- Under "Display Number", assign a unique number value and save the changes. We'll use 10 as an example.

In PLC:
- Create a DINT tag named something like "CURRENT_HMI_SCREEN"
- Create a DINT tag named something like "HMI_PW_INPUT"
- Create a DINT tag named something like "NUMERIC_INPUT_PW"
- Create a BOOL tag named something like "NUMERIC_INPUT_UNLOCK"

In FTViewME:
- Double click "Global Connections" in the project tree, navigate to the "Display" tab, and assign the tag "CURRENT_HMI_SCREEN" to the value "Replace Display Number"
- Add an additional numeric input somewhere on the screen (ideally close to the numeric input you're wanting to protect). Assign it's value to the tag "HMI_PW_INPUT"

In PLC:
- Create a rung which states IF CURRENT_HMI_SCREEN is EQU to 10 AND HMI_PW_INPUT is EQU NUMERIC_INPUT_PW (whatever numeric password you assign to the tag) THEN OTE NUMERIC_INPUT_UNLOCK is energized.

Now all you need to do is assign the numeric input you want to protect with a visibility animation so that it's only visible when your OTE is energized. You'd also want some logic to MOV a 0 back into the password input based on a timer and/or navigation away from the screen. The tag CURRENT_HMI_SCREEN will be set to whatever value the currently open display is on the HMI. So when they are on that screen and enter the correct password, your protected numeric input will appear.

It's a much more time-intensive setup, but on the plus side, you can alter the password in the future (or add additional passwords if you wanted to track which groups are logging in) without needing to change your HMI program and download it again.

Obviously, notate the logic as much as possible and choose tag names that are as descriptive as possible.
 
Last edited:

Similar Topics

Good Day Everyone Hope you are well. I am aware that you can setup a security feature in studio 5000 (same as RS logix 500 just a bit different...
Replies
0
Views
1,104
Hi, how do I convert 2x Integer registers to a Real? The two integers are from Modbus registers that contain a floating point value, I need to...
Replies
2
Views
82
What is the best way to extract the hour and minute from the register that comes from Yaskawa VFD. In studio 5000 I have a register saved as INT...
Replies
3
Views
93
I have an Allen Bradley temperature switch that I am trying to use in studio 5000. I am getting the message "Unable to interpret the IODD file"...
Replies
0
Views
59
Hi all. I want to ask what may seem a stupid question, as I have a project to send live data to a Yeacode line printer which will print meterage...
Replies
2
Views
112
Back
Top Bottom