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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 21

Thema: Betriebsart wechseln

  1. #11
    woody ist offline Benutzer
    Themenstarter
    Registriert seit
    03.05.2015
    Beiträge
    68
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    [CODENetzwerk 1

    U "Regenwasser"
    S M 0.0
    UN "S4 Trockenlaufschutz EIN"
    R M 0.0
    Netzwerk 2

    UN M 0.0
    UN "S3 Twasser EIN/Trocken A"
    S "Ventil Wasserzulauf"
    ON "S2 Trinkwasserzulauf AUS
    O M 0.0
    R "Ventil Wasserzulauf"
    Netzwerk 3

    U "S1 Füllstand MAX"
    U "S3 Twasser EIN/Trocken A"
    O
    U "S1 Füllstand MAX"
    U M 0.0
    S "Wasserpumpe"
    ON "S1 Füllstand MAX"
    ON "S4 Trockenlaufschutz EIN"
    R "Wasserpumpe"

    ][/CODE]

    ohne kommentare kann man es vielleicht besser lesen....

  2. #12
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.302
    Danke
    682
    Erhielt 591 Danke für 452 Beiträge

    Standard

    Nene mit Kommentaren in Code TAGs lässt es sich viel beser lesen. Wieso machst du um M0.0 kein Symbol?

    Ich hab den Code nicht auf fehler geprüft. Aber besser ist es.
    Aber als Tip. Sobald der Code grösser wird, macht es manchmal Sinn Perperie zuerst auf eine Datenstruktur zu mappen. Dann kann man Rückmeldungen z.B. direkt so invertieren dass S1 Füllstand MAX z.B. dann erreicht ist wenn das Signal TRUE ist. Jetzt musst du dich immer im Programmcode drum kümmern ob etwas NC oder NO angeschlossen ist. Sowas kann man einmal im Programm beim Mapping abhandeln und kümmert sich danach nicht mehr drum. Man braucht sein Hirn ja noch für genügend anderes.

    mfG René

  3. #13
    woody ist offline Benutzer
    Themenstarter
    Registriert seit
    03.05.2015
    Beiträge
    68
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Also ich hab den S1 und S2 extra NC gewählt wegen der drahtbruchsicherheit für den Fall das er mir die pumpe und das Trinkwasser Ventil noch abschalten kann.

    Zu deinem Tipp ich weiß was du meinst. ...das macht es bestimmt einfacher. ....ich hab da großes Interesse dran das umzusetzen. ...da ich bis jetzt immer so kompliziert vorgegangen bin weiß ich jetzt nicht wie. ....
    Wäre cool wenn man mir das zeigen kann

  4. #14
    Registriert seit
    30.08.2010
    Ort
    Östereich
    Beiträge
    1.401
    Danke
    469
    Erhielt 208 Danke für 184 Beiträge

    Standard

    Mach ganz am Anfang einen FC in dem du die Eingänge behandelst.
    Darin gehst du Eingang für eingang nach zB.:
    U E0.0 (wenn du einen Öffner hast dann halt UN E0.0)
    = MX.Y (oder schöner das ganze in einen DB schreiben)

    E0.0 . . . sollte natürlich Symbolisch benannt werden.
    Ebenso im DB die Bits benennen

    Falls ein Eingang entprellt werden soll kann das auch hier erledigt werden.

    Im rest des Programms greifst du dann auf die M oder DB bits zu.

    Wenn du nun deine Schwimmerschalter hast, dann kannst du nun, unabhängig ob Öffner oder Schließer, davon ausgehen, dass dein Signal wenn das Wasser unter dem Schalter ist 0 ist und wenn der Schalter betätigt ist 1.
    Elektrotechnik und Elektronik funktioniert mit Rauch (Beweis: Tritt Rauch aus, funktioniert auch das Bauteil nicht mehr)

  5. #15
    woody ist offline Benutzer
    Themenstarter
    Registriert seit
    03.05.2015
    Beiträge
    68
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hab es mal versucht aber leider klappt da gar nix. ..Betriebsart wechseln

    Werde es weiterhin versuchen

  6. #16
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.302
    Danke
    682
    Erhielt 591 Danke für 452 Beiträge

    Standard

    Zitat Zitat von woody Beitrag anzeigen
    Hab es mal versucht aber leider klappt da gar nix. ..Betriebsart wechseln
    Das hilft nicht weiter. Was klappt nicht?

    Der Vorschlag mit Peripheriebereich ummappen geht etwa so.
    In SCL
    Code:
    "HW_IO"."S3 Twasser EIN/Trocken A" :=  "S3 Twasser EIN/Trocken A"; // Zuweisung für Eingänge"HW_IO"."S1 Füllstand MAX" := NOT "S1 Füllstand MAX"; // Invertiert  DB Variable TRUE wenn wirklich Maximal erreicht
    "HW_IO"."S2 Trinkwasserzulauf AUS" := NOT "S2 Trinkwasserzulauf AUS"; 
    "HW_IO"."S4 Trockenlaufschutz EIN" := NOT "S4 Trockenlaufschutz EIN"; // DB Variable TRUE wenn wirklich Trocken
    
    
    "Ventil Wasserzulauf" := "HW_IO"."Ventil Wasserzulauf"; // Zuweisung für Ausgänge
    In AWL
    Code:
          U     "S3 Twasser EIN/Trocken A"
          =     "HW_IO"."S3 Twasser EIN/Trocken A"
    
    
          UN    "S1 Füllstand MAX"
          =     "HW_IO"."S1 Füllstand MAX"
          UN    "S2 Trinkwasserzulauf AUS"
          =     "HW_IO"."S2 Trinkwasserzulauf AUS"
          UN    "S4 Trockenlaufschutz EIN"
          =     "HW_IO"."S4 Trockenlaufschutz EIN"
    
    
    // Zuweisung für Ausgänge
          UN    "HW_IO"."Ventil Wasserzulauf"
          =     "Ventil Wasserzulauf"
    Arbeiten im Programm tust du dann nur noch mit z.B. "HW_IO"."Ventil Wasserzulauf" nicht mehr mit der direkten Peripherie

    Dein Code Könnte dann etwa so aussehen.
    Code:
          UN    "HW_IO"."S1 Füllstand MAX"// Wenn Max nicht erreicht
          U(
          O     "HW_IO"."S3 Twasser EIN/Trocken A"// und Arschtrocken
          O     "Clock_10Hz"         // wozu?
          )
          S     "HW_IO".Wasserpumpe
    
    
          O     "HW_IO"."S1 Füllstand MAX"// Maximal Sensor ausgelöst
          O     "HW_IO"."S4 Trockenlaufschutz EIN"// oder Trockenlauf ausgelöst
          R     "HW_IO".Wasserpumpe  // Wasserpumpe zurücksetzen

  7. #17
    woody ist offline Benutzer
    Themenstarter
    Registriert seit
    03.05.2015
    Beiträge
    68
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    servus....
    also heute habe ich mich nochmals mit dem mapping ausernander gesetzt.

    Gestern hatte nichts funktioniert weil das eine neu umstellung war für mich war. Konnte mir das invertieren noch nicht so richtig einprägen .....wo dann in meinem FC 2 dann nur müll raus kam.


    das ist jetz mein neuer versuch....
    Code:
    FC 1
    //Allgemeine Eingangsabfrage
    2 UN "S1 Sensor Öffner"
    2 = "Füllstand Max"
    2 UN "S2 Sensor Öffner"
    2 = "Trinkwasserzulauf AUS"
    2 U "S3 Sensor Schliesser"
    2 = "Trinkwasserzulauf EIN"
    2 UN "S3 Sensor Schliesser"
    2 = "Trockenlaufschutz AUS"
    2 U "S4 Sensor Öffner"
    2 = "Trockenlaufschutz EIN"
    
    FC 2
    //Betrieb nur mit Regenwasser!
    Netzwerk 1
    2 U "Taster Regenwasser" //Wenn der Taster gedrückt wird 
    2 S "Umschalten" //läuft nur Regenwasser in den Druckspeicher 
    2 U "Trockenlaufschutz EIN" //Wenn Schutz Aktiv
    2 R "Umschalten" //wird das Umschalten zurückgesetzt 
    
    
    Netzwerk 2
    //Trinkwasser wird nur Eingeschaltet wenn kein Regenwasser mehr vorhanden ist .....
    NOT Umschaltung
    2 UN "Umschalten" //Wenn Umschalten nicht Aktiv ist 
    2 UN "Trinkwasserzulauf EIN" //und der Füllstand im Behälter sinkt
    2 S "Ventil Wasserzulauf" //öffnet das Ventil um den Behälter zu füllen 
    2 O "Trinkwasserzulauf AUS" //wenn der Behälter wieder voll ist 
    2 O "Umschalten" //oder wenn umgeschaltet wird
    2 R "Ventil Wasserzulauf" //wird das Trinkwasser zurückgesetzt 
    
    
    @a@0 <Ueberschrift von Netzwerk>
    //Pumpe Arbeitet mit Regenwasser
    bei NOT Umschaltung mit Trinkwasser!
    2 UN "Füllstand Max" //und der Druckspeicher Leer meldet 
    2 U(
    2 ON "Trockenlaufschutz AUS" //und der Trockenlaufschutz AUS ist 
    2 O "Umschalten" //Wenn das Umschalten Aktiv ist
    2 )
    2 S "Wasserpumpe" //wird die Pumpe Eingeschaltet 
    2 O "Füllstand Max" //Wenn der druckspeicher voll ist 
    2 O "Trockenlaufschutz EIN" //oder der Trockenlaufschutz Aktiv wird 
    2 R "Wasserpumpe" // wird die Pumpe zurückgesetzt
    Geändert von woody (29.07.2016 um 19:09 Uhr)

  8. #18
    woody ist offline Benutzer
    Themenstarter
    Registriert seit
    03.05.2015
    Beiträge
    68
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Code:
    also irgendwie funktionieren meine codetags nicht

  9. #19
    woody ist offline Benutzer
    Themenstarter
    Registriert seit
    03.05.2015
    Beiträge
    68
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Kurze Frage zum genannten Thema noch. ..
    Wenn ich im FC 1 meine Eingänge gemappt habe.... muss ich dann im FC 2 meine merker als IN deklarieren?

  10. #20
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.302
    Danke
    682
    Erhielt 591 Danke für 452 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Nein. Wenn du auf Globale Speicher gemappt hast. Also Merker oder vorzugsweise DBs.
    Das Mapping mach ich aber in einem FB. Da hast du dann noch Möglichkeiten Timer und dergleichen reinzuinstanzieren (Um z.B. Prellen zu unterdrücken).

Ähnliche Themen

  1. Betriebsart 2 Einrichtbetrieb
    Von Profilator im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 48
    Letzter Beitrag: 18.06.2014, 08:38
  2. Pneumatik Betriebsart 2
    Von Zersch im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 5
    Letzter Beitrag: 23.09.2013, 16:41
  3. S7 T-CPU Betriebsart Tippen gesteuert
    Von mitchih im Forum Antriebstechnik
    Antworten: 14
    Letzter Beitrag: 06.01.2012, 08:39
  4. 24V Count Betriebsart Drehzahlmessung
    Von mitchih im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 12.08.2010, 07:35
  5. Motor mit Betriebsart S1 in S3 betreiben?
    Von maweri im Forum Antriebstechnik
    Antworten: 3
    Letzter Beitrag: 12.02.2009, 10:48

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •