
adccommunitymod (AutomationDirect) asked a question.
Created Date: August 26,2011
Created By: rgweber
**** This post has been imported from our legacy forum. Information in this post may be outdated and links contained in the post may no longer work.****
When displaying a screen, the screen is painted before all PLC data is refreshed allowing the momentary display of objects that have their visibility bits turned off in the PLC. If the object was visible when the screen was last viewed, it is displayed again when the screen is recalled until the visibility tag is read anew (at least this is what I suppose is happening). A fast operator can tap a button that should not be visible but for this latency. Has anyone dealt with this and have a reasonable workaround?
Created Date: August 27,2011
Created by: Do-more PE
Are you using the latest version of the software? This was improved back several releases ago.
If you are experiencing the issue with the latest version, it may be that you have one of several things happening:
1) A great number of events or line trend graphs that are affecting your communications cycle so that it takes longer than 'normal ' to get the items refreshed on the screen.
2) A large number of non-contiguous addresses on the screen so that Cmore must do an individual fetch for each address. This can cause the communications cycle to be slow.
3) Noise or other disruption of the communications that are causing retries thus slowing the communications.
4) A large number of bitmaps or animated objects that are slowing the screen redraw and communications down. Using Transparency and Scaling bitmaps is very processor intensive. If possible, do these sorts of editing operations in a separate graphics program before importing to Cmore.
Created Date: August 29,2011
Created by: rgweber
More info
The customer is using version 2.60 currently. We do have some bitmaps in the project but none on this particular screen. Noise is unlikely as this is a dedicated ECOM to C-More connection. And as to contiguous data, we have never particularly grouped our data since block transfers were not necessary. If we are using counter done bits and timer accumulators on the same screen we are at opposite ends of the data range with a variety of other bits and registers in between (C1000, V2000, etc.) How can one measure/monitor the impact of non-contiguous data/tags? Are there benchmarks to go by?
Created Date: August 29,2011
Created by: Do-more PE
Measuring the impact is fairly complicated since Cmore does intelligent tag grouping when possible. My rule of thumb is if you have more than a couple dozen tags and they are not grouped, then you should probably go back and attempt to group them.
Remember that noise doesn't have to originate in the communications line. Power noise and ground noise are important also. I can't begin to count the number of times where I have found the 24VDC power wiring snuggled right next to AC wiring in the same duct. Move it and all the problems go away. Or the number of times that I have placed ground wires on equipment where they were never installed in the first place.
Created Date: August 29,2011
Created by: rgweber
We have some 44 objects, some of which are static, using a total of 80 tags both display, entry and visibility. Some of these (data entry) are displayed based on the same visibility tag. Does using the same visibility tag multiple times exacerbate the problem? Would it be better to put all those objects on a single pop up window? Suggestions are more than welcome.
Created Date: August 29,2011
Created by: Steve Bailey
Another factor that impacts refresh time is alarms. That's because tags with alarms have to be refresheshed regardless of which screen is displayed.
Try lengthening the poll time for your communications. That may sound counterintuitive, but if you 're trying to update a lot of tags too fast, the requests can back up. If you slow down the update rate, you may have a better chance of getting all of your tags refreshed each poll cycle.
Created Date: August 29,2011
Created by: Do-more PE
Trend graphs also fall into this same category. Regardless if they are displayed or not they have to have fresh data.
Created Date: August 30,2011
Created by: rgweber
Is there any way to force the C-More to refresh it's tags ' values before painting the screen? Or to monitor or determine the tag refresh order? Can I make a particular object on the screen's visibility tag the first to be refreshed?
Created Date: August 30,2011
Created by: Steve Bailey
For an application where I needed to have a degree of control over the communications I set up internal tags for everything that was displayed on a screen or for alarms. Then I used the event manager to copy device tags to the internals. The event that triggered the tag copy was the internal one second clock tick bit. By doing that, the device tags are updated only when the triggered by the event in the event manager.
I started using that technique on a job where the device the C-More was communicating with was limited to transmitting a maximum of 20 words of data per read/write transaction. I needed to read data that was separated by more than 20 words so I had to use the event manager to read specific address ranges.
You can have up to sixteen actions for each entry in the event manager. If all of the actions for a given event are to copy V-memory to internals, then the C-More will attempt to combine them all into a single read command to the PLC. That may mean reading some words that you don't need, but it is more efficient to read excess data than to read exactly what you need with multiple read commands.
Created Date: September 14,2011
Created by: kevindedwards
trend tag polling
I also noticed that trend tags are continuously updated. Grouping all my trend tags doubled the update rate of on-screen tags on the C-more screen. But in the Line Trend Graph setup menus, I set them to update once per minute, with 1 reading per sample. It seems that regardless of whether the trend is updated once per second or once per hour, the tags are polled continuously, which can affect performance. Does anyone have more detailed information about this?
Kevin
Created Date: September 14,2011
Created by: a agnone
The invisible buttons also appear on one of my projects. I use the communication bit from the HMI. I use it in such a way the HMI is "dead " until the HMI is booted and my program is in the right stage. This way no one can push a button until all is set.