BITS N BYTES

Sysmac Studio Improvement Request

232 posts in this topic

I always sort the C:\OMRON\Data\Solution in descending date order to match the list in Studio, then pick the ones I want.

Share this post


Link to post
Share on other sites
7 hours ago, Crossbow said:

I always sort the C:\OMRON\Data\Solution in descending date order to match the list in Studio, then pick the ones I want.

Thank you. Not ideal but it's better than 1 project at a time

Edited by chelton

Share this post


Link to post
Share on other sites
9 hours ago, IO_Rack said:

You can transfer all your programs from PC to PC easily. Look in C:\OMRON\Data\Solution.

The files are very cryptic but each folder is a Sysmac Studio project. If you want to select specific projects, you can open the folder then view the *.manifest file. A little time consuming but effective.

 

My frustration is handing over project files to clients it would be nice to be able to select these projects from my list and export to *.smc2.

 

Share this post


Link to post
Share on other sites

It would be nice to be able to batch export and import... also would be nice to be able to set software options to ask the user to export a copy each time its saved.

1 person likes this

Share this post


Link to post
Share on other sites

Maybe somebody already said that, but will be really nice to be able todo next few things:

1. Enable/Disable specific section inside of POU program. For now I can only enable/disable while POU program, but not sections inside.

2. Will be great if I would be able to create separate global variables table. It will help to organize our variables in a group. In this case you can open your table with variables and see all variables related to this group. For now I use structures for grouping variables.

Share this post


Link to post
Share on other sites
On 7/31/2019 at 11:01 AM, scotty134 said:

Maybe somebody already said that, but will be really nice to be able todo next few things:

1. Enable/Disable specific section inside of POU program. For now I can only enable/disable while POU program, but not sections inside.

You can use the JMP instruction (or MC and MCR instructions together) to get down to even the rung level.  Of course you could use either JMP or MC instructions at the beginning of a section (and MCR at the end) and use it to jump the entire section.  They are very simple to use.  

The main difference between the two is whether or not output values are retained when JMP or MC/MCR are used.  The other difference is that JMP jumps when active and MC/MCR executes the code between when active.  

1 person likes this

Share this post


Link to post
Share on other sites

Hi All,

I am currently doing a very large scale project please see below a list of items I have not found a solution to:

1.) Having Sysmac Studio automatically reset their Ethercat errors on their own. Like another guy said in his post, if an Ethercat module is not online before the PLC goes into a run state, it will throw an error and not communicate with the Ethercat module even after it comes online. (I am talking about the ECC-203.) This was frustrating to learn after purchasing 7 of the Ethercat units along with the NX701.

 

2.) Indirect addressing. It seems as though the NA screen is very limiting in its power compared to the NS screen. Of course, this statement seems to only hold true if you are not familiar with VB NET programming. It seems that you can get behind the code of some buttons to create your own routines and such which is nice if you already know the language. Not so nice if you have to learn from scratch. Anyway, a normal Boolean button seems to not allow you to put a UINT variable inside of the brackets to have a pointer for an array type. For example, I had over 100 VFD's and I had just created a structure to handle all of the data for these as well as a custom function block. I would then make an array of this structure. Each index of the array would hold the data for one VFD. This way, I would only need to create one hand off auto screen and have a data edit to point all of my buttons to the correct index.

 

3.) After making a change to a custom function block, is there a way to mass update all of the current instances of the function blocks already within the program?

 

4.) Being able to compare two identical structures, but only one being an array. So I would like to compare one index of that data structure to another identical non-aray variable of the same data structure. See example of two variables

Variable: Mode_Select_HMI
Datatype: Mode_Sel

Variable: Mode_Select_Set
Datatype: ARRAY [0..50] OF Mode_Sel

 

If any of these suggestions are already solved and I am not aware of the solution, I would appreciate an explanation as I am fairly new to the software.

 

Thanks,
C

Share this post


Link to post
Share on other sites

Is it possible to have a custom unit setting when setting up a motion axis?  I would like to set up my movement in "tiles".  Is this currently possible or can it be added?

Custom Units.JPG

Share this post


Link to post
Share on other sites

Please use Derived Controller function for that purpose.

Derived controller allows to  use different EtherCAT and I/O Map configurations while keeps Programs aligned.

Share this post


Link to post
Share on other sites
On 10/8/2019 at 8:20 PM, Webbs said:

Is it possible to have a custom unit setting when setting up a motion axis?  I would like to set up my movement in "tiles".  Is this currently possible or can it be added?

Custom Units.JPG

@Webbs

Unfortunately, there is no functionality to change the name of the units.  This is only what is displayed inside Sysmac Studio though.  The operator of the equipment will never see this unit setting.  I would recommend setting Pulses and then make a note somewhere in your code or in the comments of the program that states that the units are really "Tiles" and not pulses.  

1 person likes this

Share this post


Link to post
Share on other sites
On 9/12/2019 at 4:40 AM, PenneyInstruments said:

Hi All,

I am currently doing a very large scale project please see below a list of items I have not found a solution to:

1.) Having Sysmac Studio automatically reset their Ethercat errors on their own. Like another guy said in his post, if an Ethercat module is not online before the PLC goes into a run state, it will throw an error and not communicate with the Ethercat module even after it comes online. (I am talking about the ECC-203.) This was frustrating to learn after purchasing 7 of the Ethercat units along with the NX701.

 

2.) Indirect addressing. It seems as though the NA screen is very limiting in its power compared to the NS screen. Of course, this statement seems to only hold true if you are not familiar with VB NET programming. It seems that you can get behind the code of some buttons to create your own routines and such which is nice if you already know the language. Not so nice if you have to learn from scratch. Anyway, a normal Boolean button seems to not allow you to put a UINT variable inside of the brackets to have a pointer for an array type. For example, I had over 100 VFD's and I had just created a structure to handle all of the data for these as well as a custom function block. I would then make an array of this structure. Each index of the array would hold the data for one VFD. This way, I would only need to create one hand off auto screen and have a data edit to point all of my buttons to the correct index.

 

3.) After making a change to a custom function block, is there a way to mass update all of the current instances of the function blocks already within the program?

 

4.) Being able to compare two identical structures, but only one being an array. So I would like to compare one index of that data structure to another identical non-aray variable of the same data structure. See example of two variables

Variable: Mode_Select_HMI
Datatype: Mode_Sel

Variable: Mode_Select_Set
Datatype: ARRAY [0..50] OF Mode_Sel

 

If any of these suggestions are already solved and I am not aware of the solution, I would appreciate an explanation as I am fairly new to the software.

 

Thanks,
C

the only way I have found to mass update function blocks is by updating the FB via online edit.

For the Structure comparison I would use an ADDDelimiter function to create a String then For Loop thru the array creating a ADDDelimiter  on each member of the array for comaprison

 

Share this post


Link to post
Share on other sites

FORCED BIT WITH IO SHOULD BE VISIBLE WITHIN THE PROGRAM. IF YOU HAVE WRITTEN A PROGRAM THAT RUNS A PROCEDURE AFTER RELEASING THE SOLENOID VALVE, IT IS NOT POSSIBLE TO TAKE THE TEST THROUGH FORCE BIT THIS HE CANNOT SEE THIS. VERY IRRITATING

1 person likes this

Share this post


Link to post
Share on other sites
21 minutes ago, DAMBOR said:

FORCED BIT WITH IO SHOULD BE VISIBLE WITHIN THE PROGRAM. IF YOU HAVE WRITTEN A PROGRAM THAT RUNS A PROCEDURE AFTER RELEASING THE SOLENOID VALVE, IT IS NOT POSSIBLE TO TAKE THE TEST THROUGH FORCE BIT THIS HE CANNOT SEE THIS. VERY IRRITATING

You mean like this:

Forced Refreshing FALSE:

5e5e7a5111835_ForcedRefreshing.jpg.d98bb

 

Forced Refreshing TRUE:

5e5e7ab47d3f2_ForcedRefreshingtrue.jpg.2

 

1 person likes this

Share this post


Link to post
Share on other sites

PLC:

1. Ability to see all global and local unused variables in SysmacStudio. 

2. (same as I have before) Will be nice to be able to create different global variables tables. It will help a lot to organize I/O, variables that related to different stations, etc. 

HMI:

1. When I update IAG library using same name and having next build version. I want automatically re-assign all my IAG components that I'm already using in HMI to newer version without corruption the UI components that already used on HMI pages.

Share this post


Link to post
Share on other sites

For PLC 1, look in the View menu for Variable Manager.  It can show you all variables with usage data. It can show global variables or the local variable lists from any program.

For PLC 2, I agree completely, but have you considered structures as a way to group variables?

 

Share this post


Link to post
Share on other sites
On 7/31/2020 at 10:12 AM, Crossbow said:

For PLC 2, I agree completely, but have you considered structures as a way to group variables?

 

Or, now you can create groups in global variables table, and associate each variable to the group you want.

Then you can filter the table to display the group you want.

 

Share this post


Link to post
Share on other sites

Haven't seen the groups feature yet... been more on robotics the last few months...

Share this post


Link to post
Share on other sites
On 8/3/2020 at 11:15 AM, pfort said:

 

Or, now you can create groups in global variables table, and associate each variable to the group you want.

Then you can filter the table to display the group you want.

 

Just checked the groups in global variables. Honestly, looks good, except 1 thing. When I have enable filter, selected specific group then try to create variable in this list. This variable shows in the selected group, but as soon I unselect the filer, this variable goes to "NO GROUP". It means, all variables that you create by default go to global with no group selected even you have selected group. Will be great if I will have additional information row with group name for the variable or when I create a variable when filter is enabled and group is selected, then this variable goes to this group.

Share this post


Link to post
Share on other sites

HMI:

Sometimes when I need to import a lot of images, it takes time to add all images to resources. Not sure can I add multiple images in one shot to image resources, but will be way easier when you need to add >25 images to HMI.

Share this post


Link to post
Share on other sites

I wonder if will be possible in future versions to avoid the distinction between the exported project file format and the one formatted in Solutions folder (same concept used in CX-Programmer between .cxp and .cxt formats). 
Would like also the Multiview Explorer being as easier as in CX-Programmer

Share this post


Link to post
Share on other sites
On 9/3/2020 at 2:04 AM, CX_Luigi said:

I wonder if will be possible in future versions to avoid the distinction between the exported project file format and the one formatted in Solutions folder (same concept used in CX-Programmer between .cxp and .cxt formats). 
Would like also the Multiview Explorer being as easier as in CX-Programmer

Users should never touch the Solutions folder.  That is the working directory for the software.  The only way to save a project to a single file is export.  I don't foresee them changing that any time soon...

Share this post


Link to post
Share on other sites

My suggestion is to enable TrendGraph visualization in simulation mode of NA

Share this post


Link to post
Share on other sites

Would be nice if there was a way to modify IAG variable values when simulating in the IAG project prior to publishing. Putting the relevant variables in the watch tab and modifying their them there doesn't seem to work for some reason. Buttons can be pressed, data entry fields can be used etc, but the watch tab doesn't seem to work.

This would allow text formatting to be checked, and also quickly check that bit lamps, pushbuttons, slider etc are configured to the right variable before publishing. Currently I publish my IAG's, import them into a test HMI project with the relevant structured datatypes, and then test them in the simulator there.

Share this post


Link to post
Share on other sites

I got to the point that I tired from one thing. Every time when I need to rename a variable, I need to use variable manager and do it carefully. Because if I have variable with number in the end (bTest1, bTest2, etc.) and want to shift the numeration then variables don't behave well. In this case I need to do it step by step and do update after each step. It takes unnecessary extra time, when it should be automated and I should be able to rename a variable straight from global variables table.

Share this post


Link to post
Share on other sites
3 hours ago, scotty134 said:

I got to the point that I tired from one thing. Every time when I need to rename a variable, I need to use variable manager and do it carefully. Because if I have variable with number in the end (bTest1, bTest2, etc.) and want to shift the numeration then variables don't behave well. In this case I need to do it step by step and do update after each step. It takes unnecessary extra time, when it should be automated and I should be able to rename a variable straight from global variables table.

What do you mean by variables don't behave well? If I update the name of a global variable in the global variables table, it automatically updates it in other areas of my program.

However if I have 10 variables named Test1, Test2......Test9, Test10 and I wanted to change them to be 2-11 (instead of 1-10), I start by changing 10 to 11 and working my way back down to prevent any variables ever having the same name (which, rightfully so, causes Sysmac Studio to get a bit cranky and tell you off :burn:)

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