Sign in to follow this  
Followers 0
seestoryrun

FactoryTalk View Studio Animation Scaling

5 posts in this topic

Hello, I'm new to the forum here, as well as new to all of this FactoryTalk Allen-Bradley stuff. I'm normally a mechanical guy from the solidworks 3D world, we had a software guy quit on us and needed someone to take over the HMI responsibilities for this project. Having done web and graphic stuff in my spare time the powers at be thought I'd be a good fit to finish out this project on the "software" side. So please forgive me if I'm asking dumb questions or using incorrect terminology as I fumble through this question I've got. I've got a project in FactoryTalk View Studio (v7) that is setup to run on a PanelView 1500 which has a resolution of 1024x768. We also have a PC that will be running the same project file via FactoryTalk View Station ME on a monitor that has a resolution of 1920x1200. I've learned that you can change the project's resolution inside of FactoryTalk View Studio and it will scale everything for you. Everything but animations... I have one screen that shows an overview of the whole system. It's got a bunch of animations showing the robots tracking across the screen to scale with the real machine. When I change the resolution of the project, it scales the graphics, but it does not scale the horizontal/vertical offsets of all my animations. As far as I can tell these "offsets" can only be entered as pixel values and do not scale. Do you guys know if there is a way to change how these offsets are entered? I would LOVE if these could be a percentage or a tag/expression so I can apply a multiplication factor to them as my screen changes. ...anything other than just a dumb unchangeable pixel value. Is there a setting I'm overlooking that would let this offset value get scaled with my graphics when I change project resolutions? I know I can run the lower resolution project on the bigger monitor and let the PC do the scaling, it just looks rough. I could also just bite the bullet and modify these offsets, but there are a lot of them to change and I don't want 2 project files to maintain (beyond just doing a save-as with a different resolution). Thanks in advance! TL;DR I have 2 monitor resolutions I want the same project file to run on. When I change the resolution on the project file, FTVS won't scale the animation offset values. Do you know of a way to scale these?

Share this post


Link to post
Share on other sites
You are right, the animation offset (pixels) is a fixed value; cannot use tags. But what you can do is scale the input value (tag expression). You are going to have to play with this a bit to get the numbers right, and yes you will have to modify each animation to take this scaling. Once you do, you should be able to adjust the scaling from two tags. Set the Pixel offset to work on the largest screen size (ex. minimum offset = 0 and the maximum offset = 1920 Set the expression range to be a constant, minimum = 0 and maximum = 1920 For the input value, use an expression something like this: ControlTag * ScaleOffsetHorizontal Set the ScaleOffsetHorizontal tag to 1, when on the large 1920 resolution. Set that same tag to 0.5333333 when on the smaller 1024 resolution. That example works if the code changes the ControlTag normally goes through the full range 0 to 1920, which is unlikely that your code does. So, you will need to play with the expression min/max range and the offset min/max range for your project. The concept works, but could be a lot of effort for all the animations that you have. Give it a try in new/test project. If that seems to be what you are looking for you'll at least know if it is worth the effort to implement in your real project.

Share this post


Link to post
Share on other sites
Of course! Scale the input!!! I just gave your technique a go in a test program as suggested and it seems to work. One thing I am a bit unclear on; why do you suggest changing the expression range to be constant? This forces the trial and error for each animation. If I leave the range to be set by the tag, all I have to do is scale the input, or am I missing something? Thanks a bunch! Going through and updating all my animations (I counted 25 at this point on the one screen) to implement this once will be no problem. Doing that for 25+ every time I make a change to support 2 resolutions would probably get me fired, ha. FYI, I had contacted Rockwell support to see if they had any ideas and I just heard from them today. They're looking to see if that pixel offset field can be manipulated through VBA (whatever that means). I'm not sure if that would be cleaner than your solution here, but this is going to be hard to beat. I'll update if I hear anything from them.

Share this post


Link to post
Share on other sites
Hallo I'm new in this Forum too Please can you tell me how did you do that?! I'm not sure if you are talking about a page in costruction or a project finished....anyway my problem is that I have to change the resolution of a project finished with a lot of pages and without animations (!!) and don't know how to do that! Any advice is wellcome!! Thanks in advance Edited by 333

Share this post


Link to post
Share on other sites
I only know how to do this on an unfinished project. I haven't tried it, but perhaps you can use the application manager to restore a runtime application file, then adjust your resolution and re-create the run time file. To adjust the resolution of a project, go in to your project settings in factory talk view and select the resolution in the drop down box. Once you hit OK it will give you options for scaling the artwork.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0