Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Page 2 of 2 FirstFirst 12
Results 11 to 17 of 17

Thread: AWL Anweisung Erklärung

  1. #11
    Join Date
    24.05.2020
    Posts
    96
    Danke
    0
    Erhielt 13 Danke für 12 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ändere mal am FB 100
    L1.0, L1.1, L1.3, L1.6
    in
    L2.0, L2.1, L2.3, L2.6

  2. #12
    Join Date
    29.04.2016
    Posts
    32
    Danke
    16
    Erhielt 0 Danke für 0 Beiträge

    Default

    das Baustein ist umgeschaltet auf FUB . und das besser jetzt und zeigt dass l0.1,l02,l03 am eingänge von FB101.
    aber bei Änderung am Taster änder sich der Ausgang nicht am Antrieb, wie kann ich weiter.?
    danke noch mal für Hilfe

  3. #13
    Join Date
    24.05.2020
    Posts
    96
    Danke
    0
    Erhielt 13 Danke für 12 Beiträge

    Default

    Hast du die Lokaladressen wie oben beschrieben geändert ?

  4. #14
    Join Date
    23.06.2009
    Location
    Sassnitz
    Posts
    15,873
    Danke
    1,300
    Erhielt 4,666 Danke für 3,778 Beiträge

    Default

    Deklariere im FC in TEMP:
    Code:
    Motorschutz   : BOOL : 0.0
    Thermokontakt : BOOL : 0.1
    Taster        : BOOL : 0.2
    Wenn Du nun in Netzwerk 4 so änderst:
    L2.0, L2.1, L2.3, L2.6
    zu
    L1.0, L1.1, L1.3, L1.6
    (oder andersrum wie von SPS-Bitschubser vorgeschlagen funktioniert auch, das wird dann vom FUP-Editor zu L1.x korrigiert)

    dann kann der Code wieder in FUP dargestellt werden (so sah er vermutlich früher mal aus), aber Vorsicht! nun ändert sich die Funktion des Codes!

    Das Netzwerk 4 wurde nach der Umschaltung zu AWL unsachgemäß (oder absichtlich?) manuell geändert (4x L1.x zu L2.x geändert), so daß der Aufruf des FB101 nicht mehr mit den in den Netzwerken 1 bis 3 vorverknüpften Signalen funktioniert. Die mit L1.0 bis L1.6 beschalteten FB-Eingänge bekommen vor der Änderung zufällig alle 0-Werte, es können aber auch andere "zufällige" Werte auftreten, je nachdem, was der/die Bausteine vor dem Aufruf des FC mit dem TEMP-Bereich anstellen. Was für ein Baustein wird vor dem FC aufgerufen und was macht der mit den Lokaldaten L1.0 bis L1.6?
    Kann es sein daß der hier gesteuerte Antrieb gar nicht (mehr) existiert? (und deshalb relativ egal ist was der Code tut)
    Gibt es in dem SPS-Programm weitere Aufrufe des FB101, womöglich sogar mit dem DB141 als IDB?

    Was für eine CPU ist das eigentlich?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #15
    Join Date
    23.06.2009
    Location
    Sassnitz
    Posts
    15,873
    Danke
    1,300
    Erhielt 4,666 Danke für 3,778 Beiträge

    Default

    Quote Originally Posted by malbouzan View Post
    sobald ich ändere das Baustein oder neue Anweisungen einfüge funktioniert das nicht mehr und ändert sich den Ausgang gar nicht.
    Funktioniert denn der Code von Beitrag #1? Ist das der originale Code aus der Steuerung? Oder wurde der Code da schon von Dir geändert?

    Wenn Du den Code so änderst:
    Code:
          U     L      1.0
          =     L      2.0
          BLD   103
          U     L      1.1
          =     L      2.1
          BLD   103
          U     L      1.3
          =     L      2.3
          BLD   103
          U     L      1.6
          =     L      2.6
          BLD   103
          CALL  FB   101 , DB141
           Thermokontakt  :=L2.0
           Motorschutz    :=L2.1
           Stoerung_Umr   :=
           Taster         :=L2.3
           Automatik_Ein  :=
           Automatik_Aus  :=
           Haube          :=L2.6
           Freigabe       :=M141.3
           Antrieb        :=M141.1
           Bit_1          :=
           Bit_0          :=
           Meldeleuchte   :=
           Meldung_Thermo :=
           Meldung_MSchutz:=
          NOP   0
    dann kannst Du die Ansicht auf FUP umstellen und Anweisungen hinzufügen, und der Code müsste trotzdem wie vorher funktionieren. Du darfst nur nicht L1.0, L1.1, L1.3, L1.6 verändern. Aber wie bereits im Beitrag #14 geschrieben, funktioniert der Code abhängig davon, was andere Bausteine vorher im TEMP anstellen - das ist völlig unsauber programmiert.

    Harald
    Last edited by PN/DP; 18.10.2020 at 16:53. Reason: Arrgh! E1.6 war falsch, es muß L1.6 sein
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  6. #16
    Join Date
    29.04.2016
    Posts
    32
    Danke
    16
    Erhielt 0 Danke für 0 Beiträge

    Default

    Danke Harald,
    Das hat geklappt jetzt, ich muss nur den Eingang Haupe setzten(muss true sein)
    Ich habe geprüft mit Plcsim und mache morgen vor Ort an der Anlage.
    Ich bedanke mich sehr für hilfreiche Tipps

  7. #17
    Join Date
    23.06.2009
    Location
    Sassnitz
    Posts
    15,873
    Danke
    1,300
    Erhielt 4,666 Danke für 3,778 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Quote Originally Posted by malbouzan View Post
    sobald ich ändere das Baustein oder neue Anweisungen einfüge funktioniert das nicht mehr und ändert sich den Ausgang gar nicht.
    (...)
    der Programmierer ist nicht erreichbar und ich muss diese selbe Änderung vornehmen
    Quote Originally Posted by malbouzan View Post
    Ja, das original Programm funktioniert einwandfrei, aber ich möchte ändern und das geht nicht und funktioniert nicht mehr.
    Quote Originally Posted by malbouzan View Post
    das Baustein ist umgeschaltet auf FUB . und das besser jetzt und zeigt dass l0.1,l02,l03 am eingänge von FB101.
    aber bei Änderung am Taster änder sich der Ausgang nicht am Antrieb, wie kann ich weiter.?
    Was für eine Änderung musst Du vornehmen?

    Bist Du sicher, daß Dein Antrieb durch diesen Programmcode von Beitrag #1 gesteuert wird?
    Gehören die in den Netzwerken davor und dahinter verarbeiteten Eingänge und Variablen zu dem Antrieb? Werden sie vielleicht auch noch anderswo nochmal verwendet?

    Der Code in Beitrag #1 ist fehlerhaft und funktioniert so nicht. Der FB101 verarbeitet Eingangsvariablen aus dem TEMP-Bereich (L1.0, L1.1, L1.3, L1.6), denen zuvor NICHTS zugewiesen wurde. In den TEMP-Variablen stehen Werte, die durch einen anderen Baustein da quasi "zufällig" (oder ganz fies absichtlich) hinterlassen werden. (oder dem FB sind die übergebenen Werte egal?)

    Wird der FB101 noch öfter im Programm aufgerufen? Vielleicht sogar mit dem DB141 als IDB?
    Vergleiche andere Aufrufe des FB101 mit dieser Programmstelle. So wie andere funktionierende Programmstellen sollte diese Programmstelle vermutlich auch aussehen, vermutlich wie ich in #14 beschrieben habe, hier nochmal ausführlich:
    Code:
          U     L      0.1
          =     L      1.0
          BLD   103
          U     L      0.0
          =     L      1.1
          BLD   103
          U     L      0.2
          =     L      1.3
          BLD   103
          U     E      0.2
          =     L      1.6
          BLD   103
          CALL  FB   101 , DB141
           Thermokontakt  :=L1.0
           Motorschutz    :=L1.1
           Stoerung_Umr   :=
           Taster         :=L1.3
           Automatik_Ein  :=
           Automatik_Aus  :=
           Haube          :=L1.6
           Freigabe       :=M141.3
           Antrieb        :=M141.1
           Bit_1          :=
           Bit_0          :=
           Meldeleuchte   :=
           Meldung_Thermo :=
           Meldung_MSchutz:=
          NOP   0
    Hast Du ältere Projekt-Versionen/Archive, wo der Code noch nicht so aussah? Warum wurde der Code geändert? Wir wissen nicht, ob der Code aus Versehen oder absichtlich so verstümmelt ist.

    Um die kaputte Programmstelle von #1 zu reparieren, mußt Du verstehen was der Code tun SOLL, und ihn dann anpassen bis er auch so funktioniert.


    Oder wird der FB101 nur einmal oder wenige Male aufgerufen und tut womöglich gar nicht das was er vorgibt zu tun? Könnte es sein, daß da KnowHow-Schutz eine Rolle spielt? Verwendet der FB101 indirekte Adressierung um Eingangswerte zu lesen?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Similar Threads

  1. Step 7 AWL Code Erklärung
    By MadMa in forum Simatic
    Replies: 4
    Last Post: 03.02.2017, 23:43
  2. Step 7 S7 Pointer AWL Erklärung
    By OHR-Newbie in forum Simatic
    Replies: 6
    Last Post: 20.01.2017, 10:42
  3. Step 7 AWL Code Erklärung
    By MadMa in forum Simatic
    Replies: 9
    Last Post: 20.01.2017, 08:26
  4. Anweisung AWL
    By blurry333 in forum Simatic
    Replies: 3
    Last Post: 15.02.2011, 21:38
  5. AWL Anweisung
    By mav in forum Simatic
    Replies: 2
    Last Post: 10.09.2007, 09:14

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •