Merging Online Step7 DBs with Offline Symbols

samehuz

Member
Join Date
Sep 2006
Location
Philadelphia
Posts
2
Hi,

This may be one of those questions which has a glaringly obvious answer but it escapes me entirely... I have two projects open [offline] in Simatic Manager (V5.2)

1. the master version of programs from 12 siemens 31x plcs
2. the corresponding uploads directly from the system

Now the timestamps of the DBs match and I would like for it to stay that way but also merge the online data VALUES into the version with the offline SYMBOLS.

Surely this is not too much to ask(???) I mean, I hear that I can do it DB-by-DB while online(?), or write a program or use a utility but could someone please confirm that that is necessary?

Thanx!
 
As long as the online and offline DB's match-
Just copy and "grab" the online DB and copy it in to the offline DB- and like magic- then data is there. Now if you re-download, the setpoints are in the processor
 
If online/offline have differences only in DB actual values, save your offline project with correct name (to have initial version and current version with actual online DB values). After this open Blocks online and copy all DB to offline blocks. After this DB content in offline will be the same as online.
 
Thanx for the replies - it's good to know I can do a bulk copy online but I'm still at a loss regarding why I can't do something similar using a stored authoritative upload... in the suggested scenario, if the currently active online DB data values do not correspond to the desired baseline (backed up after a PM cycle, say) then the backup would have to be downloaded and copied back to the [programming] master project, potentially affecting system operation in the process...

Not that this would ever happen in a controlled environment (right) but if the master and the backup are managed by different orgs it would be a whole lot easier to do the whole sync offline.

So this is out of the question then?
 
I can't get it to work

Hi!

I've tried to do as you do, but I cant make it work. My tries have been:
1) With the project and accesible nodes opened in SIMATIC MANAGER. I copied one DB from the accesible nodes to the project but it overwrote the DB. I mean I've lost the simbols inside the DB.
2) I opened both DB (project and online) and tried to copy a block of data, but the only procedure that worked was coping one at a time.

I would like to ask you if there is a procedure to copy this actual values to initial values. Do I have to do it value by value?

Thank you
Kelkoon

P.S. My STEP 7 version si 5.3 SP2
 
Last edited:
I am not sure why, but sometimes drag-and-drop from online to offline works for me, but not allways. Sometimes the symbols are lost, sometimes they are retained.
I would like to know the exact procedure to do it right or at least what causes the lost symbols. I guess it has something to do with timestamps, but I dont know for sure.

Anyway, I once wrote a post about copying the actual values to the initial values by means of excel and a bit of fiddling about. Search for it if you are interested.
 
Jesper,

To save my parameter values in the DB's, I open the offline DB's one after the other, go from the offline DB online, when there are differences in the structure between the offline and online DB Step 7 gives a warning when opening the online DB. If there is no warning I save the online DB, so the online actual values are copied to the offline actual values. If I get a warning when opening the online DB I don't save the online DB because my online symbols would be lost causing errors in my fc's en fb's that use these DB values symbolicaly. In that case I write the online values manually in the offline DB. The right procedure for me is before changing a DB, to do a save of the online DB, so at the next download the parameter values online are still correct. I always try to separate the total process in sections that are as independent as possible, these sections have each an FC for the code, a DB for the variables and a DB specific for parameter values. So the parameters of the whole process are distrubuted over the parameter DB's for the sections, so that inconsistency problems never concern a superlarge DB. Towards inconsistency in online and offline DB's I don't think it's strictly a case of timestamping. I thougt when you have an online and offline DB that are consistent, then you delete a part of the offline DB, save it (different timestamps) and then reconstruct the DB as before and save it, that you don't have consistency problems, I'm not sure, but I thought so. Maybe it's only the structure of the DB that is involved. Other experiences?
 
The key to global DB's is the interface modification date. The interface is the way you have structured the DB. If the interface dates offline/online match, then you can copy from offline->online and back again as much as you wish. Your variable names will remain intact.

Once the interface dates are different, then if you copy from online to offline, the online interface will appear in the offline block. The variable names will become STATx (even if the structure of your offline DB is logically the same)

Note that if you change the name of a variable in your DB, this does not change the interface date. If you change the type of a variable from say an INT to a WORD, by mistake for example, and then put it back to an INT and save the block, the interface date will change - even though it doesn't look any different to what it was previously, Step 7 has detected a change in the interface and modified the date accordingly. Similarly if you accidently add in a new variable and then remove it, the interface date will change. Lastly, if you modify the initial value field, this also modifies the interface date!
 
SimonGoldsworthy said:
Kelkoon -Why do you want to copy the actual to initial ?
Simon:

I'd like to save the actual values as initial values, because if you work with the new S7-300 CPU with MMC. In this CPU if someone makes a reset DBs get the initial values. So I have the default settings loaded in the DB. You can also assing correct values on the startup, but I like more the other solution.

Best Regards,
Kelkoon
 
I don't have a real plc with me at the moment, but if I recall correctly after a reset the copy of the DB in load memory gets copied to work memory. The means the DB's in work memory will have actual values from when you last downloaded the DB to the plc. If you have changed the values of a DB using a VAT table for instance, then after you have copied the block from online to offline to save it in your project, you must download the DB again so the load memory contains the same as work memory.

The initial values section in a DB is only used by the editor if you decide that you want to put all the actual values back to their initial values. You must save the DB and download it to take effect in the plc.
 
Anyway, I once wrote a post about copying the actual values to the initial values by means of excel and a bit of fiddling about. Search for it if you are interested.
There's an easier way to do this.

Simply create a new DB, use Ctrl-C and Ctrl-V to copy the current values from the original DB into the new DB. Now, without saving the DB, modify the initial values to the values you want and then save the DB. Now the DB has your modified values as its new Initial Values.

Now delete the original DB and rename the new DB to the original DB number and download it to the CPU.

Simon, you're right about the DB being copied with the correct actual values on reset or power up (assuming the DB is checked as retentive), the problem comes when you modify your program and then download the whole program, rather than just the parts you've modified.
 
RMA said:
There's an easier way to do this.

Simply create a new DB, use Ctrl-C and Ctrl-V to copy the current values from the original DB into the new DB. Now, without saving the DB, modify the initial values to the values you want and then save the DB. Now the DB has your modified values as its new Initial Values.
Yes it is easier, if we are talking about just a few values. If we are talking hundreds of values, then you get the idea. Or hundreds of values in many DBs, then you can see that it is a real problem.

Ah, if you could just highlight the entire "actual values" column and the do a copy-paste into the "initial values" column. But sadly, no can-do.
 

Similar Topics

To start I have been a long-time lurker.. this is my first post. I have used the search function but have not come across something close to what...
Replies
1
Views
1,033
Hi Experts, I have a small issue I can't find a solution to. I am trying to copy the log data from a backup of a FTView V11 machine that failed...
Replies
2
Views
2,310
Hey guys, Been a while since I have worked with factory talk view studio, I am also attempting something I have never tried before so I figured I...
Replies
5
Views
4,308
Hey fellas, A few years ago, we upgrade a group of VFDs. We decided to install a ControlLogix plc (call it plc2) to run these drives along side...
Replies
0
Views
1,607
I currently have a project to merge a Network Distributed Application into an Existing Factory Talk Directory. Setup as Follows Factory Talk...
Replies
1
Views
2,229
Back
Top Bottom