Jeff164 Posted September 3 Report Posted September 3 Good morning all I'm developing a project in Visilogic where I'm using ASCII strings stored in MI registers as user names & passwords so that my customer can have authorized users logged in & prevent unothorized use of their equipment, untrained operators etc. Mn the main screen interface I have a field that displays the active logged in user by user name. Its all functional however my issue is that when the current logged in user name field is displayed, the value doesnt stay steady on the screen, it sort of flashes the value with a somewhat erratic "scrolling" effect. I dont have a better way of desiribing it and a photo doesnt illustrated it. I'm developing the concept using a Samba 70 SM70-J-RA22. I'm running Visilogic 9.9.1 Build 0. Utimatly the logic will be rolled out into the customer's PLC in a Vision 1210 that is already installed at their site so the Samba is my desktop mule. I've done this before in UniLogic and it was fairly straightforward. Took a bit more work to replicate what I did in Uni and trasnfer to VisiLogic. To accomplish the current user display when the user logs in I write the ASCII value MI address to a new vector that is designated as the "Current Logged in user". This is triggered by a positive transition so its not being constantly re-written. thx Jeff
MVP 2023 Flex727 Posted September 3 MVP 2023 Report Posted September 3 I would look at the operand you have entered into the "Refresh:" field. Also, if you aren't already aware, you can't directly move your project from a Samba to a V1210. If you're just testing some code and plan to re-write the project for the V1210 then you're good. It is possible, I think, to export subroutines from Samba and import them to a V1210 and also copy/paste HMI elements between them.
Jeff164 Posted September 3 Author Report Posted September 3 Thanks for the tip on the Refresh field. yes, I'm just testing code concepts out using the Samba as a desktop platform, will have to re-write it into the program I wrote for the customer's V1210. Unfortunatly I dont have another V1210, it was a custom build and has already shipped. When the customer came to do FAT testing they liked the overall package however wanted some upgrades that were not part of the original scope of work. I want to have worked most all the bugs out of the updates before uploading to their PLC at their site. I have imported subroutines and screends between Samba code and Vision series before, so that should still apply.
MVP 2023 Flex727 Posted September 3 MVP 2023 Report Posted September 3 25 minutes ago, Jeff164 said: yes, I'm just testing code concepts out using the Samba as a desktop platform, will have to re-write it into the program I wrote for the customer's V1210. I figured that, but just wanted to make sure you didn't put in a bunch of time writing your entire program expecting to be able to change to V1210 in the HW Configuration.
Gabriel Franco Posted September 3 Report Posted September 3 To refresh strings, I use a bit (MB179) that is set every 1 second. That way the flickering is reduced.
MVP 2023 Flex727 Posted September 3 MVP 2023 Report Posted September 3 I usually create an "is displayed" operand for the HMI display the string function is in and use that.
Jeff164 Posted September 3 Author Report Posted September 3 3 hours ago, Gabriel Franco said: To refresh strings, I use a bit (MB179) that is set every 1 second. That way the flickering is reduced. I see the SB13 function, but not sure how you are applying the Strings update function with a set coil; or how it would affect this. 39 minutes ago, Flex727 said: I usually create an "is displayed" operand for the HMI display the string function is in and use that. I'm familiar with the "is displayed" operatnd function from whthin the Links and Jumps tab of the HMI pages, but not sure how this would affect this. the tag on my HMI screen that is flickering has the following properties: MI-130 being the vector of the ASCII value for the user name that is logged in. the ladder that drives this value is constructed like this: There are 4 fields for authorized users, and whichever one is logged in at the time, that user name is copied from its respective vector to the Vector that resides in MI-130 to MI-139. The indivicual user names all display properly on the general User Login page and User setup pages, so I know those vectors work OK. (no flickering on those pages) IE MI-60, MI-90 and other similar vecotors display their ASCII strings on other pages with no issue. I woud think that the User Login would only pulse once per active login and once logged in it would just hold its value until some other operand caused the login to drop out. I have a rung that writes 0 to the login registry on user logout and wiht an SB2 pulse on startup. thanks all for your time & constructive critisisim. Jeff
Gabriel Franco Posted September 3 Report Posted September 3 In your image, MB108 is the bit that refreshes the string and equivalent to the one I use (MB179)
MVP 2023 Flex727 Posted September 3 MVP 2023 Report Posted September 3 3 hours ago, Jeff164 said: the tag on my HMI screen that is flickering has the following properties: MI-130 being the vector of the ASCII value for the user name that is logged in. I had forgotten that the "Link:" operand was renamed "Refresh:" after version 9.8.65. As Gabriel Franco said, MB 108 is likely the offending operand. Change it to an operand that pulses once (or slowly, as Gabriel does it) when or after the screen is loaded.
Jeff164 Posted September 5 Author Report Posted September 5 Thank you both for your help. issue resolved. much appreciated
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now