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

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 30 von 30

Thema: Bewegungsmelder

  1. #21
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Jau! Mit "OR" sieht das viel besser aus! Ich bin irgendwie IF-Schleifen-Übertreiber...

  2. #22
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    Zitat Zitat von SanjaDO Beitrag anzeigen
    Was gefällt die denn an dieser Art nicht?
    Na, dann will ich mal auch noch meine Aussage begründen (soll ja nicht wie bei Anderen wie unbegründetes Meckern aussehen):
    - Trotz Doppelzuweisungen an Ausgänge ist Deine Logik nicht vollständig, das Programm erfüllt nicht die Aufgabenstellung: die Lampen leuchten oder blinken immer.
    - Wofür hast Du die Variable "Blinker" angelegt?

    Das Schlimme an SCL und ST ist, daß es Programmierer verleitet, ohne Konzept einfach drauflos zu programmieren und später noch diese und jene bedingte Ausnahmeschaltung nachzuprogrammieren und damit die Logik immer mehr verwässern oder gar ungeschickt komplett aushebeln.
    Das geht mit der LOGO nicht so einfach, da sollte man ein durchdachtes Konzept haben bevor man loslegt - vielleicht hast Du die LOGO deshalb als "letzter Dreck" betitelt?

    Man kann aber natürlich auch in SCL ein funktionierendes Programm schreiben, z.B. so:
    Code:
        #Timer1(IN :=NOT #Timer2.Q,PT := T#1s);
        #Timer2(IN := #Timer1.Q,PT := T#1s);
    
        #Blinken := #Bew_1 OR #Bew_2 OR #Bew_3;
    
        #Lampe_1 := #Bew_1 OR #Blinken AND #Timer1.Q;
        #Lampe_2 := #Bew_2 OR #Blinken AND #Timer1.Q;
        #Lampe_3 := #Bew_3 OR #Blinken AND #Timer1.Q;
    Man kann auch #Timer1.Q gleich mit in #Blinken verknüpfen, dann wird das Programm noch etwas kürzer.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #23
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Nein! Die Lampen Blinken nur wenn keiner der drei Bewegungsmelder aktiv ist. Soll doch so sein oder nicht?
    Nach modernen Programmierrichtlinien muss das Programm verständlich sein und nicht kurz. Vor 20 Jahren war sowas erfordelich. Bei heutiger Hardware spiel das kaum eine Rolle.
    Koplexere Abläufe sind viel einfacher zu verstehen wenn man Befehle von höheren Programmiersprachen benutzt wie IF, Case, For...und KEINE boolsche Algebra mit 20 "OR und "UND" Verknüpfungen hintereinander.
    Das ist auch die Begründing dafür warum ich eine LOGO nicht einsetzten würde. Eine S7-1200er kann sehr viel mehr als eine LOGO und kostet auch nur 20 Euro mehr!!!
    Also warum sollte ich ein Opel kaufen wenn ich für das gleiche Geld ein S-Klasse kaufen kann?

  4. #24
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    Ist Dir meine Programmversion nicht verständlich? Ich könnte vielleicht noch ein paar überflüssige Klammern setzen...

    In erster Linie muß ein Programm zuverlässig seine Aufgabe erfüllen. Ob der Quellcode für unausgebildete Programmierer verständlich ist interessiert nur bei Problemen.

    Meine Erfahrung: die in Hochsprachen geschriebenen Programme enthalten viel mehr Fehler als die mit boolscher Logik.

    Zitat Zitat von SanjaDO Beitrag anzeigen
    Nein! Die Lampen Blinken nur wenn keiner der drei Bewegungsmelder aktiv ist.
    In Deiner Theorie. Oder wie hast Du das getestet?

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Blockmove (05.12.2014)

  6. #25
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    BOOL.JPG

    Und nach noch eine Minimierung durchführen und dann verstehts keiner mehr...

  7. #26
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Habe 3 BWM und 3 Leuchten,
    wenn BWM 1 anspricht soll H1 leuchten und H2 & 3 blinken
    wenn BWM 2 anspricht soll H2 leuchten und H1 & 3 blinken
    wenn BWM 3 anspricht soll H3 leuchten und H1 & 2 blinken.

    BMW 1 BMW 2 BMW 3 H1 H2 H3
    0 0 0 x x x
    0 0 1 x x 1
    0 1 0 x 1 x
    0 1 1 x 1 1
    1 0 0 1 x x
    1 0 1 1 x 1
    1 1 0 1 1 x
    1 1 1 1 1 1

    x ist blinken
    1 ist dauern an

    Was soll da an meinem Code nicht funktionieren???

    Ich mach alles blinkend:

    Code:
    #Timer1(IN :=NOT #Timer2.Q,PT := T#1s);
    #Timer2(IN := #Timer1.Q,PT := T#1s);
    
    #Lampe_1 := #Timer1.Q;
    #Lampe_2 := #Timer1.Q;
    #Lampe_3 := #Timer1.Q;
    Und dann werden die dauernd leuchten sollen überschrieben:

    Code:
    IF #Bew_1 THEN
        #Lampe_1 := 1;
    END_IF;
    
    IF #Bew_2 THEN
        #Lampe_2 := 1;
    END_IF;
    
    IF #Bew_3 THEN
        #Lampe_3 := 1;
    END_IF;

  8. #27
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von PN/DP Beitrag anzeigen
    die in Hochsprachen geschriebenen Programme enthalten viel mehr Fehler als die mit boolscher Logik.
    Dann degradiere doch weiter mit AWL und FUP!!!

  9. #28
    Registriert seit
    01.10.2014
    Beiträge
    14
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Zitat Zitat von SanjaDO Beitrag anzeigen
    Habe 3 BWM und 3 Leuchten,
    wenn BWM 1 anspricht soll H1 leuchten und H2 & 3 blinken
    wenn BWM 2 anspricht soll H2 leuchten und H1 & 3 blinken
    wenn BWM 3 anspricht soll H3 leuchten und H1 & 2 blinken.

    BMW 1 BMW 2 BMW 3 H1 H2 H3
    0 0 0 x x x
    0 0 1 x x 1
    0 1 0 x 1 x
    0 1 1 x 1 1
    1 0 0 1 x x
    1 0 1 1 x 1
    1 1 0 1 1 x
    1 1 1 1 1 1

    x ist blinken
    1 ist dauern an

    Was soll da an meinem Code nicht funktionieren???

    Ich mach alles blinkend:

    Code:
    #Timer1(IN :=NOT #Timer2.Q,PT := T#1s);
    #Timer2(IN := #Timer1.Q,PT := T#1s);
    
    #Lampe_1 := #Timer1.Q;
    #Lampe_2 := #Timer1.Q;
    #Lampe_3 := #Timer1.Q;
    Und dann werden die dauernd leuchten sollen überschrieben:

    Code:
    IF #Bew_1 THEN
        #Lampe_1 := 1;
    END_IF;
    
    IF #Bew_2 THEN
        #Lampe_2 := 1;
    END_IF;
    
    IF #Bew_3 THEN
        #Lampe_3 := 1;
    END_IF;
    Ich denke das ihr beiden das vorhaben unterschiedlich interpretiert habt, da es nicht 100%ig vorgegeben ist.
    Harald geht davon aus, dass die Lampen aus sein sollen, wenn keiner der Bewegungsmelder ein Signal sendet.
    Du hingegen gehst davon aus, dass die Lampen dauerhaft blinken sollen.
    Da müsste der TE eigentlich mal sagen was gefordert ist. Wobei ich davon ausgehe, dass die Lösung von Harald dem geforderten entspricht, da auch der TE in seinem angefangenem Projekt den Timer mit den Eingängen anspricht.

    Gruß
    Mehr as´n Dithmarscher kann de Mensch nie warn!

  10. #29
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich glaube der TE weis selber nicht was er will...

  11. #30
    Registriert seit
    01.10.2014
    Beiträge
    14
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von SanjaDO Beitrag anzeigen
    Ich glaube der TE weis selber nicht was er will...
    Da sind wir wohl alle einer Meinung
    Mehr as´n Dithmarscher kann de Mensch nie warn!

  12. Folgender Benutzer sagt Danke zu lirumdarum für den nützlichen Beitrag:

    SanjaDO (05.12.2014)

Ähnliche Themen

  1. Bewegungsmelder als Überwachung
    Von Portisch im Forum Sensorik
    Antworten: 2
    Letzter Beitrag: 12.05.2016, 11:42
  2. Bewegungsmelder 24V
    Von Wu Fu im Forum Elektronik
    Antworten: 15
    Letzter Beitrag: 07.04.2015, 00:14
  3. Bewegungsmelder als Not- Halt
    Von Mathias im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 20
    Letzter Beitrag: 30.01.2010, 11:25
  4. Hausinstallation / Sensoren / Bewegungsmelder
    Von JandeFun im Forum Elektronik
    Antworten: 3
    Letzter Beitrag: 11.11.2009, 23:04
  5. Bewegungsmelder, wo anbringen?
    Von Josef Scholz im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 19.06.2003, 08:10

Lesezeichen

Berechtigungen

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