Autor Thema: Event Driven Screen Change  (Gelesen 5516 mal)

Offline Ken

  • Newbie
  • *
  • Beiträge: 3
Event Driven Screen Change
« am: April 05, 2007, 19:38:52 Nachmittag »
I have an application that requires 20-25 message displays that are process driven, Jog Fwd, Jog Rev, Start Delay etc. The process is not sequential so the message displays cannot be activated as timed or sequenced events. I have been able to use multiple message text elements stacked in a single screen with bit logic and markers to display and hide messages by turning on and off markers in the program logic. This works but the stacked message elements produce one screen with a huge memory allocation which has left me without enough memory to complete the project. I would prefer to use static text elements and multiple screens but have been unable to find a simple way to change screens based on process driven events. If a screen could be individually assigned with an activation variable then simple bit logic could be used to select the screen to be displayed. As it stands, one screen activation variable is assigned to all screens with screen display selection determined by the variable value which must be manipulated by function block programming to produce a value based on process driven events. I've not found any simple way to do this. Any suggestions? 

Offline KressSwiss

  • easy god
  • *****
  • Beiträge: 1659
  • Und sie dreht sich doch..."Galileo Galilei"
    • Electronics Planet
Re: Event Driven Screen Change
« Antwort #1 am: April 05, 2007, 21:22:00 Nachmittag »
Zitat
I would prefer to use static text elements and multiple screens but have been unable to find a simple way to change screens based on process driven events

Hi
Acording your wish I wrote a demoprogramm who change screens based on process driven events.
Immagine, I1 - I5 are results of process generated ivents. They are responsible to switch the screen.

I1 = Screen 1 / I2 = Screen 2 / I3 = Screen 3 / I4 = Screen 4 / I5 = Screen 5

In this programm I use data function blocs DB. The commando-word MW10 controls the 5 screens.
I hope this is the solution you are looking for and it helps you to finish your procect. If you have some more questions do not hesitate to ask.

Regards
Hermann

« Letzte Änderung: April 05, 2007, 21:32:39 Nachmittag von KressSwiss »
Achtung:
Angehängte Dateien sind nur für eingelogte User sichtbar!

Offline Ken

  • Newbie
  • *
  • Beiträge: 3
Re: Event Driven Screen Change
« Antwort #2 am: April 06, 2007, 01:14:41 Vormittag »
Hermann,

Thank you for your kind and timely reply. I should have mentioned that I'm reworking an existing V5.11 project in V6.21. The DB function block certainly is the most simple way to activate a screen change. Seeing your solution reminded me that it was the first method I had used to activate messages a couple of years ago when the project was originally done with V5.11 software. Something to do with the operation of the MFD * button required locking into one screen during machine operation to keep the MFD from going into setup mode. I'm expecting the V6.21 button assignment "disable switch to status display" will allow this project to use multiple screens. I had programmed the * button in each screen to negate the operation of the * button and stacked all the message elements into one screen. I switched to markers and bit logic because 25 DB's at 40 bytes each was twice the memory allocation to activate the message elements. Stacking the message elements in one screen has always been the problem with this project because it results in such a large memory allocation to display the one big screen. Replacing the stacked message elements with static text elements in separate screens activated by DB's will add 1000 bytes of memory to the program and reduce the display allocation from 2000 bytes to 700 bytes, a net gain of 300 bytes of memory available for program logic. This won't be enough to complete the project, so I'll need to find a way to reduce the largest screen allocation to free up more memory. Thanks again for your timely reply. If you have any other suggestions for event driven screen changes that require less memory allocation I would be very interested to hear from you.

Ken 

Offline Harry Dekens

  • Newbie
  • *
  • Beiträge: 17
    • Dekens automation
Re: Event Driven Screen Change
« Antwort #3 am: April 06, 2007, 15:52:01 Nachmittag »
Hi Ken,

If 've done something like that. Mayby this could help you

Greetz
Harrt

Offline Ken

  • Newbie
  • *
  • Beiträge: 3
Re: Event Driven Screen Change
« Antwort #4 am: April 07, 2007, 19:10:06 Nachmittag »
Harry,

Your solution is awesome! This rolling text message element with double word variable is a very simple way to display multiple messages. Thanks for sharing your program.

Ken