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

Ergebnis 1 bis 10 von 10

Thema: Wie kann ich eine bestimmte(vorgegebene) Anzahl von Takten(Impulsen) zählen?

  1. #1
    Registriert seit
    01.06.2013
    Beiträge
    15
    Danke
    9
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen.

    Erst einmal danke in die Runde für die vielen "Helfer" hier die Greenhorns wie mir un dter die Arme greifen.

    Mein Problem:
    Ich muß mit meiner CPU 314 und einem KTP600 eine Steuerung bauen bei der man unter anderem über vordefinierte Buttons auf dem KTP600
    eine präzise Anzahl von Impulsen (z.B. Ein=0,5s ; Aus=0,5s) ausgiebt.

    D.h.: wenn ich auf den Button 8 drücke, benötige ich 8 Impulse aber keinen mehr oder weniger!

    Ich habe 10 Buttons mit Impulsen von 1 bis 10.

    Habe schon an einen Impulsmerker und einen Rückwärtszähler gedacht, scheint mir aber kompliziert zu sein.
    Vielleicht geht es ja ganz einfach undich Greenhorn sehe den Weg dahin nur nicht.

    Über Eure Hilfe wäre ich sehr dankbar.

    Gruß

    Das Siemens Greenhorn (warum einfach, wenn es auch Siemens geht?)
    Zitieren Zitieren Wie kann ich eine bestimmte(vorgegebene) Anzahl von Takten(Impulsen) zählen?  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.203
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Rückwärtszähler ist eine gute Idee für eine sehr einfache Lösung:
    - 1 Hz Takt (z.B. von CPU-Taktmerkerbyte) auf Rückwärtszähler
    - Buttons vom KTP setzen den Zähler auf doppelte gewünschte Impulsanzahl
    - SPS-Ausgang = Ein, wenn der Zählerstand ungerade ist

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

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

    Siemens Greenhorn (09.01.2015)

  4. #3
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    .
    Willst du nun Impulse zählen oder ausgeben ?

    Du kannst zunächst die Forums-Suche oben rechts in der Menü-Leiste mit deinem
    Suchwort füttern, dann gibt es erstmal genug Vorschläge zum Lesen.

    Wenn du dann deinen eigenen Programmentwurf hier postest, wirst du sicherlich
    auch kompetente Unterstützung erhalten.


    .
    kind regards
    SoftMachine

  5. #4
    Registriert seit
    01.06.2013
    Beiträge
    15
    Danke
    9
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich muss die Impulse ausgeben.

    Die S7 soll eine Kamera ansteuern, bei der man die dort gespeicherten Programme durch eine festgelegte Anzahl von Impulsen, die man zu der Kamera sendet. Also 3 Impulse zu der Kamera gesendet= Programm 3 bei der Kamera.
    Es müssen 10 Kameraprogramme ausgeführt werden können.
    Die Länge und der Impulse und die Länge der Pausenzeiten sind der Kamera "egal".
    Ich will es auch wie User PN/DP vorschlägt, versuchen. Bin ja schon froh das ich auf den gleichen Gedanken gekommen bin.
    Dacht nur das es eine einfachere Möglichkeit dafür gibt.
    Den ich merke jetzt schon das das Programm ganz schön lang wird, da das ganze über einen Touchscreen angesteuert werden soll und ie Möglichkeit bestehen muss, dass ich die Kameras (es werden 6!!!) einzeln auf bestimmte Programme einstellen kann.

    Gruß Greenhorn

  6. #5
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.356
    Danke
    455
    Erhielt 695 Danke für 520 Beiträge

    Standard

    Zitat Zitat von Siemens Greenhorn Beitrag anzeigen
    Ich muss die Impulse ausgeben.
    Den ich merke jetzt schon das das Programm ganz schön lang wird, da das ganze über einen Touchscreen angesteuert werden soll und ie Möglichkeit bestehen muss, dass ich die Kameras (es werden 6!!!) einzeln auf bestimmte Programme einstellen kann.
    Zeig mal was du bis jetzt hast. Ich denke dann können wir dir sicher helfen das ein wenig zu vereinfachen.
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  7. #6
    Registriert seit
    01.06.2013
    Beiträge
    15
    Danke
    9
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke Dir, werde ich machen.

    Muss jetzt ahc wieder in die Firma und dort weiter programmiern.
    Werde dort euch wohl etwas senden, kann aber noch ein paar Stunden dauern.

  8. #7
    Registriert seit
    29.01.2007
    Ort
    Sandkrug
    Beiträge
    147
    Danke
    7
    Erhielt 36 Danke für 25 Beiträge

    Standard

    Hallo Greenhorn,
    du hast hier ein interessantes Programmier-Problem. Wenn du noch nicht über tiefergehende Kenntnisse verfügst, werden dir die hier gegebenen Antworten wohl nicht sehr viel weiterhelfen, denn die Lösung sieht auf den ersten Blick einfach aus, ist sie aber nicht.
    Falls du noch Hilfe brauchst, schick mir eine PN, dann schauen wir mal was sich machen lässt

    eNDe

  9. Folgender Benutzer sagt Danke zu eNDe für den nützlichen Beitrag:

    Siemens Greenhorn (13.01.2015)

  10. #8
    Registriert seit
    07.01.2015
    Beiträge
    10
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Wenn du so viele Kamera hast, warum baust du dir dann nicht einen "Kamera-Ansteuerungs-FB".


    Besitzt die Eingänge 1-10 (bool) als IO's. Somit kannst du vom Touchpanel den passenden Eingang setzen und dein FB setzt dir diesen Eingang nach Ablauf der Impulse wieder zurück.
    Somit weißt du am Touchpanel auch direkt, ob der Wechsel schon fertig ist oder noch läuft.


    Und die Geschichte mit den Impulsen selber würde ich ebenfalls über Addition mit Taktmerker machen.




    Hier mal meine Pseudoidee:
    NW1:
    Positive Flanke vom Eingang 1 bis 10 setzt "IWZähler" auf 0 und "SWZähler" auf 1 bis 10 x 2. (wenn Taste 2 gedrückt auf 4 setzen)


    NW2:
    "SWZähler" ungleich 0 UND Positive Flanke vom 0,5 Hz Takt inkrementiert "IWZähler" um 1.


    NW3:
    Impuls für Kamera setzen: Ist "IWZähler" modulo 2 == 0 -----> Kamera bekommt high Impuls.


    (Ich hoffe mal modulo gibt es in Step7, bin mir da grade nicht sicher.)


    NW3:
    Vergelichen ob "IWZähler" == "SWZähler". Wenn ja: "SWZähler" = 0 und Rücksetzen aller 1-10 Bausteineingänge
    Wenn nein: nix machen




    Sollte gehen oder? Wenn du möchtest kann ich dir das mal zusammenbasteln.

  11. #9
    Registriert seit
    20.04.2011
    Beiträge
    18
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    sollte das Problem noch aktuell sein hab' ich in der Pause mal auf die Schnelle was zusammengebaut (und so sieht es auch aus, keine Wunder erwarten!). Es sollte dir aber eine Vorlage sein.

    Der "Kamera FC" enthält 3 Eingänge mit Flankenauswertung die 1 bis 3 Impulse (0,5s High, 0,5 Low) ausgeben. Es ist noch Platz für weitere Eingänge vorgesehen (Ges. max. 15), am besten schaust mal in die angehängte Quelle.

    Pulszeiten sind natürlich einstellbar falls die Kamera etwas Zickig ist.

    Gruß
    deathfun

    PS: Natürlich gehen auch mehr als 15, dazu einfach die Entsprechenden Variablen von WORD auf DWORD ändern.

    EDIT: Gerade gesehen das an der Timern noch MW200-202 dranstehen, die müssten natürlich weg um den FC mehrfach verwenden zu können.
    Angehängte Dateien Angehängte Dateien
    Geändert von deathfun (14.01.2015 um 12:43 Uhr)

  12. #10
    Registriert seit
    21.10.2010
    Beiträge
    546
    Danke
    60
    Erhielt 42 Danke für 40 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi
    Hatte das selbe Problem letztes Jahr bei der Kameraansteuerung zu einer Banner Kamera.
    Ich habe es mit einer simplen Schrittkette gelöst, allerdings musste ich noch ein zweites Signal der Kamera senden, damit diese wusste wann sie bereit sein muss für die Takte.

    Code:
    Schritt 1: Signal "Bereit für Takte" einschalten
    
    Schritt 2: Takt Signal ein, Einschaltverzögerung1 ein, Einschaltverzögerung 2 aus
    
    Nach Einschaltverzögerung1 -->Schritt 3: Taktsingal ausschalten, Einschaltverzögerung1 ausschalten, Einschaltverzögerung2 einschalten, Vergleichen ob Solltakte erreicht wurden
    
    Nach Einschaltverzögerung2 --> Soll=Isttakte: Schritt3,  Soll>Isttakte: Schritt2
    
    Schritt3: Signal "Bereit für Takte" ausschalten, Einschaltverzögerung 2 aus
    Etwa so, lief und läuft immer noch einwandfrei


    Gruss blimaa

Ähnliche Themen

  1. Antworten: 12
    Letzter Beitrag: 16.11.2014, 20:08
  2. Antworten: 3
    Letzter Beitrag: 20.09.2012, 09:38
  3. Antworten: 5
    Letzter Beitrag: 19.01.2012, 23:40
  4. Antworten: 14
    Letzter Beitrag: 13.07.2011, 09:38
  5. Antworten: 2
    Letzter Beitrag: 28.05.2008, 13:25

Lesezeichen

Berechtigungen

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