Step 7 S7 AWl hochzählen mit Bedingung

magi88

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag,
sitze gerade an der Arbeit und habe ein Problem.
Und zwar:
Möchte ich dass wenn der Merker eine Negative Flanke hat, der ausschieber 5 mal ausschleusst. Sprich wir haben einen noch einen Sensor.
Wie kann ich das am besten und einfachsten lösen bitte helft mir bin absoluter anfänger.

Idee ist MW laden diesem den Zählwert 5 transferieren/übergeben. Einen anderen MW jedesmal wenn die LS betätigt wurde 1 hochzählen lassen. Diese beiden Mw vergleichen. Bei 5 dann Den Ausschieber wieder deaktivieren. Aber wie bringe ich das zu "Papier"?
 
Du könntest einen Rückwärtszähler nehmen. Der hat schon so ziemlich alles was Du brauchst (laden, zählen, vergleichen auf 0)
- mit dem Merker-Ereignis den Zähler auf 5 setzen
- wenn der Zählerstand > 0 ist: bei dem Sensor (?) das Ausschleusen starten
- bei oder nach jedem Ausschleusen 1 rückwärts zählen (eventuell bei der LS?)

Für das Ausschleusen brauchst Du vielleicht eine kleine Schrittkette oder einen Timer? Es wäre auch noch interessant zu wissen, wofür genau der Sensor und die LS ist.

Als Anfänger solltest Du in KOP oder FUP programmieren, da kann man nicht so viele Fehler machen.
Also als erstes in ein Netzwerk eine Leerbox einfügen und Z_RUECK auswählen. Solange die neu eingefügte Zählerbox noch markiert ist, als erstes F1 drücken und die Beschreibung zum Zähler lesen. (auch später kannst Du wieder den Zähler markieren und F1 und lesen :D)
Dann Deine "Außenbeschaltung" an ZR, S, ZW und Q zufügen. Eventuell auch anstatt an Q fortsetzen ein oder mehrere weitere Netzwerke für das Ausschleusen erstellen.

Harald
 
Ich muss es in awl machen weil der fb in awl erstellt worden ist. Ich muss meinen Programmteil in ein bestehendes Projekt einfügen.
 
Ich muss es in awl machen weil der fb in awl erstellt worden ist. Ich muss meinen Programmteil in ein bestehendes Projekt einfügen.
Was hast Du für eine CPU? Welches Step7?

Bei einer S7-300 und Step7 V5.x:
Du kannst den bestehenden FB die Ansicht auf FUP oder KOP umstellen, das Zählernetzwerk eingeben, dann die Ansicht wieder zurück auf AWL stellen. Oder in einem anderen Baustein (z.B. in einem anderen (Test-)Projekt) Dein FUP/KOP-Programm erstellen, dann auf Ansicht AWL umstellen und den AWL-Programmcode in den richtigen FB kopieren.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
CPU ist eine 318 dp. Step 7 version müsste die neuste für Windows XP sein. Auf die Idee alles erst in Fup zu erstellen hätte ich auch selber drauf kommen können :) Danke daran hatte ich nicht gedacht. Werde wenn alle anderen Probleme in der Anlage beseitigt sind mir mal was ausdenken. Eine Frage noch und zwar ist der Anlage abschnitt
Den ich bearbeiten will, aufgerufen im Hauptprogramm als fb mit Instanz db.
Das Hauptprogramm hat auch ein Instanz db. Theoretisch wenn ich im fb meines Anlagenteils etwas ändere. Muss ich beim Eingang die Schnittstelle anpassen also die variable deklarieren. Das gleiche beim ausgang. Wie mache ich so etwas für meinen Zähler der muss ja auch deklariert werden oder ? Und wenn ich dann soweit bin muss ich im Hauptprogramm den fb vom Anlagenteil aktualisieren damit der Instanz dB neu erstellt wird. Dann fb und zugehörige dB übertragen. Ist die Abfolge so richtig ?
 
Ein Vorschlag für eine AWL Variante, diese ist so leider nicht in KOP oder AWL übersetzbar.
Wenn du eine im KOP/FUP haben möchtest einfach PM

Code:
      U     M1.0                         //setze 5
      SPBN  x001
      L     5
      T     MW   100
x001: NOP   0
      L     MW   100
      U     E1.0                       //Sensor Fehler erkennung
      FP   M10.0                     //Flanke bilden
      SPBN  x002
      +     -1                          //-1
      T     MW   100
x002: NOP   0
      L     0                           //Vergleiche auf <=0
      <=I   
      =     A      5.0                  //Fehler

Statt dem E1.0 und FP m10.0 kannst du auch deine negative Flanke verwenden.
Bei der Variante brauchst du weder in die Datenstruktur des FB einzugreifen oder den DB neu zu generieren.

Einfach in der Symbolik die benötigten Merker eintragen und fertig.

Eine 318 CPU wie lange wird die eigentlich schon nicht mehr gebaut?
 
Zuletzt bearbeitet:
Zurück
Oben