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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Systemtakt bei B&R

  1. #1
    Registriert seit
    28.04.2005
    Beiträge
    206
    Danke
    22
    Erhielt 17 Danke für 14 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Haben die B&R Steuerungen auch sowas wie das Taktmerkerbyte bei Siemens?
    Wenn nein, hat da jemand mal ne Alternative Idee?

    MFG

    Markus
    Zitieren Zitieren Systemtakt bei B&R  

  2. #2
    Registriert seit
    29.07.2005
    Ort
    Salzburg
    Beiträge
    113
    Danke
    2
    Erhielt 6 Danke für 6 Beiträge

    Standard

    taktmerker gibts nich. aber da deine task in einer bestimmten zeitscheibe aufgerufen werden ist es ein leichtes "taktmerker" zu generieren.
    zb. lampentakt generiert in TK1 (10msec)

    Code:
    #include <bur/plctypes.h>
    
    _GLOBAL UINT cTakt;
    _GLOBAL BOOL Lampentakt;
    
    _CYCLIC void cyclic&#40;void&#41;
    &#123;
      if &#40;!&#40;++cTakt<100&#41;&#41;
        cTakt=0;
    
      Lampentakt=cTakt<50;
    &#125;

  3. #3
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard

    Ich habe mir eine Funktion geschrieben, die analog zu den Siemens-Taktmerkern arbeitet. Diese nutze ich in jedem Programm.

    Gruss, pt
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

  4. #4
    Registriert seit
    29.07.2005
    Ort
    Salzburg
    Beiträge
    113
    Danke
    2
    Erhielt 6 Danke für 6 Beiträge

    Standard

    schon klar, aber das beantwortet nicht seine frage

  5. #5
    da_kine ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    28.04.2005
    Beiträge
    206
    Danke
    22
    Erhielt 17 Danke für 14 Beiträge

    Standard

    Also ich hab mir jetzt selbst etwas gebastelt, und zwar über den SystemTick!
    Das ist diese Funktion, die im ms bereich hochzählt.

    Das ganze sieht dann so aus:

    [code]

    _LOCAL TIME zeit;
    _LOCAL plcbit mTakt, bWasInit;

    void _INIT vInitModule(void)
    {
    bWasInit = 1;
    }

    void _CYCLIC vCyclicModule( void )
    {
    zeit = clock_ms ();
    /*Mein Taktmerker*/
    counter = clock_ms();

    if (bWasInit)
    {
    bWasInit = 0;
    oldcounter = counter;
    }

    if (counter == (oldcounter + 400))
    {
    mTakt = !mTakt;
    oldcounter = counter;
    }
    }


    [\code]

    Denke zwar nicht, dass das jetzt die Ultimative Lösung ist, aber wenigstens mal ein Diskutabler ansatz.

    MFG

    Markus

  6. #6
    Anonymous Gast

    Standard

    nichts für ungut, aber ich versteh nicht wieso du fürn simplen takt son aufwand betreiben willst?

  7. #7
    da_kine ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    28.04.2005
    Beiträge
    206
    Danke
    22
    Erhielt 17 Danke für 14 Beiträge

    Standard

    @ Gast:

    Die Lösung von harrylask ist mir etwas zu unsicher, ich brauche aber einen Takt.

    Wenn du aber eine einfachere Lösung hast, dann sind wir hier alle offen dafür!

    MFG

    Markus

  8. #8
    Registriert seit
    20.11.2004
    Ort
    Linz, OÖ
    Beiträge
    1.365
    Danke
    96
    Erhielt 178 Danke für 133 Beiträge

    Standard

    Was mir hier auffällt:

    Verwenden eigentlich alle hier, die mit B&R arbeiten, hauptsächlich Ansi-C?

    Ich hab heuer ein größeres Projekt mit B&R gemacht, und der größte Wunsch vom Kunden war, auf keinen Fall C als Programmiersprache zu verwenden!

  9. #9
    Registriert seit
    21.05.2004
    Beiträge
    418
    Danke
    31
    Erhielt 16 Danke für 8 Beiträge

    Standard

    Bei mir steht im (Basis)Taktmerker nur

    bgTakt100:= NOT(bgTakt100)
    Das Ding blinkt somit mit der Taskzeit zB 100msec,
    oder es gibt halt das 2 Timergebilde.

    In meinem Umfeld programmieren die Leute mit 'Automation Basic', das wird dem Anwender auch
    beim Start mit B&R von den Trainern so eingetrichtert.

    Selber verwende ich vermehrt ST - weil es das 3S ST ist und der Code dann zu Codesys + Derivate und TwinCAT passt.

    Kurt

  10. #10
    Registriert seit
    07.05.2004
    Ort
    Campbelltown
    Beiträge
    2.437
    Danke
    131
    Erhielt 276 Danke für 86 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Maxl
    Was mir hier auffällt:

    Verwenden eigentlich alle hier, die mit B&R arbeiten, hauptsächlich Ansi-C?

    Ich hab heuer ein größeres Projekt mit B&R gemacht, und der größte Wunsch vom Kunden war, auf keinen Fall C als Programmiersprache zu verwenden!
    Ich benutze hauptsächlich Automation Basic. C hat den Vorteil, das man einen Quellcode mehrmals aufrufen kann, ähnlich wie bei einem FC/FB in Siemens. So braucht man nur in einem Baustein zu ändern, anstatt in 10.

    Nachteil von C: Die Doku von B&R ist noch schlechter als die sowieso schon bescheidene.

    pt
    Gegen Schwachsinn, Schwachköpfe und armselige Trittbrettfahrer kann man nicht argumentieren.

    Gott sieht alles, auch Signaturen in Geheimschrift,,... aber er petzt nicht.

Lesezeichen

Berechtigungen

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