S5 to S7 convert ( Pid OB251 )

tulip

Member
Join Date
Oct 2005
Location
ist
Posts
236
I want to convert program of S5-115U to S7-CPU314.Program is below.I checked and decided FB41 but 12 PIDs ( JU OB251 ) are exist.Can I call them from within OB35 ?How can I locate these parameters I don't know?Is there any experience abouth this subject?Thanks in advance...

S5 side:
------------------------------------------------------
FC2:
C DB 10 // Work DB
L DW 1 // Conveyor speed factor
C DB 100 // PID DB
T DW 1 // K – Proportional Factor
L 1023
T DW 5 // TI – TA/TN
T DW 9 // W- Set point
JU OB251
L DW 48 // Output value
SLW 4
T PW 160
----------------------------
OB21&22:

C DB 100
L KM 00000000 00101001
T DW 11 // control word
L KF+2048
T DW 14 // Upper limit

---------------------------
DB 100:

DW1 : KF=+01023
DW5 : KF=+01000
DW9 : KF=+01023
DW11: KM=00000000 00101001 // Control word
I I I
I I I_____ Auto mode
I I________ Velocity algorithm
I__________ No feedforward control
DW14: KF=+02048
DW38: KF=+01023
DW46: KF=+00818
DW47: KF=+00891
DW48: KF=+01019
----------------------------------
 
Are you using the Siemens S5->S7 convert tool?

S5 side:
------------------------------------------------------
FC2:
C DB 10 // Work DB : open DataBlock 10 to stack
L DW 1 // Conveyor speed factor : Load DB10/DW 1 to accumulator
C DB 100 // PID DB : Open DataBlock 100 to stack
T DW 1 // K – Proportional Factor : Save DB10/DW1 to DB100/DW1
L 1023 : is there typo or was it possible to use this kind of mnemonic ..can't remember..
T DW 5 // TI – TA/TN : Save 1023 from accumulator to DB100/DW5
T DW 9 // W- Set point : Save 1023 from accumulator to DB100/DW9
JU OB251 : Run subroutine OB251 and return (Don't know what is inside)
L DW 48 // Output value : Load DB100/DW48 to accumulator
SLW 4 : Shift content of accumulator1 to left by 4 bits.
T PW 160 : Send DW48(Shifted left by 4 bits) to PeripheralWord 160 (now I really can't recall how PW will function)
----------------------------
OB21&22:

C DB 100 :eek:pen DB 100 to stack
L KM 00000000 00101001 : Load bit mask KM XXX to accumulator
T DW 11 // control word : Save Accumulator to DB100/DW11
L KF+2048 : Load KF+2048 to accumulator
T DW 14 // Upper limit : Save accumulator value KF+2048 to DB100/DW14

---------------------------
DB 100:

DW1 : KF=+01023
DW5 : KF=+01000
DW9 : KF=+01023
DW11: KM=00000000 00101001 // Control word
I I I
I I I_____ Auto mode
I I________ Velocity algorithm
I__________ No feedforward control
DW14: KF=+02048
DW38: KF=+01023
DW46: KF=+00818
DW47: KF=+00891
DW48: KF=+01019
----------------------------------

This is based of my thin knowledge of S5-135U with german mnemonic.
The way Accumulator works is different between processors what I know of since 115U have one 16bit accumulator (IIRC again) while 135U have two 32 bit accumulators.
EDIT: This started to bother me.. What I could come up from my notes is that above isn't true. 115U have too two accumulators 1&2, which accu1 is the top of the stack (stores the most recent value) and they are 16 bits, while 135U have 32bit accu1&2.

Have you read the manual of 115U?

Conversion tool can't convert some of these OBs and IIRC 251 is one of them. You need to analyse (reverse engineer) the functionality and write it manually to S7, me thinks.

Now I join the line and start to wait too to get response from someone who really understand this. :oops:
 
Last edited:
I want to convert program of S5-115U to S7-CPU314.Program is below.I checked and decided FB41 but 12 PIDs ( JU OB251 ) are exist.Can I call them from within OB35 ?How can I locate these parameters I don't know?Is there any experience abouth this subject?Thanks in advance...

S5 side:
------------------------------------------------------
FC2:
C DB 10 // Work DB
L DW 1 // Conveyor speed factor
C DB 100 // PID DB
T DW 1 // K – Proportional Factor
L 1023
T DW 5 // TI – TA/TN
T DW 9 // W- Set point
JU OB251
L DW 48 // Output value
SLW 4
T PW 160
----------------------------
OB21&22:

C DB 100
L KM 00000000 00101001
T DW 11 // control word
L KF+2048
T DW 14 // Upper limit

---------------------------
DB 100:

DW1 : KF=+01023
DW5 : KF=+01000
DW9 : KF=+01023
DW11: KM=00000000 00101001 // Control word
I I I
I I I_____ Auto mode
I I________ Velocity algorithm
I__________ No feedforward control
DW14: KF=+02048
DW38: KF=+01023
DW46: KF=+00818
DW47: KF=+00891
DW48: KF=+01019
----------------------------------



Hi are planning to change the automation process? if not please share ur email id, don't need to change program just one device to connect your old wiring to new S7 wiring, the product is by phoenix contact they have specially developed it for siemens,
 
S5 OBs for Start-up Procedures​
OB 20 Manual or automatic cold restart
OB 21 Manual warm restart
OB 22 Automatic warm restart after power failure
OB 38 Organization of the restart behavior for communication in SMOOTH STOP​
 

Similar Topics

Hello all, A group I am involved with is just completing converting a Siemens APACS control system over to an RSLogix PLC. The subject came up of...
Replies
1
Views
1,154
I'm trying to improve tuning on Watlow 'Series PD' PID controller and am using some tuning guides to help. Application is simple temperature...
Replies
7
Views
7,028
Hi all. Me again still learning Rockwell. So I'll be polling an INT data array from a Modbus SE power meter with a L82 (with a Modbus ProSoft in...
Replies
56
Views
1,209
Hello, could someone kindly convert the attached RSP files that are currently used for SLC 5 PLC into PDF please
Replies
6
Views
474
I'm trying to convert an RS Logix 500 fille when I open the 500 file and try to "save as" a .slc file, it does not allow it. It says " SLC library...
Replies
2
Views
516
Back
Top Bottom