-> Hier kostenlos registrieren
Hallo zsm,
ich habe gerade die Aufgabe bekommen ein Programm in S5 auf S7 hochzurüsten. Ich kenne mich leider mit S5 nicht gut aus.
Hardware: S5 115U --> S7 1500 CPU 1511-1PN
Software: Tia Portal V16... hätte auch Step7 Simatic Manager zu Verfügung falls das irgendwie weiterhilft.
Hier ist mein Code:
	
	
	
		
und dann wird FC gerufen:
	
	
	
		
Wenn ich das richtig verstanden haben es handelt sich hier um eine pH Messung die gegen 4 Grenzwerte verglichen wird (N1O, N1U, N2O, N2U)
Fragen:
1. Ist die "AUF" Anweisung nötig in TIA Portal? (block_db Datentyp gibt es nicht mehr??) oder kann man da einfach die Symbolische Adressierung zu unserem Vorteil nutzen?
2. Wird #ADR bzw. MW200 gegen N1O, N1U... verglichen?
3. Warum wurde den Analog Eingang Wort verschoben und scheinbar nicht skaliert?
	
	
	
		
4. Habt ihr hilfreiche Tipps oder Erfahrung bzgl. Hochrüstung?
Vielen Dank im Voraus
J
	
		
			
		
		
	
				
			ich habe gerade die Aufgabe bekommen ein Programm in S5 auf S7 hochzurüsten. Ich kenne mich leider mit S5 nicht gut aus.
Hardware: S5 115U --> S7 1500 CPU 1511-1PN
Software: Tia Portal V16... hätte auch Step7 Simatic Manager zu Verfügung falls das irgendwie weiterhilft.
Hier ist mein Code:
		Code:
	
	FUNCTION FC 3 : VOID
  NAME: NIVEAU
  VAR_INPUT
    _DB       :block_db;  // DB 
    DW        :word;      // DW 
    ADR       :word;      // ADR
    N1O       :int;       // N1O
    N1U       :int;       // N1U
    N2O       :int;       // N2O
    N2U       :int;       // N2U
  END_VAR
  VAR_OUTPUT
    GP1       :bool;      // GP1
    GP2       :bool;      // GP2
  END_VAR
  BEGIN
  NETWORK
       AUF #_DB ;
       L   #DW;
       T   MW 202;
       L   #ADR;  // Analog Eingang Wort --> pH (nicht skaliert)
       SLW 1;
       SRW 4;
       T   MW 200;
       L   #N1O;
       >=I;
       S   M 202.0; 
       TAK;
       L   #N1U;
       <=I;
       R   M 202.0;
       TAK;
       L   #N2O;
       >=I;
       S   M 202.1;
       TAK;
       L   #N2U;
       <=I;
       R   M 202.1;
       U   M 202.0;
       =   #GP1;
       U   M 202.1;
       =   #GP2;
       L   MW 202;
       T   #DW;
	und dann wird FC gerufen:
		Code:
	
	TITLE = pH Alarm
       CALL FC 3
        ( _DB    :=  DB 100
        , DW     :=  DBW 6
        , ADR    :=  EW 68
        , N1O    :=  1945
        , N1U    :=  1945
        , N2O    :=  1433
        , N2U    :=  1433
        , GP1    :=  M 18.2
        , GP2    :=  M 18.3
        );
	Wenn ich das richtig verstanden haben es handelt sich hier um eine pH Messung die gegen 4 Grenzwerte verglichen wird (N1O, N1U, N2O, N2U)
Fragen:
1. Ist die "AUF" Anweisung nötig in TIA Portal? (block_db Datentyp gibt es nicht mehr??) oder kann man da einfach die Symbolische Adressierung zu unserem Vorteil nutzen?
2. Wird #ADR bzw. MW200 gegen N1O, N1U... verglichen?
3. Warum wurde den Analog Eingang Wort verschoben und scheinbar nicht skaliert?
		Code:
	
	 L   #ADR;  // Analog Eingang Wort 
       SLW 1;
       SRW 4;
       T   MW 200;
	4. Habt ihr hilfreiche Tipps oder Erfahrung bzgl. Hochrüstung?
Vielen Dank im Voraus
J