Siemens sipart Dr21

infineum

Member
Join Date
Mar 2006
Location
Linden
Posts
100
I have an old S7-315 that is being converted to S7-319. The program is very poorly written in IL with comments and symbols in half german and half english. The controller uses a Sipart DR21 controller for PID control over Profibus DP. It looks like a function block sipardp_300 is being used but it is really difficult to figure out exactly how values are being written to this device. It does not appear that the I/O configured in the hardware config is being used. I looked at the Siemens documentation for the DR21 and it is very bad. Does anybody have experience with the DR21 and S7 controller across DP? My alternative is to configure a soft PID in the controller. I can do that with a little bit of rewiring but I would like to figure out how it works. Thanks.
 
It does not appear that the I/O configured in the hardware config is being used.

Appearances can be deceptive with S7, could you explain further what type of addresses you are searching for i.e PID PIW etc

Chances are the address you seek will be hidden in indirect addressing or Block call.

I usually export unfamiliar programs to a source file and use a good text editor to search for PIW[, PID[ or 256 if i was looking for PID256 etc and couldn't find it in the cross reference.
 
A closer examination....

In the hardware config, the first DR21 controller is configured as follows:

4AX AZD/20 PZDS I ADDRESS 276-283 Q ADDRESS 276-283
16AE AZD/20 PZDS I ADDRESS 284-315
4AE AZD/20 PZDS I ADDRESS 316-323

The second controller is configured the same with different addresses.

These addresses are not used anyware in the program.

However there is a FC for each controller (only the DB changes):
CALL "SI21_300" , "CONT_VAL_TD1"

SP_OP_ON := QREMOTE := QLIM_SP1 := SP_OP :=
SPBUMPON := QSM := QLIM_SP2 := SPEXTSEL_OP :=
SP_TRK_ON := QREADY := QLIM_TRK := SP_AUX :=
SP_EXT := QPMC := QOP_ERR := SP_RTM :=
LIOP_INT_SEL:= QSP_R_ON := PLIM_ERR := LMN_SAF :=
SPEXON_L := QLMN_BLP := PV := LMN0 :=
SP_INT1 := QLMN_BLN := PV_1 := TMHEAT :=
SP_INT2 := QCONF_BL := LMN := TMCOOL :=
UP_LOAD := QCOPA_BL := ER := POS_PAUS :=
DWN_LOAD := QPUBU_BL := BIN_IO := POS_LGTH :=
SM := QINT_ACC := SP := REMOTE :=
PMC := QLMNOP := SP_ACT1 := MAN_OP :=
SP_R_ON := QMAN_AUT := SP_ACT2 := AUT_ON_OP :=
LMN_BL_P := QMANOP := PV_FACT :=
LMN_BL_N := QAUTOP := SP_FACT :=
CONF_BL := QSP_HLM := PHY_DPNT :=
CONPA_BL := QSP_LLM := PHY_STRT :=
MAN_HLM := Q_SP_OP := PHY_FULL :=
MAN_LLM := QSPEXTON := QST_C :=
LMNOP_ON := QMAN_HLM := GAIN :=
LMN_TRK := QMAN_LLM := TN :=
LMN_SEL := QRACKF := TV :=
MANOP_EN := QTRMFLT1 := A1 :=
AUTOP_EN := QTRMFLT2 := A2 :=
LIOP_MAN_SEL:= QTRMFLT3 := A3 :=
AUT_L := QTRMFLT4 := A4 :=
SUBN_ID :=B#16#1 QMODF := HYS :=
RACK_NO :=W#16#7 QPERAF := SP_HLM :=
QERR := QPARF := SP_LLM :=
QVAL_ERR := QLIM_ERR :=
QA1 :=
QA2 :=
QA3 :=
QA4 :=

In the program, only the following items are read and written; SP_OP, SP_RTM, SP, SP_R_ON, using the DB address DB53.DBD136 (CONT_VAL_TD1.SP_OP) for example.
Therefore, the function block is being used to transfer and the I/O address are not being used?
 
Have you tried looking for PID276,PID280 & PQD276,PQD280 etc in the cross reference?

What is writing the values to DB53.DBD136?

If you could attach the program as a library i'm sure someone will have a look for you.
 

Similar Topics

So I'm running a liquid filling operation and I'm trying to get the dribble valve to be open 100% for a time and then 20% for the rest. all that...
Replies
6
Views
2,246
Does anyone have much experience with these? I have an issue where the valve needs to be much more precise then it is now. (Within tenths of a...
Replies
5
Views
3,474
Hey up Just curious... we have a Masonelian CamFlex II steam valve with a Siemens Sipart PS2 valve positioner. The CamFlex works as a cylinder...
Replies
3
Views
4,482
The past week we received a new piece of equipment from Germany which utilizes siemens controls. Typically in our company we use A.B. controls for...
Replies
11
Views
280
Hello I have a s7-1200 and I would like to read the tags present in this controller with my controllogix controller. The two controllers don't use...
Replies
5
Views
161
Back
Top Bottom