Jump to content

Numeric register starting value

Recommended Posts

Am I the only one who would love to see VisiLogic download a starting value for a numeric operand without the Power-Up checkbox being checked? In other words, it would place a value in the operand that could be overwritten by ladder, but not by start up. This behavior would be exactly like what happens with Timer Presets.

Link to post
Share on other sites
  • 2 weeks later...
On 2/5/2020 at 1:23 AM, Flex727 said:

Am I the only one

Yes.     😀

Getting serious (🤓) now, why?  Is it to have a program that tailors it's parameters from a basic set of numbers on startup?  And rebooting loses all the tailored amounts?  In that case wouldn't normal memory retention be OK? 

However, I can see that if you need basic parameters to get things going initially, perhaps a "manual initiate" screen that loads all the relevant operands with the basics.  After doing that the program can run and then if it has power failure the normal retention will maintain things.

Or add them all into an indexed data table that is periodically saved?  So that it can be recalled, perhaps by the "manual initiate" screen?  This way would get around battery failure as well.



Link to post
Share on other sites

No, what I am saying is for there to be beginning values for integer registers exactly like what happens with timer presets. Whatever timer preset is entered into VisiLogic, even without the Power-Up checked, is transferred to the PLC when the program loads. This value is retained, can be changed, but does not have any power-up application. Often times I have programs with a large number of settings that must be entered by the customer before the program will run properly. Those settings cannot be power-ups because that may need to be changed from time-to-time and the new setting needs to be retained. If the customer enters most of the parameters but forgets some, or makes a typo while entering them, problems will ensue. I'd like to have default values entered that will allow the program to run properly without the customer intervening unless a minor tweak needs to be done.

There is a workaround - I can have a ladder rung initiated by SB 2 that checks to see if the MI = zero, then store direct my value if true, but that's cumbersome.

Link to post
Share on other sites

I always check all the settings used, and if it goes beyond the range, the default is loaded. Yes that's cumbersome,  but as a result, it saves me time in future.

After all settings is done, I use Export PLC operand to  the file and use Import PLC operand if  user does something wrong.

When  a recipes present in project - user can use #1 to  #N table row  
#0 row used as default value that is possible to correct only with password entered.

Link to post
Share on other sites
On 2/13/2020 at 10:59 AM, kratmel said:

I use Export PLC operand to  the file and use Import PLC operand if  user does something wrong.


This is what I do as well, but I have to remind myself to do it.


On 2/12/2020 at 10:25 PM, Ausman said:
On 2/4/2020 at 8:23 AM, Flex727 said:

Am I the only one

Yes.     😀


Play nice, you two.  Don't make me call your father.   😤


The timer "interrupt" in the download sequence allows each timer to be uploaded or downloaded separately.  This would be extremely tedious for all other memory types and is not practical.

@Cara Bereck Levy

A better solution would be to integrate the Export / Import PLC Operands in two places:

1.  Call the Export PLC Operands as an option dialog when the file is saved.  Then you get a real and true full copy of the PLC as it is at that point in time.

2.  Conversely, call the Import PLC Operands as part of the Download chain, like Timers does now.  A simple Yes/No checkbox would be fine.


Joe T.

Link to post
Share on other sites
28 minutes ago, Joe Tauser said:

This is what I do as well, but I have to remind myself to do it.

Good advice! But...

Generally operand export must be performed when setup and fine tuning for all parameters is done.

It is the last step in my PLC programming job.

That is the main problem sometimes you can not know correct value for all operand  when project is downloaded to PLC.

And i think - PLC operand export is not useful integration option (p.1 ) .


47 minutes ago, Joe Tauser said:

simple Yes/No checkbox

in Properties--Messages for ask or not ask user to import operand values from the files after download project is good idea.


P.S. Operand description and operand value is exported separatly.

Maybe it is useful option to export both into csv?  

User can easly check what parameter or operand is wrong in current configuration and change it (Like CNC machine parameter file).



Link to post
Share on other sites
21 hours ago, Joe Tauser said:

Don't make me call your father.

I thought that was you, Joe.  ☺️


I still don't quite understand why my 2nd & 3rd sentences aren't an easily done, onboard solution.  Using row 0 which Kratmel spoke of is part of this. 

Machine has enough to get going by using row 0, can be tailored to suit, can easily bring up any of the saved tailoring by day or week depending on frequency of save, and consequently replace a change that isn't working with one that is known to be good.  The save frequency could be when a certain number of parameters changed reaches a "new record needs to be done" amount.  Write the table to SD when appropriate, which then lets the system be easily recovered from a battery failure. 

Isn't the primary aim the KISS principle?

cheers, Aus

Link to post
Share on other sites


VisiLogic --  Under the Connection Tab,  Just above  Communications & OS    - Choice of Text or Binary File

Handy if you have to change out a PLC and want to restore the data to the new one - like timers that have been changed, or MI/ML/etc.  that are

     used like constants IP Addresses,  ASCII Strings,  Data Table Pointers, etc. 

Useful in troubleshooting, or preserving data before making a major change.



Link to post
Share on other sites

Thanks, DanT. I do know about this function and have used it in the past, but I am always reluctant to put something like this into regular use until I fully understand how it works. There should be an entry in the Help file on this function and I do not see it. I also notice that it doesn't include any System Operands, which is important for the programmer to know in advance (one reason why I'd like to see information in the Help file).

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...