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

Ergebnis 1 bis 3 von 3

Thema: Twincat Programme aufrufen

  1. #1
    Registriert seit
    23.08.2013
    Beiträge
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    Ich bin neu hier im Forum und habe gleich mal meine erste Frage.

    Seit dieser Woche habe ich mit meiner Technikerarbeit angefangen, welche ich in Twincat 2 programmieren muss.
    Da ich mit Twincat noch nie etwas programmiert habe tue ich mir seit Tagen extrem schwer mir die Programmiersprache ST selbst beizubringen. Fragen kann ich hier leider auch
    niemanden, da mein Betreuer seit Mittwoch nicht mehr im Büro war.

    Zu meiner Aufgabe:

    Ich soll eine Anlage mit verschiedenen Fürderbändern, Sensoren, etc. automatisieren.

    Nun habe ich ein Programm für den Einrichtbetrieb (PRG_einrichten) geschrieben, womit ich alle Bänder und so einzeln fahren kann.
    Als nächstes habe ich eine kleine Schrittkette (PRG_grundstellung) geschrieben, mit welcher ich die Anlage in die Grundstellung fahren will.

    Beide Programme sollen über PRG_MAIN aufrufbar sein. Wenn man z.B. am Panel "einrichten" drückt, soll nur das PRG_einrichten abgearbeitet werden und wenn
    mann "Grundstellung" drückt nur das PRG_grunstellung.

    Irgendwie wird aber immer das PRG_einrichten abgearbeitet, egal was ich schon versucht habe. Vllt. funktioniert das so wie ich es geschrieben hab auch gar nicht, aber
    so langsam bin ich echt ratlos.

    Hab ein Screenshot meines PRG_MAIN angehängt.

    Hoffe mir kann jemand weiterhelfen wie ich das realisieren soll.

    Danke im Vorraus
    Screenshot_1.jpg
    Zitieren Zitieren Twincat Programme aufrufen  

  2. #2
    Registriert seit
    24.02.2009
    Beiträge
    1.242
    Danke
    23
    Erhielt 276 Danke für 235 Beiträge

    Standard

    Deine Unterprogramme werden nur so lange ausgeführt wie die Taster gedrückt sind. Werden die Taster losgelassen werden beide Programme nicht mehr aufgerufen. Ausserdem ist es bei dir möglich beide Programme gleichzeitig laufen zu lassen (Wenn beide Taster gedrückt sind).

    Du brauchst also eine Variable in der gespeichert wird, welche Programm laufen soll. Bei nur 2 Programmen reicht ein Bool, wenn es mehr Fälle gibt kannst du ein Int nehmen oder dir ein Enum erstellen.

    Code:
    var
      bEinricht :bool;
    end_var
    
    If e_S_Pult_Taster15 and not e_S_Pult_Taster16 then   (*verriegelung der Taster gegeneinander*)
      bEinricht := true;
    elsif e_S_Pult_Taster16 and not e_S_Pult_Taster15 then
      bEinricht := false;
    end_if
    
    if bEinricht then
      PRG_einrichten();
    else
      PRG_grundstellung();
    end_if
    Wenn du noch einen Zustand brauchst in dem keines der beiden Programme läuft nimmst du ein INT als Merker und ruft die Programme dann in einer CASE Struktur auf.

    Code:
    var
      iAuswahl :int;
    end_var
    
    If e_S_Pult_Taster15 and not e_S_Pult_Taster16 then   (*verriegelung der Taster gegeneinander*)
      iAuswahl := 1;
    elsif e_S_Pult_Taster16 and not e_S_Pult_Taster15 then
      iAuswahl := 2;
    elsif e_S_Pult_Taster15 and e_S_Pult_Taster16 (*wenn beide Taster gleichzeitig gedrückt sind*)
      iAuswahl := 0;
    end_if
    
    CASE iAuswahl OF
    
      1: PRG_einrichten();
    
      2: PRG_grundstellung();
    
    ELSE
      Störung(); (*oder was auch immer*)
    END_CASE

  3. Folgender Benutzer sagt Danke zu MasterOhh für den nützlichen Beitrag:

    simonbohner (26.08.2013)

  4. #3
    simonbohner ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    23.08.2013
    Beiträge
    11
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke für deine Hilfe,
    hab das Programm von dir heute Morgen so übernommen aber es hat sich gar nichts verändert gehabt.

    Es wurde immer das PRG_einrichten abgearbeitet.

    Nach weiterem 2 Stunden suchen bin ich dann auf des Rätsels Lösung gekommen.

    Ich hatte in der Taskkonfiguration alles 3 Programme untereinander stehen. Weis gar nicht so genau was man da macht, aber als ich PRG_einrichten und PRG_grundstellung aus der Taskkonfig. gelöscht hatte funktionierte alles wunderbar.

    Den Teil von Dir mit der iAuswahl hab ich aber trotzdem im Programm stehen lassen, sieht viel besser aus

Ähnliche Themen

  1. Twincat externe Programme Starten
    Von K-SYSTEM-D im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 31.07.2012, 11:08
  2. Programme verzögert aufrufen
    Von gloeru im Forum CODESYS und IEC61131
    Antworten: 5
    Letzter Beitrag: 28.04.2011, 18:48
  3. Programme speichern
    Von sps-questioner im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 15.04.2010, 21:41
  4. Suche Programme :)
    Von Insane im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 10.04.2009, 13:45
  5. 2 Programme über Wahlschalter aufrufen
    Von irq14 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 30.03.2006, 14:37

Lesezeichen

Berechtigungen

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