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

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

Thema: 358 Digitale Eingänge Erfassen und Auswerten

  1. #11
    Hector ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.07.2010
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Es werden 352 Drähte direkt auf die Digitalen Eingänge der 11 Eingabe-Baugruppen (32 Polig) verdrahtet....

  2. #12
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Du kannst halt ein Signal nur sicher erfassen wenn es länger als die zykluszeit anliegt, oder du alarmfähig baugruppen nimmst. Aber auch bei diesen musst du nachschauen wie lange ein signal mindestens anliegen muss das diese es mitbekommt (denke aber das diese zeitspanne sehr klein ist!)

    ich denke aber wenn die komplette aufgabe der sps nur das erfassen dieser signale ist, die zykluszeit nicht sehr groß wird.
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Zitieren Zitieren Signalzeit...  

  3. #13
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Dann würde ich in einer Schleife prüfen ob ein Eingangswort bzw Dword <> 0 ist, dann dieses/diese Bit suche und daraus eine Meldung generieren.

    Wie willst du programmieren? KOP, FUP, AWL oder SCL?

    Je nachdem wie kannst/musst du dir die Schleife bauen.

    Stichworte sind z.B. Vergleich und Sprungleiste.


    Doch wie schon andere geschrieben haben, etwas Grundlagen musst du dir auf die Schnelle noch aneignen.

    bike

  4. #14
    Hector ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.07.2010
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Vielen Dank für eure Hilfestellungen.
    Ja ich weis, ich bin schon dabei mich durch PDFs und Bücher durchzukämpfen.

    Also nochmal zum allg. Verständniss für mich:

    Ich schreibe in meinen OB1 folgende Anweisungen:

    (MeldeNr_1 = E0.0 etc) -> Symbolliste angelegt!

    //Karte1
    U MeldeNr_1 (Statisch)
    O MeldeNr_2 (Dynamisch)
    S DB1.DBX0.0 (AuslöseBit im DB)

    //Karte2
    U MeldeNr_3 (Statisch)
    O MeldeNr_4 (Dynamisch)
    S DB1.DBX0.1 (AuslöseBit im DB)

    .
    .
    .

    oder hast du dir das anders gedacht?

  5. #15
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Nein.
    Du schreibst dir eine Funktion in einen FC oder FB und diesen rufst du im OB 1 auf oder in einem Zeit OB.

    Und dann nicht UND verknüpfungen sondern die Auswertung machst du über Vergleichen der Signalzustände

    z.B:
    L ED 0
    L 0
    ><D
    = M0.0 // Fehler in ED 0

    Oder mit indirekter Adressierung über eine Schleife


    bike
    Geändert von bike (08.07.2010 um 13:10 Uhr)

  6. #16
    Hector ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.07.2010
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Sorry wenn ich bei solchen Elementaren Aussagen schon ins Schwanken gerade, aber das ist echt neuland....

    Also vlt kannst du mir das an einem BSP mal erklären:

    - Karte1 liefert an folgende Eingänge die Meldungen:
    E0.0 (Fehlermeldung Antivalenzstörung)
    E0.1 (Fehlermeldung Antivalenzstörung DYNAMISCH)

    - Karte 2
    E1.0 (Fehlermeldung Differenz)
    E1.1 (Fehlermeldung Differenz DYNAMISCH)


    Im Touchpannel will ich beide Karten grafisch Darstellen, die dann rot angezeigt werden sollen, wenn auf der jeweiligen Karte ein Fehler ist, also brauch ich ja Pro Karte einen eigenen Merker oder Bit.

  7. #17
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Habe ich doch schon im vorherigen Schrieb gezeigt.
    Es muss doch erst etwas geschehen, wenn das ED <> 0 ist.
    Mit der Info, dass M0.0 = 1 kannst die Auswertung starten.
    So wie es machen willst, hast du eine Wust von UND Verknüpfungen.
    Ich weiß jetzt nicht wie die sich auf die Zykluszeit auswirkt, jedoch ist so, wie du es machen willst kein so echt guter Stil.

    bike

  8. #18
    Registriert seit
    11.12.2009
    Beiträge
    2.113
    Danke
    388
    Erhielt 390 Danke für 271 Beiträge

    Standard

    bike.

    Er möchte nicht wissen ob 32 Karten defekt sein könnten, sondern WELCHE.

    Somit ist sein

    U Eingang1
    U Eingang2
    = DB1.DBX0.0

    gar nicht so schlecht.

    Am Panel müssen dann nur 352 Tasten her, die jwls als Funktion haben RÜCKSETZEN DB1.DBX0.0 - DBXn.n

    Edit: @ Bike. Habe nochmal gelesen, nun hab ich verstanden was du meinst Nehme alles zurück, lasse es aber stehen

    MfG

    Marcel

  9. #19
    Hector ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.07.2010
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ja ich möchte genau wissen welche Karte den Fehler liefert!

    ><D was bedeutet das?

    Würde es dann so gehen:
    Melde_Nr_x ist in der Symbolliste den Eingängen zugeordnen (MeldeNr_1 ; E0.0 etc)

    //Karte1
    L MeldeNr_1 (Statisch)
    L 0
    ><D
    = DB1.DBX0.0 (AuslöseBit_0 im DB)

    L MeldeNr_2 (Dynamisch)
    L 0
    ><D
    = DB1.DBX0.0 (AuslöseBit_0 im DB)

    //Karte2
    L MeldeNr_3 (Statisch)
    L 0
    ><D
    = DB1.DBX0.1 (AuslöseBit_1 im DB)

    L MeldeNr_4 (Dynamisch)
    L 0
    ><D
    = DB1.DBX0.1 (AuslöseBit_1 im DB)
    Geändert von Hector (08.07.2010 um 13:32 Uhr)

  10. #20
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Hector Beitrag anzeigen
    Ja ich möchte genau wissen welche Karte den Fehler liefert!

    ><D was bedeutet das?

    Würde es dann so gehen:
    Melde_Nr_x ist in der Symbolliste den Eingängen zugeordnen (MeldeNr_1 ; E0.0 etc)

    //Karte1
    L MeldeNr_1 (Statisch)
    L 0
    ><D
    = DB1.DBX0.0 (AuslöseBit_0 im DB)

    L MeldeNr_2 (Dynamisch)
    L 0
    ><D
    = DB1.DBX0.0 (AuslöseBit_0 im DB)

    //Karte2
    L MeldeNr_3 (Statisch)
    L 0
    ><D
    = DB1.DBX0.1 (AuslöseBit_1 im DB)

    L MeldeNr_4 (Dynamisch)
    L 0
    ><D
    = DB1.DBX0.1 (AuslöseBit_1 im DB)
    Ja es würde gehen, doch bei deiner Abtastrate ist nicht sicher ob du immer die 50ms Signale mitbekommst.
    Außerdem wirst du so Probleme mit dem Quittieren am OP haben.

    Hast du Vergleich als Stichwort im Simatic manger gesucht?
    Dann würdest du wissen, dass das ein DoppelIntvergleich auf ungleich ist.

    Warum willst du nicht suchen und nachlesen?
    Die Stichworte hast du doch.

    bike

Ähnliche Themen

  1. B&R X20BC0087 digitale eingänge forcen
    Von kag1@softsolution.at im Forum HMI
    Antworten: 3
    Letzter Beitrag: 14.03.2011, 08:51
  2. Phoenix ILC 350PN - Schnelle digitale Eingänge
    Von Vaninger im Forum PHOENIX CONTACT
    Antworten: 13
    Letzter Beitrag: 12.01.2011, 13:20
  3. Kabel für Digitale Eingänge
    Von klaus1 im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 12.05.2010, 21:01
  4. Adressierung digitale Eingänge S7 CPU224
    Von lan12 im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 13.09.2008, 13:09
  5. Betriebsstunden erfassen und auswerten
    Von Anonymous im Forum Programmierstrategien
    Antworten: 14
    Letzter Beitrag: 11.08.2005, 08:35

Lesezeichen

Berechtigungen

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