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

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

Thema: Sinumerik: Quittierung von M-Funktionen, Variablen NCK <-> PLC

  1. #1
    Registriert seit
    15.09.2006
    Ort
    Hessen
    Beiträge
    361
    Danke
    38
    Erhielt 36 Danke für 30 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!

    Ich habe eine etwas spezielle Frage, vielleicht weiß das ja jemand von euch...
    Und zwar: Wie werden bei der Sinumerik die M-Funktionen quittiert? Die Übergabe ist klar, die steht einen Zyklus lang an, und zwar in DB21, ab DBB194 (Siehe Listen, 840D_LIS.pdf). Wie quittiere ich nun diesen Befehl? Oder muss ich selbst für die Vorschubfreigabe sorgen, indem ich diese M-Funktion bis zur Quittierung in eine Alarmmeldung mit Vorschubfreigabe reinnehme, was ich mir eigentlich nicht vorstellen kann, denn beim WZ-Wechsel geht's ja auch, schließlich kommt da auch die Meldung "Warten auf Hilfsfunktions-Quittierung" oben links.
    Bei Fanuc gibt es ja das FIN-Signal, was dann quittiert werden muss, bevor der Vorschub frei gegeben wird. Das, was ich bis jetzt rausgefunden habe, ist, dass wohl jeder M-Befehl einzeln quittiert wird, aber ich weiß nicht, wo.
    Ich hab' auch leider noch kein Projekt da, wo eine Drehmaschine drin ist, ansonsten könnte ich ja beim Futter abgucken, die gehen ja auch oft über M-Befehle auf und zu.
    Dann noch eine: Ich habe schon mal im DocOnCD geschaut, finde das aber ein wenig dürftig... Wie übergebe ich Variablen über den Koppelspeicher zwischen NCK und PLC an die NCK, bzw wieder zurück?
    R-Parameter würden es auch tun, Hauptsache, ich kann in einem CNC-Programm eine alternative Verzweigung damit realisieren (IF... GOTO ABC)
    Wenn jemand doch was in der DocOnCD ausgräbt, was das schön beschreibt, bin ich auch schon sehr dankbar.
    Kann ich auch die NCK-Eingänge (DB10, DBB0-DBB7, jeweils Bit 4-7) in einem CNC-Programm verarbeiten?

    Besten Dank.

    Gruß, Tobias
    Zitieren Zitieren Sinumerik: Quittierung von M-Funktionen, Variablen NCK <-> PLC  

  2. #2
    Registriert seit
    29.01.2004
    Beiträge
    322
    Danke
    10
    Erhielt 22 Danke für 22 Beiträge

    Standard

    Hallo,
    die M-Befehle bis 99 werden ja vom Grundprogramm decodiert. Deshalb denke ich, das die auch ohne dein zutun quittiert werden sollten (Ausnahme M0/M1). Bei M-Befehlen über 99 sollte die Quittierung standardmäßig im DB76 stattfinden.
    Was die Datenübertragung betrifft, schau dir mal den FC 21 an. Die NC-Eingänge/Ausgänge kannst du mit $A_IN[x]== bzw $A_OUT[x]=1 abfragen bzw setzen.
    Gruß
    Andreas

  3. #3
    TobiasA ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    15.09.2006
    Ort
    Hessen
    Beiträge
    361
    Danke
    38
    Erhielt 36 Danke für 30 Beiträge

    Standard

    Licht kommt ins Dunkel. Danke

    Das heißt, wenn ich eine M-Funktion brauche, die eine Quittierung nach Eintreffen eines bestimmten Signals benötigt (wie z.B. die Einschiebefunktion eines Stangenladers bei einer Drehmaschine, oder einen Palettenwechsel bei einem BAZ), dann nehme ich einen M-Befehl oberhalb von M99? Oder kann ich auch bei den M-Funktionen unterhalb von M99 eine temporäre Vorschub- und Einlesesperre einrichten?
    Denn sonst müsste ich ja schon einiges ändern, denn die erweiterten M-Funktionen stehen mir nicht in allen Projekten so zur Verfügung.
    Gibt es eine Liste, in der die verwendeten NCK-Eingänge stehen? Ansonsten such' ich die in den Querverweisen raus...
    Theoretisch könnte ich ja meine M-Funktion auch über die NC-Variablen "quittieren", indem ich nach der M-Funktion eine kleine Verweilzeit einfüge, danach abfrage, ob der NCK-Eingang "1" ist, und wenn nicht, wieder vor der Verteilzeit einspringe, also praktisch eine zyklische Abfrage zu Fuß programmiere. Aber es geht bestimmt auch schöner...
    Und kann ich die verwendeten Datenwörter im Koppelspeicher irgendwo sehen? Denn wenn ich etwas verwende, was schon einmal von einer anderen Funktion benutzt wurde, habe ich ja ein Problem. Anders gefragt: Wenn der FC21 nicht aufgerufen wird, kann ich davon ausgehen, dass dieser Koppelspeicher nicht benutzt wird, richtig?
    Sorry, wenn ich manchmal vielleicht etwas dumm frage, ich hab' erst vor kurzem mit der Sinumerik angefangen. S7 mach' ich schon etwas länger, aber die Sinumerik ist ja schon praktisch eine eigene kleine Welt...

    Danke schonmal für die Hilfe.

    Gruß, Tobias
    Zitieren Zitieren Ah...  

  4. #4
    Registriert seit
    29.01.2004
    Beiträge
    322
    Danke
    10
    Erhielt 22 Danke für 22 Beiträge

    Standard

    Hallo, bei den M-Befehlen über 99 ist es natürlich einfach. Z.B.
    U "Endlage"
    R "M122"

    Bei unter 99 mußt du dann z.B auf den Feed-Stop zugreifen.

    U "M21"
    S FeedStop"
    U "Endlage"
    R "Feedstop"

    Du kannst natürlich auch die Endlage direkt auf den NC-Eingang legen und ihn mit einem Rücksprung abfragen.

    M21 ; Pneumatikzylinder vor
    label:
    msg (" Zylinder fährt vor")
    If $A_IN[9]== 0 gotob label
    msg ()

    Die verwendeten Datenwörter kannst du in der NC gesammelt nicht sehen. Sie sind ja auch abhängig vom Aufruf im NC-Programm.
    Kein FC21 kein Koppelspeicher

    Mir hilft die DoconCD immer viel weiter.

    Gruß

    Andreas

  5. #5
    TobiasA ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    15.09.2006
    Ort
    Hessen
    Beiträge
    361
    Danke
    38
    Erhielt 36 Danke für 30 Beiträge

    Standard

    Ich habe schon oft was in der DocOnCD gesucht und auch gefunden, aber diesmal stand ich irgendwie wie der Ochs vorm Berg.
    Ich hab' heute ein Projekt von einem BAZ auf gehabt, da funktionierte das auch über Feed Stop, nicht über den M-Befehl.

    Ich habe mich wohl etwas durch die Fanuc irritieren lassen, die das komplett allein über das FIN- Signal (also die Quittierung der M-Befehle) laufen lassen. Fanuc ist von der PLC- Seite her etwas einfacher gestrickt. Dafür komme ich mit der CNC- Seite bei denen nicht so gut klar.
    Es muss da wohl eine Gruppe von Alarmen bzw. Meldungen geben, die den Feed Stop auslösen und sonst nichts. Werd' mir das morgen mal angucken. Heute geht's nur noch zu Burger King und dann in's Bett

    Die DocOnCD ist mit das beste Nachschlagewerk, was ich kenne. Aber manchmal ist man aufgrund der Fülle der Infos einfach zu erschlagen, um noch was rauszukriegen. Wenn man dann einen hat, der einem die passenden Stichworte liefert (FB1, erweiterte M-Funktionen, FC21), dann findet man auf einmal wieder was

    Beim Stangenlader muss ich eh beides machen- Feed Stop für die M-Funktionen und Sprünge im Programm, weil ich mit meinem Anschlag für das Auswerfen vom Restmaterial einen Fahrbefehl brauche, den ich am einfachsten natürlich im CNC- Programm generieren kann
    Hatte erst überlegt, ob ich mir von Siemens diesen Baustein organisiere, mit dem man R-Parameter schreiben kann. Das würde auch funktionieren.

    Besten Dank für die Hilfe, und 'n gutes Nächtle,
    Tobias

  6. #6
    Registriert seit
    21.09.2004
    Beiträge
    95
    Danke
    50
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hallo liebe Gemeinde,

    normalerweise müsste das was du sucht die Einlesesperre sein (DB21.DBX6.1) wird dieses Signal gesetzt wird die Bearbeitung solange gestoppt bis es wieder null ist.

    Bsp.

    M74 --> DB21.DBX6.1 auf 1 setzen Maschine bleibt stehen
    M30--> wird erst eingelesen wenn DB21.DBX6.1 wieder auf 0

    hoffe konnte dir helfen

  7. #7
    Registriert seit
    29.01.2004
    Beiträge
    322
    Danke
    10
    Erhielt 22 Danke für 22 Beiträge

    Standard

    Die R-Parameter schreibst du mit dem FB3. Das einzige was du noch dazu brauchst ist der NC-Var-Selektor und der ist auf der Toolbox.

    Gruß

    Andreas

  8. #8
    TobiasA ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    15.09.2006
    Ort
    Hessen
    Beiträge
    361
    Danke
    38
    Erhielt 36 Danke für 30 Beiträge

    Standard

    Murks. Die hab' ich leider nicht vorliegen...

    Ich such' schon länger eine.

    Ich gehe mal davon aus, dass ich mit dem gleichen Baustein auch R-Parameter lesen kann

    Danke für die Angabe der Einlesesperre.

    Gruß, Tobias

  9. #9
    Registriert seit
    29.01.2004
    Beiträge
    322
    Danke
    10
    Erhielt 22 Danke für 22 Beiträge

    Standard

    nein, zum lesen brauchst du den FB2 "Get"

    Gruß
    Andreas

  10. #10
    Registriert seit
    12.04.2005
    Ort
    Black Forest
    Beiträge
    1.336
    Danke
    27
    Erhielt 130 Danke für 117 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Also mal folgendes Daul-Port Ram beschreiben mit dem FC21:

    [PHP]
    CALL "FC21_SIEM_TRANSFER_840D"
    Enable :=L0.0
    Funct :=B#16#4
    S7Var :=P#DB192.DBX0.0 BYTE 32 //Start und länge der Daten
    IVAR1 :=0
    IVAR2 :=-1
    Error :="m_allgem_schmierm_01"
    ErrCode:=MW502
    [/PHP]


    Einlesesperre M-Funktionen, entweder über die Einlesesperre vom Kanal-DB oder mittels DB2 und FC10 aus dem Grundprogramm.
    Da werden dann nur die Bits im DB2 gesetzt (siehe Doku) und der FC10 handelt dann die Sperren und Meldungen ab! Alternativ ist der DB126 und manuelle Einlese und Vorschubsperen möglich.

    Für Binäre Abfragen währen die Digitalen EIngänge sehr gut nutzbar.
    A_IN[x]

    = "DB10_SIEM_NAHTST_NC_840D".A_Set_Inp5 (=DB10.DBX 1.4) bis 39 möglich. Die ersten 4 Bits sind Hardwere mässig auf der NCU vorhanden.

    Zum R-Parameter lesen und schreiben sind wenn ich mich gerade richtig erinnere sind verschiedene Bausteine FB2 und FB3 notwendig.
    Beispiel habe ich gerade nicht so auf dei schenlle da.

    Andere Möglichkeit währe über GUD's kommt halt darauf an was Du machen möchtest.

Ähnliche Themen

  1. Antworten: 18
    Letzter Beitrag: 13.01.2014, 18:15
  2. Funktionen in Funktionen aufrufen
    Von Baldaro im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 21.06.2009, 16:17
  3. IBN Quittierung
    Von mitchih im Forum Programmierstrategien
    Antworten: 1
    Letzter Beitrag: 12.03.2009, 18:12
  4. Quittierung Alarmmeldung
    Von Pinguino im Forum HMI
    Antworten: 5
    Letzter Beitrag: 27.07.2007, 19:30
  5. TP170B Quittierung
    Von Sydney im Forum HMI
    Antworten: 5
    Letzter Beitrag: 28.11.2005, 16:33

Lesezeichen

Berechtigungen

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