You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

---------->>>>>Get FREE PLC Programming Tips

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

PLC training tools sale

Reply
 
Thread Tools Display Modes
Old January 19th, 2018, 04:43 PM   #1
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Maple Systems HMI Screen Control

We had to replace a Maple Systems HMI with a new one and the programs are not compatible and I can't decode it so I'm starting from scratch. My first problem I can't seem to figure out is how to monitor the current screen number in the PLC (SLC503).

From the Maple FAQ I found this
Quote:
The PLC can monitor the current window displayed: Local Word LW9050 contains the number of the currently displayed base window. The PLC may also use incremental windows plus an offset. Load the offset window number into LW9055 (i.e. 10) and the PLC Control object can contain the value to add (i.e. 2) to get a result of window #12.
I have the PLC changing the screens as it needs to but sometimes it is on the wrong screen and I need to PLC to see that and change it to the correct screen. How do I read LW9050 in the PLC?

Thanks
JT
  Reply With Quote
Old January 19th, 2018, 04:50 PM   #2
kamenges
Member
United States

kamenges is offline
 
kamenges's Avatar
 
Join Date: Nov 2002
Location: Brillion, WI
Posts: 3,643
We did it using a macro that runs on screen open. Right click on the screen in the object list and select "settings". Enter the macro name in the Open Macro field. The macro we used looks like this:


Code:
macro_command main()
short	Screen_Number

GetData(Screen_Number, "Local HMI", LW, 9050, 1)

SetData(Screen_Number, "PLC", "HMI_CurrentScreen", 1)

end macro_command
I don't know of another way to get this information to the plc.

Keith
  Reply With Quote
Old January 19th, 2018, 11:34 PM   #3
keithkyll
Member
United States

keithkyll is offline
 
Join Date: Jul 2005
Location: Heath, TX
Posts: 2,022
Not sure why you couldn't decode original program. Please post model numbers. You upload the program, add the XOB or EXOB extension to the object file, then decompile in software to create a new project. Link for the FAQ for Weintek, the OEM for most Maples. You should be able to find the same FAQ for Maple, if needed. Upload instructions start at page 4.

Found Maple version. Instructions are tech note 5057 (and 5059) under the Legacy Products here.
  Reply With Quote
Old January 20th, 2018, 04:57 AM   #4
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Quote:
Originally Posted by kamenges View Post
We did it using a macro that runs on screen open. Right click on the screen in the object list and select "settings". Enter the macro name in the Open Macro field. The macro we used looks like this:


Code:
macro_command main()
short    Screen_Number

GetData(Screen_Number, "Local HMI", LW, 9050, 1)

SetData(Screen_Number, "PLC", "HMI_CurrentScreen", 1)

end macro_command
I don't know of another way to get this information to the plc.

Keith
Keith, thanks so much for the macro, I'll give that a whirl... I assume HMI_CurrentScreen is a tag in the PLC?

Thanks
JT
  Reply With Quote
Old January 20th, 2018, 05:02 AM   #5
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Quote:
Originally Posted by keithkyll View Post
Not sure why you couldn't decode original program. Please post model numbers. You upload the program, add the XOB or EXOB extension to the object file, then decompile in software to create a new project. Link for the FAQ for Weintek, the OEM for most Maples. You should be able to find the same FAQ for Maple, if needed. Upload instructions start at page 4.

Found Maple version. Instructions are tech note 5057 (and 5059) under the Legacy Products here.
I tried for days to decompile the project with no success. I even looked in the file with a hex editor to see if I could find either the password or the checkbox that says "Do not decomplie" with no luck. The only thing I could find was the text messages for the alarms. We called the company that made the machine and their reply was the guy that programmed that is no longer here... I'm thinking don't you keep a file on each machine you build??? Anyway we are past that now... the machine is back up and running with a new screen I just need to figure out a few things.

The original screen program is not compatible with the new screen, we tried to just use a USB to transfer it and the new screen rejected it.

JT

Last edited by jthornton; January 20th, 2018 at 05:04 AM.
  Reply With Quote
Old January 20th, 2018, 05:16 AM   #6
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Now I'm wondering after finding the EZwarePlus Macro Programming manual if it would just be better on boot up to examine if a bit is on and change from screen 10 to screen 11?

JT
  Reply With Quote
Old January 20th, 2018, 07:19 AM   #7
keithkyll
Member
United States

keithkyll is offline
 
Join Date: Jul 2005
Location: Heath, TX
Posts: 2,022
You can do whatever you want with Macros. Either method should be fine.

If you want to revisit decompile:
If the screen is older, you need an older version of software to decompile it. With Weintek, the latest software is EB Pro, but I would use EB8000 to decompile an older screen. The EB8000 extension is ".xob". EB Pro is "exob".
You can download and use the Weintek software for Maple. Only difference is model numbers.
At one time I needed to keep an older version of EB8000, V3.45, as well as the latest, V4.63. I think they fixed that in the latest version of EB8000.
Was it so old you needed EB500?
  Reply With Quote
Old January 20th, 2018, 07:36 AM   #8
damica1
Member
United States

damica1 is offline
 
Join Date: Aug 2015
Location: Illinois
Posts: 510
Create a New PLC Object and select change window, make it just like the picture I have attached (Plc Control)(Make sure "Clear Data After Window Change) is checked, the trigger address can be of your choice as long as it's not being used elsewhere in the program - I use 500)

Now create a Macro (I named my Change_Window) but you can name it to fit your needs, make it just as my (ChangeWindowMacro) shows.

Now if you notice what I'm doing in the Macro is writing a 1 to location LW-500 and the "PLC-Control object" is always monitoring this address, when it change from a 0 to 1 the macro will change screen (gotoscr =??) and at the same time the "Trigger Bit gets cleared" so it will be ready for another change.

So now anytime you want to change to a window - write a 1 to address LW-500.
Attached Images
File Type: jpg PLC_Control.jpg (25.9 KB, 9 views)
File Type: jpg ChangeWindowMacro.jpg (43.9 KB, 8 views)
__________________
David M. Camp

Marshall Electric / https://mei-tech.com/monitor-and-control

Please Download from our download section "Monitor and Control" .pdf.
  Reply With Quote
Old January 20th, 2018, 01:03 PM   #9
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Quote:
Originally Posted by keithkyll View Post
You can do whatever you want with Macros. Either method should be fine.

If you want to revisit decompile:
If the screen is older, you need an older version of software to decompile it. With Weintek, the latest software is EB Pro, but I would use EB8000 to decompile an older screen. The EB8000 extension is ".xob". EB Pro is "exob".
You can download and use the Weintek software for Maple. Only difference is model numbers.
At one time I needed to keep an older version of EB8000, V3.45, as well as the latest, V4.63. I think they fixed that in the latest version of EB8000.
Was it so old you needed EB500?
I had EZware 5000 software with the original HMI5056T, we got EZwarePlus with the HMI5070LB. Are you saying the Weintek software can decompile even if the compile was done with the "do not decompile" checkbox selected or even if you don't know the password? The original file is a xob file.

Thanks
JT
  Reply With Quote
Old January 20th, 2018, 01:11 PM   #10
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
David,

Thanks so much for the information and the screen shots. This is getting easier all the time thanks to the help here.

JT
  Reply With Quote
Old January 20th, 2018, 01:33 PM   #11
damica1
Member
United States

damica1 is offline
 
Join Date: Aug 2015
Location: Illinois
Posts: 510
jthornton - Please forgive me as I forgot this part, it's how to call the Macro.

This statement is a little misleading "So now anytime you want to change to a window - write a 1 to address LW-500."

It is writing 1 to LW-500 that causes the PLC Control object to change windows, but it is the Macro that sets up the gotoscr=?? so that the
PLC Control object will know what window to change to.

I hope this makes more sense now.

Sorry!
Attached Images
File Type: jpg FunctionKey.jpg (30.4 KB, 41 views)
__________________
David M. Camp

Marshall Electric / https://mei-tech.com/monitor-and-control

Please Download from our download section "Monitor and Control" .pdf.

Last edited by damica1; January 20th, 2018 at 01:38 PM.
  Reply With Quote
Old January 20th, 2018, 05:27 PM   #12
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Would I create a PLC object for each stations fault popup? Each station sets a number like N7:22 to something above 0 for a fault. Each number means a different fault for that station, I assume there is some way to have a list or something to display the correct fault info?

JT
  Reply With Quote
Old January 20th, 2018, 06:33 PM   #13
keithkyll
Member
United States

keithkyll is offline
 
Join Date: Jul 2005
Location: Heath, TX
Posts: 2,022
Quote:
Originally Posted by jthornton View Post
I had EZware 5000 software with the original HMI5056T, we got EZwarePlus with the HMI5070LB. Are you saying the Weintek software can decompile even if the compile was done with the "do not decompile" checkbox selected or even if you don't know the password? The original file is a xob file.

Thanks
JT
No. If EZware 5000 wouldn't do it, EB8000 won't either.
Only difference between Weintek and Maple is the model number list.
I would think if it's password protected, it would tell you. Not sure what happens if you set the "do not decompile" bit.
  Reply With Quote
Old January 20th, 2018, 08:37 PM   #14
damica1
Member
United States

damica1 is offline
 
Join Date: Aug 2015
Location: Illinois
Posts: 510
I'm not sure exactly how you want your system to function, but you could create 1 plc object and then create several different macros that would be for the different screen you want to change to.

So example Macro 1 could be for fault code 4, this macro would have a gotoscr=15, macro 2 could be for fault code 5 this macro would have a gotoscr=20, and so on, just remember each macro will have to write a 1 to LW-500.

I hope this makes sense.
__________________
David M. Camp

Marshall Electric / https://mei-tech.com/monitor-and-control

Please Download from our download section "Monitor and Control" .pdf.
  Reply With Quote
Old January 21st, 2018, 07:25 AM   #15
jthornton
Member
United States

jthornton is offline
 
jthornton's Avatar
 
Join Date: Jul 2002
Location: Poplar Bluff, MO
Posts: 247
Quote:
Originally Posted by damica1 View Post
I'm not sure exactly how you want your system to function, but you could create 1 plc object and then create several different macros that would be for the different screen you want to change to.

So example Macro 1 could be for fault code 4, this macro would have a gotoscr=15, macro 2 could be for fault code 5 this macro would have a gotoscr=20, and so on, just remember each macro will have to write a 1 to LW-500.

I hope this makes sense.
Yes this makes sense, thanks so much for the help.

JT
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
HMI Screen Access Control Badge Scan Project MitsM83 LIVE PLC Questions And Answers 1 February 5th, 2017 02:06 AM
OT: Are control systems stuck in the 90s RheinhardtP LIVE PLC Questions And Answers 51 October 7th, 2016 10:21 PM
Remote screen control roxusa LIVE PLC Questions And Answers 2 October 22nd, 2015 09:45 AM
FactoryTalk HMI architecture computers and panelview mix V0N_hydro LIVE PLC Questions And Answers 2 January 7th, 2014 10:45 AM
Dcs, Scada hasnoclue LIVE PLC Questions And Answers 15 April 11th, 2005 06:12 AM


All times are GMT -5. The time now is 06:12 PM.


.