DE4321631B4 - Verfahren zur Erzeugung von NC-Steuerdaten - Google Patents

Verfahren zur Erzeugung von NC-Steuerdaten Download PDF

Info

Publication number
DE4321631B4
DE4321631B4 DE19934321631 DE4321631A DE4321631B4 DE 4321631 B4 DE4321631 B4 DE 4321631B4 DE 19934321631 DE19934321631 DE 19934321631 DE 4321631 A DE4321631 A DE 4321631A DE 4321631 B4 DE4321631 B4 DE 4321631B4
Authority
DE
Germany
Prior art keywords
program
individual
job
individual measures
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE19934321631
Other languages
English (en)
Other versions
DE4321631A1 (de
Inventor
Gert Jakoby
Norbert Dipl.-Inform. Assmann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE19934321631 priority Critical patent/DE4321631B4/de
Priority to CH57494A priority patent/CH689069A5/de
Publication of DE4321631A1 publication Critical patent/DE4321631A1/de
Application granted granted Critical
Publication of DE4321631B4 publication Critical patent/DE4321631B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35263Using variables, parameters in program, macro, parametrized instruction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36242Convert program for different machines with different M-code, G-code, header

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

Verfahren zur Erzeugung von Steuerdaten für eine NC-Maschine (15) aus einem NC-Programm, das in Form von jeweils mindestens eine Programmanweisung enthaltenden NC-Programmsätzen abgefasst ist, gekennzeichnet durch folgende Schritte:
– Festlegen von NC-Funktionalitäten von im NC-Programm verwendeten Programmanweisungen im Voraus;
– Festlegen von zur Realisierung jeder NC-Funktionalität erforderlichen Einzelmaßnahmen im Voraus;
– Festlegen einer Ausführungsreihenfolge aller Einzelmaßnahmen im Voraus;
– Speichern von Zuordnungen von Programmanweisungen zu NC-Funktionalitäten in einer Syntaxtabelle;
– Speichern der Zuordnungen von Einzelmaßnahmen zu NC-Funktionalitäten in einer Funktionstabelle;
– Speichern der Ausführungsreihenfolge aller Einzelmaßnahmen in einer Jobtabelle, wobei jede in der Jobtabelle abgelegte Einzelmaßnahme eine Ordnungskennzeichnung aufweist, welche den Ausführungszeitpunkt dieser Einzelmaßnahme in Bezug auf eine andere festlegt;
– Zuordnen wenigstens einer NC-Funktionalität zu jeder Programmanweisung des NC-Programms gemäß Syntaxtabelle;
– Zuordnen wenigstens einer Einzelmaßnahme zu jeder NC-Funktionalität gemäß der Funktionstabelle;
– Abspeichern aller erhaltener Einzelmaßnahmen in einer Jobliste,...

Description

  • Stand der Technik
  • Die Erfindung geht aus von einem Verfahren zur Erzeugung von Steuerdaten für eine NC-Maschine. Verfahren dieser Art werden in nahezu allen gebräuchlichen NC-Steuerungen eingesetzt, um Bearbeitungsprogramme, die mehr oder weniger in Klartext gefaßt sind, in von der Maschine ausführbare Steuerdaten zu überführen. Üblicherweise bestehen die Bearbeitungsprogramme aus einer Folge von einzelnen NC-Sätzen, welche wiederum aus einzelnen NC-Worten aufgebaut sind. Zur Überführung in maschinenausführbare Daten dient in der Regel eine Satzaufbereitung oder eine vergleichbare Vorrichtung, welche das Bearbeitungsprogramm satzweise ausliest und wortweise in NC-Steuerdaten übersetzt. Der Zusammenhang zwischen den einzelnen NC-Worten und den zugehörigen von der Maschine auszuführenden Aktionen ist dabei im allgemeinen im Satzaufbereitungsprogramm festgelegt. Sollen bei einer solchen üblichen Steuerung einzelne NC-Worte verändert, erweitert oder neu definiert werden, ist der Einsatz eines hierfür qualifizierten Programmierers erforderlich, welcher die gewünschten Änderungen in Maschinensprache im Satzaufbereitungsprogramm vornimmt. Nachteilig an einer solchen Steuerung ist, daß vor allem dann, wenn das Satzaufbereitungsprogramm häufig geändert wurde, die Programmstruktur sehr komplex werden kann. Dadurch werden einerseits weitere Änderungen zunehmend schwieriger, zum anderen geht eine komplexe Programmstruktur auf Kosten der Bearbeitungsgeschwindigkeit.
  • Aus der EP 124 615 A1 (nächstliegender Stand der Technik) ist ein Verfahren zum flexiblen Erzeugen von NC-Programmen in beliebig vorgebbaren Formaten bekannt. Dabei werden von der Maschine auszuführende Bearbeitungsmuster zunächst durch Parameter beschrieben und anschließend mit Hilfe zweier Tabellen, von denen die erste die Parameter mit maschineninternen Funktionscodes, die zweite die Funktionscodes mit den NC-Programmsätzen in Verbindung setzt, in ein NC-Programm überführt. Durch vergleichsweise einfaches Ändern der Tabellen kann hier die Erzeugung des NC-Programms gut beeinflußt werden. So ist zum Beispiel sowohl die Hinzunahme weiterer Befehle, wie auch die Neudefinition beliebiger Anweisungen in einem anderen Format möglich.
  • Die DE 33 45 269 C2 befasst sich mit einer numerischen Steuereinrichtung für eine Werkzeugmaschine, welche es gestattet, ein bereits im Speicher gespeichertes NC-Programm frei und auf einfache Weise zu revidieren, um so die Änderung der Reihenfolge der aufeinanderfolgenden Bearbeitung einer Anzahl von Werkstückbereichen zu ändern, oder auch die Bearbeitung eines oder mehrerer Werkstückbereiche auszulassen.
  • Aufgabe der vorliegenden Erfindung ist es, ein Verfahren anzugeben, das gleichzeitig eine flexible und schnelle Satzverarbeitung der einzelnen Sätze eines NC-Programmes sowie eine Optimierung der Abarbeitung des NC-Programms ermöglicht.
  • Die Aufgabe wird gelöst durch ein Verfahren mit den Merkmalen des Hauptanspruchs. Durch Verwendung von in Klartext programmierbaren Tabellen, welche die Zuordnung von NC-Programmsatz und von der Maschine auszuführender Anweisung schrittweise herstellen, ist die vorgeschlagene Satzverarbeitung frei konfigurierbar. So gestattet eine Syntaxtabelle, daß das erfindungsgemäße Verfahren hinsichtlich der bei der NC-Programmerstellung zu verwendenden Programmiersprache an jede beliebige Ne-Syntax anpassbar ist. Durch systematische Auflistung der möglichen NC-Funktionen in einer Funktionstabelle und Festlegen einer Arbeitsreihenfolge in einer Jobtabelle ist es ohne weiteres möglich, neue NC-Funktionen einzufügen, alte NC-Funktionen durch neue Funktionen zu ersetzen oder zum Beispiel die Reihenfolge der Abarbeitung zu ändern. Das erfindungsgemäße Verfahren zur Verarbeitung führt, vor allem bei kurzen NC-Sätzen, zu einer deutlichen Verringerung der Blockzykluszeit, da nur Zyklen der tatsächlich programmierten NC-Funktionen ausgeführt werden. Das vorgeschlagene Verfahren eignet sich deshalb gut für Hochgeschwindigkeitsbearbeitungen.
  • Ein Ausführungsbeispiel der Erfindung wird nachfolgend in der Beschreibung und anhand der Zeichnung näher erläutert. Es zeigen
  • 1 ein Strukturschaubild einer Einrichtung zur Durchführung des vorgeschlagenen Verfahrens, 2 ein Bearbeitungsbeispiel in geometrischer Darstellung, 3 ein Beispiel für eine Syntaxtabelle, 4 ein Beispiel für eine Funktionstabelle, 5 ein Beispiel für eine Jobtabelle, 6 gemäß zum Beispiel der 2 erzeugte Joblisten.
  • Beschreibung
  • Ein Strukturschaubild einer Anordnung zur Durchführung des erfindungsgemäßen Verfahrens zeigt 1. In einem mit der Bezugszahl 10 bezeichneten Teileprogramm-Speicher befindet sich ein von einer NC-Maschine 15 auszuführendes Bearbeitungsprogramm. Es weist eine übliche Struktur mit mehreren Sätzen, die wiederum aus einzelnen Worten bestehen, auf und wurde in bekannter Weise erstellt, zum Beispiel mittels einer automatischen Programmerstellungsvorrichtung gemäß Patent EP 124 615 A1 . Durch einen Joblistenerzeuger 30 sowie einen Joblisteninterpreter 40 wird das im Speicher 10 abgelegte Bearbeitungsprogramm in von der Maschine 15 ausführbare Steuerdaten übersetzt, die einem Interpolator 12 und von diesem der Maschine 15 zugeführt werden. Sowohl Joblistenerzeuger 30 als auch Joblisteninterpreter 40 verfügen jeweils über eine eigene zentrale Prozessoreinheit CPU1 beziehungsweise CPU2 sowie über je einen eigenen Arbeitsspeicher. Über eine Datenverbindung 26 stehen Joblistenerzeuger 30 beziehungsweise Joblisteninterpreter 40 miteinander sowie mit den übrigen, nachfolgend beschriebenen Funktionselementen in Verbindung. Im einzelnen kommuniziert der Joblistenerzeuger 30 über die Datenleitung 26 ferner mit dem Teileprogramm-RAM-Speicher 10, mit einem RAM-Speicher 11 zur Speicherung einer Syntax-, einer Funktions-, und einer Jobtabelle, mit einem RAM-Speicher 14 zur Speicherung einer Jobliste, in welcher blockweise Adressen von durch den Joblisteninterpreter 40 abzuarbeitender Jobs abgespeichert sind, mit einem RAM-Speicher 19 zur Speicherung einer aus den im Speicher 11 abgelegten Tabellen erzeugten internen Struktur, sowie mit einem Bedienfeld, über welches eine Bedienperson Eingaben oder Veränderungen der in den Speichern und den Zentraleinheiten vorhandenen Daten vornehmen kann. Zur Interpolation der zur Übergabe an die Maschine 15 bestimmten Steuerdaten dient ein Interpolartor 12, der hierzu eine eigene Prozessoreinheit CPU3 aufweist. In einem (Nur-Lese-)ROM-Speicher 13 befinden sich die Betriebsprogramme für Joblistenerzeuger 30, Joblisteninterpreter 40 und Interpolator 12.
  • Die gewählte Aufteilung der in 1 dargestellten Struktur dient zum Zwecke einer einfacheren Erläuterung. Eine tatsächliche Realisierung kann von der dargestellten Struktur stark abweichen und wird von einem Fachmann ohne Mühe in Anpassung an die gegebene Hardwarestruktur vorgenommen. Beispielsweise ist es oft zweckmäßig, Joblistenerzeuger 30 und Joblisteninterpreter 40 innerhalb einer übergeordneten Steuerungsprozessorstruktur zu realisieren. Die in 1 auf drei Prozessoren CPU1, CPU2 und CPU3 verteilten Aufgaben können auch von einer einzigen CPU durchgeführt werden, beispielsweise durch Verwendung eines Multitasking-fähigen Betriebssystems.
  • Nachfolgend wird die Funktion der in 1 dargestellten Struktur anhand des in 2 gezeigten Bearbeitungsbeispiels erläutert. Ein mögliches zugehöriges, im Speicher 10 abgelegtes NC-Teileprogramm zeigt die nachfolgende Tabelle 1. Tabelle 1
    N10 G1 Z10 F100
    N20 X10 Y30
    N30 X30 F200
    N40 G2 Y10 R10
    N50 G1 X20
    N60 X10 Y30
    N70 M30
  • Es weist sieben mit N10 bis N70 bezeichnete Programmsätze auf. Im ersten Programmsatz N10 wird mit dem Wort G1 festgelegt, daß die nachfolgende Bewegung eine lineare Bewegung ist, mit dem Wort Z10 wird die Koordinate auf der zur Zeichenebene senkrechten Z-Achse auf den Wert 10 festgelegt, mit dem Wort F100 wird die Vorschubgeschwindigkeit auf den Wert 100 eingestellt. Die nachfolgenden Programmzeilen N20 bis N50 definieren das Anfahren der Punkte P1 bis P4. Gemäß der zweiten Programmzeile N20 wird durch die Worte X10 und Y30 dem Punkt P1 die Koordinate X = 10, Y = 30 in einem X/Y-Koordinatensystem zugewiesen. Gemäß der dritten Programmzeile N30 wird dem Punkt P2 durch das Wort X30 die Koordinate X = 30 zugewiesen, die Y-Koordinate bleibt unverändert. Ferner wird durch das Wort F200 dieser Bewegung die Vorschubgeschwindigkeit 200 zugeordnet. In der vierten Programmzeile N40 wird durch das Wort G2 festgelegt, daß die nachfolgende Bewegung eine Kreisbewegung ist, durch das Wort Y10 wird festgelegt, daß der Endpunkt die Y-Koordinate 10 hat, das Wort R10 definiert den Radius der Kreisbewegung auf den Wert 10. In der fünften Programmzeile N50 bewirkt das Wort G1 wiederum eine lineare Bewegung, das Wort X20 definiert die X-Koordinate des Endpunktes dieser Bewegung auf den Wert 20. Die sechste Programmzeile N60 definiert durch die Worte X10 und Y30 den Punkt PI auf die Koordinaten X = 10 und Y = 30. Die siebte Programmzeile N70 enthält mit dem Wort M30 einen Befehl, welcher das Programm beendet.
  • Das Teileprogramm ist nicht notwendig, wie in Tabelle 1 gezeigt, in einer genormten Syntax abgefaßt. Es kann ebenso in einer vom Anwender mittels der Syntaxtabelle im Speicher 11 festgelegten, eigenen Sprache vorliegen. Die einzelnen Sätze des Programmes im Beispiel 2 N10 bis N70 werden vom Joblistenerzeuger 30 wortweise ausgelesen. Zu jedem Wort ermittelt der Joblistenerzeuger 30 in einem ersten Schritt mit Hilfe der im Speicher 11 abgelegten Syntaxtabelle zunächst die zugehörige NC-Funktionalität. Hierzu ist die Syntaxtabelle eine Zuordnungsliste, welche jedem in der Anwendersyntax möglichen NC-Wort eine für die Steuerung verständliche NC-Funktion zuordnet. Ein Beispiel für eine Syntaxtabelle zeigt 3. Sie enthält alle in der benutzten Syntax möglichen NC-Worte, in 3 als ”Syntaxstring” bezeichnet, im Beispiel gemäß 2 beziehungsweise Tabelle 1 sind dies die Worte: X, Y, Z, R, F, N, F, M30, GI, G2, sowie den diesen Worten zugeordneten NC-Funktionalitäten. Dabei wird allgemein zwischen Funktionen, welche eine unmittelbare Maschinenaction bewirken, wie Vorschub, (”Ncf_Vorschub”), Programmende (”Ncf_Progende”), Linearvorschub (”Ncf_linear”), Kreisbewegung (”Ncf_Zirk_re”), als auch Parameterzuordnungen, die nicht eine sofortige Maschinenaktion zur Folge haben, wie Radius, (”P_Radius”), Achskoordinate (”P_Achse_1,2,3”), Vorschubgeschwindigkeit (”P_Vorschub”), Satznummer (”P_Satznr”) unterschieden. Daneben enthält die Syntaxtabelle zweckmäßig noch weitere Angaben über den Zusammenhang zwischen NC-Wort und NC-Funktion, wie insbesondere eine Angabe über den NC-Worttyp ”Parameter” oder ”Funktion” –, über den Geltungsbereich eines Parameters – ”satzlokal”, wenn ein Parameter nur der zugehörigen NC-Funktion bekannt ist, oder ”satzglobal”, wenn alle NC-Funktionen darauf Zugriff haben –, oder über die modale Gruppe einer NC-Funktionen – zum Beispiel ”keine” oder ”Gr_Interpol”, wenn eine Funktion zur Gruppe der Interpolationen gehört.
  • Im Teileprogramm-Beispiel 2 sind folgende NC-Funktionen vorhanden: F, G1, G2, M30, als Parameter: N, R, F, X, Y, Z. Der Joblistenerzeuger 30 ordnet nun gemäß Syntaxtabelle 3 zum Beispiel dem NC-Wort F die NC-Funktion ”Ncf_Vorschub”, dem Parameter ”R” die NC-Parameterfestlegung ”P_Radius” zu. Mit allen übrigen NC-Worten des Teileprogrammes der 2 wird analog verfahren.
  • In einem zweiten Schritt ordnet der Joblistenerzeuger 30 mit Hilfe der Funktionstabelle der gefundenen NC-Funktion die zur Durchführung dieser NC-Funktion erforderlichen Einzelmaßnahmen, diese werden nachfolgend als Job bezeichnet, zu. Die Funktionstabelle ist ebenfalls als Zuordnungsliste aufgebaut, ein Beispiel für eine Funktionstabelle zeigt 4. In der Spalte ”Jobliste” sind die Jobs angeführt, welche zur Umsetzung der in der Spalte ”NC-Funktion” aufgeführten NC-Funktion erforderlich sind. So erfordert die NC-Funktion ”Ncf_Vorschub” die Einzeljobs ”set_feedrate” und ”crt_feedrate”, um die Vorschubgeschwindigkeit auf einem Bildschirm anzuzeigen; die NC-Funktion ”Ncf_Progende”, die Einzeljobs ”finish_preparation” um die Bearbeitung zu beenden sowie ”finish-prog”, um das Programm zu beenden; die NC-Funktion ”Ncf_Linear”, die Einzeljobs ”init_linear_block”, um eine lineare Bewegung zu initialisieren, ”prepare_linear_block”, um eine lineare Bewegung vorzubereiten, ”prepare_linear_kinematic”, um die Kinematik einer Linearbewegung vorzubereiten, sowie ”prepare_linear_profile”, um ein rampenförmiges Bahngeschwindigkeitsprofil vorzubereiten; die NC-Funktion Ncf_circ_re die Einzeljobs ”init_circular_block”, um eine Kreisbewegung zu initialisieren, ”check_prog_circle_data”, um die Kreisdaten zu überprüfen, ”prepare_circular_block”, um eine Kreisbewegung vorzubereiten, ”prepare_circular-kinematic”, um die Kinematik für eine Kreisbewegung vorzubereiten, ”prepare_circular_ramp_profile”, um eine rampenförmiges Bahngeschwindigkeitsprofil vorzubereiten. Neben der Zuordnung von Job zu NC-Funktion enthält auch die Funktionstabelle zweckmäßig noch weitere Angaben, zum Beispiel eine Angabe über die zu einer NC-Funktion erwarteten Parameter. Im Beispiel 4 ist es etwa bei der NC-Funktion ”Ncf_Vorschub” erforderlich, nachfolgend einen Parameter ”P_Vorschub”, bei der NC-Funktion ”Ncf_Zirk_re”, nachfolgend einen Parameter ”P_Radius” für den Radius des Kreises, sowie die Parameter ”P_Interpol_1/2” für eine Mittelpunktprogrammierung einzugeben.
  • In einem dritten Schritt wird mit Hilfe der Jobtabelle eine Abarbeitungsreihenfolge für die in den vorhergehenden Schritten gefundenen Jobs festgelegt. Dies kann zum Beispiel erfolgen, indem jedem Job in der Jobtabelle eine Ordnungszahl zugeordnet ist. Die Abarbeitung der zu einem NC-Block gehörenden Jobs erfolgt jeweils in der Reihenfolge der Ordnungszahlen der vorhandenen Jobs. 5 zeigt für das Programm-Beispiel gemäß 2 eine andere Jobtabelle, bei der die möglichen Jobs hierarchisch angeordnet sind. Ein in der Jobtabelle nach 5 weiter oben stehender Job wird stets vor einem weiter unten stehenden Job ausgeführt. So wird beispielsweise der Einzeljob ”set_feedrate”, um eine Vorschubgeschwindigkeit zu setzen, stets, falls vorhanden, vor den Einzeljobs ”prepare_linear_block”, um eine lineare Bewegung vorzubereiten oder ”prepare_circular_kinematic”, um die Kinematik für die Kreisbewegung vorzubereiten, ausgeführt. Desweiteren ordnet die Jobtabelle jedem Job eine Adresse zu, unter welcher die zu einem Job gehörenden Maschinenanweisungen, welche in einem zweckmäßig ebenfalls im Speicher 11 angeordneten Jobverzeichnis abgespeichert sind, auffindbar sind.
  • Die so gefundenen Jobs werden in der im Arbeitsspeicher 14 angelegten Jobliste blockweise abgespeichert. Ein Block entspricht jeweils einem NC-Satz. 6 zeigt als Beispiel eine aus mehreren Blocks bestehende Jobliste, wie sie sich für das in 2 gezeigte Bearbeitungsbeispiel ergeben könnte. So enthält beispielsweise die dem ersten Programmsatz N10 entsprechende Jobliste als ersten Einzeljob den Befehl ”set_feedrate”, um eine Vorschubgeschwindigkeit zu setzen, als zweiten Einzeljob den Befehl ”init_linear_block”, um einen linearen Block zu initialisieren, als dritten Einzeljob den Befehl ”prepare_linear_block”, um einen linearen Block vorzubereiten, als vierten Einzeljob den Befehl ”prepare_linear_kinematic”, um die Kinematik für eine Linearbewegung vorzubereiten, als fünften Einzeljob den Befehl ”prepare_linear_ramp_profile”, um ein rampenförmiges Bahngeschwindigkeitsprofil vorzubereiten, sowie als sechsten Einzeljob den Befehl ”crt_feedrate”, um die Vorschubgeschwindigkeit anzuzeigen. In gleicher Weise enthält der Arbeitsspeicher 14 zu den weiteren Sätzen N20 bis N70 des in Tabelle 1 wiedergegebenen Bearbeitungsprogrammes jeweils eine Liste mit den dem Programmsatz entsprechenden Einzeljobs. Das Programm wird entgegen der Pfeilrichtung abgearbeitet.
  • Die Abarbeitung der Jobliste erfolgt durch den Joblisteninterpreter 40. Er liest entsprechend der vorgegebenen Reihenfolge die in der Jobliste abgelegten Jobadressen aus und sucht die zugehörigen Maschinenanweisungen im Jobverzeichnis auf. Die gefundenen Anweisungen werden ausgeführt, die dabei ermittelten Daten an den Interpolator 12 übergeben, welcher sie interpoliert und der Maschine 15 zuführt.
  • Seine große Flexibilität bezieht das vorstehend beschriebene Verfahren insbesondere aus dem Gebrauch der im Speicher 11 abgelegten Tabellen. Diese gestatten in beliebiger Weise Veränderungen der Satzverarbeitung. Anpassungen an Anwender, welche eine eigene, nicht standardisierte Programmiersyntax verwenden, sind dadurch ebenso einfach wie zum Beispiel Anpassungen der vorhandenen Steuerung an eine neue Maschine.
  • Obgleich Änderungen der Satzverarbeitung leicht möglich sind, treten sie doch im Routine-Betrieb einer Steuerung, nachdem eine geeignete Syntax einmal festgelegt ist, vergleichsweise selten auf. Ständige Zugriffsmöglichkeit auf die im Speicher 11 abgelegten Tabellen muß deshalb nicht gegeben sein. Zur Beschleunigung des erfindungsgemäßen Verfahren ist es in diesen Fällen zweckmäßig, einen Konfigurator vorzusehen, welcher bei Inbetriebnahme der Maschine 15 die im Speicher 11 abgelegten Tabellen in einem Konfigurationslauf miteinander verknüpft und die gewonnene interne Struktur in einem weiteren Speicher 19 ablegt. Während des Betriebes vereinfacht sich dadurch daß Zuordnen der auszuführenden Jobs zu den einzelnen NC-Worten beziehungsweise NC-Sätzen indem erstere den letzteren in bekannter Weise direkt zugeordnet werden. Die Zwischenschritte des Auffindens des zur einer NC-Syntax gehörenden NC-Funktionen mittels der im Speicher 11 abgelegten Syntaxtabelle beziehungsweise des Auffindens der zu den NC-Funktionen gehörenden Jobs mittels der Funktionstabelle können entfallen. Da die im Speicher 19 abgelegte interne Struktur zudem nicht lesbar sein muß, und aus diesem Grunde zweckmäßig in Maschinensprache abgelegt ist, wird die Zeit zur Abarbeitung eines NC-Blockes erheblich verringert. Ein Generator zur Verknüpfung der Tabellen im Speicher 11 ist zweckmäßig innerhalb der zentralen Prozessoreinheit CPU1 des Joblistenerzeugers 30 realisiert.

Claims (5)

  1. Verfahren zur Erzeugung von Steuerdaten für eine NC-Maschine (15) aus einem NC-Programm, das in Form von jeweils mindestens eine Programmanweisung enthaltenden NC-Programmsätzen abgefasst ist, gekennzeichnet durch folgende Schritte: – Festlegen von NC-Funktionalitäten von im NC-Programm verwendeten Programmanweisungen im Voraus; – Festlegen von zur Realisierung jeder NC-Funktionalität erforderlichen Einzelmaßnahmen im Voraus; – Festlegen einer Ausführungsreihenfolge aller Einzelmaßnahmen im Voraus; – Speichern von Zuordnungen von Programmanweisungen zu NC-Funktionalitäten in einer Syntaxtabelle; – Speichern der Zuordnungen von Einzelmaßnahmen zu NC-Funktionalitäten in einer Funktionstabelle; – Speichern der Ausführungsreihenfolge aller Einzelmaßnahmen in einer Jobtabelle, wobei jede in der Jobtabelle abgelegte Einzelmaßnahme eine Ordnungskennzeichnung aufweist, welche den Ausführungszeitpunkt dieser Einzelmaßnahme in Bezug auf eine andere festlegt; – Zuordnen wenigstens einer NC-Funktionalität zu jeder Programmanweisung des NC-Programms gemäß Syntaxtabelle; – Zuordnen wenigstens einer Einzelmaßnahme zu jeder NC-Funktionalität gemäß der Funktionstabelle; – Abspeichern aller erhaltener Einzelmaßnahmen in einer Jobliste, wobei die Einzelmaßnahmen blockweise abgespeichert werden, wobei zu jedem Programmsatz des NC-Programms ein Block angelegt wird; – Umsetzen der abgespeicherten Einzelmaßnahmen in ausführbare Maschinenanweisungen, die der NC-Maschine (15) zugeführt werden, wobei die zu einem Block gehörenden Einzelmaßnahmen jeweils in der Reihenfolge ihrer Ordnungskennzeichnungen abgearbeitet werden.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die erhaltenen Einzelmaßnahmen in der Jobliste in der Reihe ihrer Ordnungskennzeichnungen abgespeichert werden.
  3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Zuordnen einer Funktionalität zu jeder Programmanweisung und das Zuordnen von Einzelmaßnahmen zu jeder Funktionalität in einem Konfigurationslauf vor Abarbeitung eines NC-Programms durchgeführt wird, und dass eine dabei ermittelte interne Struktur in einem Speicher (19) abgelegt wird.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass jeder Einzelmaßnahme ausführbare Maschinenanweisungen zugeordnet werden, welche in einem Jobverzeichnis abgelegt sind.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Einzelmaßnahmen in der Jobtabelle in ihrer Abarbeitungsreihenfolge abgelegt sind.
DE19934321631 1993-06-30 1993-06-30 Verfahren zur Erzeugung von NC-Steuerdaten Expired - Lifetime DE4321631B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE19934321631 DE4321631B4 (de) 1993-06-30 1993-06-30 Verfahren zur Erzeugung von NC-Steuerdaten
CH57494A CH689069A5 (de) 1993-06-30 1994-02-28 Verfahren zur Erzeugung von NC-Steuerdaten.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19934321631 DE4321631B4 (de) 1993-06-30 1993-06-30 Verfahren zur Erzeugung von NC-Steuerdaten

Publications (2)

Publication Number Publication Date
DE4321631A1 DE4321631A1 (de) 1995-01-12
DE4321631B4 true DE4321631B4 (de) 2010-09-23

Family

ID=6491519

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19934321631 Expired - Lifetime DE4321631B4 (de) 1993-06-30 1993-06-30 Verfahren zur Erzeugung von NC-Steuerdaten

Country Status (2)

Country Link
CH (1) CH689069A5 (de)
DE (1) DE4321631B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5847960A (en) * 1995-03-20 1998-12-08 Electro Scientific Industries, Inc. Multi-tool positioning system
DE29712266U1 (de) * 1997-07-11 1997-09-11 Siemens AG, 80333 München Numerische Steuerung für Werkzeugmaschinen, Roboter o.dgl.
JP2004185397A (ja) * 2002-12-04 2004-07-02 Fanuc Ltd 数値制御装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2632277A1 (de) * 1975-07-17 1977-01-20 Nippon Electric Co Mikroprogrammierbarer computer fuer eine numerische steuervorrichtung
EP0044192A1 (de) * 1980-07-10 1982-01-20 Fanuc Ltd. Verfahren zum Vorbereiten numerischer Steuerungsinformationen
EP0124615A1 (de) * 1982-10-30 1984-11-14 Fanuc Ltd. Verfahren zur selbsttätigen programmierung numerischer steuerungsdaten
DE3345269C2 (de) * 1982-12-14 1991-04-11 Toyoda Koki K.K., Kariya, Aichi, Jp
SU1681297A1 (ru) * 1989-05-24 1991-09-30 Предприятие П/Я А-7160 Система программного управлени технологическими процессами

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2632277A1 (de) * 1975-07-17 1977-01-20 Nippon Electric Co Mikroprogrammierbarer computer fuer eine numerische steuervorrichtung
EP0044192A1 (de) * 1980-07-10 1982-01-20 Fanuc Ltd. Verfahren zum Vorbereiten numerischer Steuerungsinformationen
EP0124615A1 (de) * 1982-10-30 1984-11-14 Fanuc Ltd. Verfahren zur selbsttätigen programmierung numerischer steuerungsdaten
DE3345269C2 (de) * 1982-12-14 1991-04-11 Toyoda Koki K.K., Kariya, Aichi, Jp
SU1681297A1 (ru) * 1989-05-24 1991-09-30 Предприятие П/Я А-7160 Система программного управлени технологическими процессами

Also Published As

Publication number Publication date
DE4321631A1 (de) 1995-01-12
CH689069A5 (de) 1998-08-31

Similar Documents

Publication Publication Date Title
EP2188684B1 (de) Virtuelle werkzeugmaschine zur darstellung von aktionen von bearbeitungseinheiten einer realen werkzeugmaschine
DE3587034T3 (de) Verfahren und Einrichtung zur Steuerung automatischer Geräte.
EP0657043B1 (de) Konfigurierbarer mensch-maschine-kommunikationsbereich für werkzeugmaschinen- oder robotersteuerungen
DE19739559A1 (de) Verfahren und System zum Erstellen oder Visualisieren von Steuerdatensätzen
DE10297651T5 (de) Numerisches Steuerverfahren und numerisches Steuersystem
DE3687696T2 (de) Kompilierungsverfahren von numerisch gesteuerten programmen fuer eine vier-achsen-drehbank.
DE2644596A1 (de) Numerische steuerung fuer eine mehrwerkzeugmaschine
EP1184758A2 (de) Verfahren zum Debuggen von Programmen für industrielle Steuerungen, insbesondere Bewegungssteuerungen, im Kontext der Flow Chart Programmierung
DE112017000203B4 (de) Numerische Steuerung und numerisches Steuerungsverfahren
DE112006003954T5 (de) Vorrichtung mit einer numerischen Steuerung
WO2002065223A2 (de) Steuerungs- und überwachungsanlage von maschinen und/oder anlagen mit aktionskomponenten unterschiedlicher aktionsgruppen
DE102007045595A1 (de) Verfahren und virtuelle Werkzeugmaschine zur Darstellung von Aktionen einer realen Werkzeugmaschine
DE10114811A1 (de) System und Verfahren zur Erstellung von mehrachsigen Bearbeitungs-Vorgängen an Werkstücken
EP2650741B1 (de) Werkzeugmaschine
DE112009004583B4 (de) Numerische Steuervorrichtung, Verfahren zum Steuern derselben und Systemprogramm dafür
EP0543034B2 (de) Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine und Werkzeugmaschine zur Ausübung des Verfahrens
DE4039132C2 (de) Verfahren zur Erzeugung von NC-Kodes
DE2338880A1 (de) Verfahren und vorrichtungen zur steuerung der beweglichen teile einer werkzeugmaschine durch ein numerisches umriss- oder punkt-fuer-punkt-steuerungssystem, wobei zwei teile der maschine unabhaengig voneinander entlang einer gemeinsamen achse bewegt werden koennen
DE4321631B4 (de) Verfahren zur Erzeugung von NC-Steuerdaten
DE69214757T2 (de) Numerische Steuerungseinheit mit Positionszählersteuerung und Anzeige
DE102009044348A1 (de) Werkzeugbahnberechnungsvorrichtung für numerisch gesteuertes System und Verfahren zum Betreiben desselben
DE102014016807B4 (de) Numerische Steuervorrichtung mit einer Funktion zur gleichzeitigen Ausführung einer Vielzahl von Befehlen unter Verwendung von Daten im Tabellenformat
DE60023516T2 (de) Gerät zur Erzeugung von Werkzeugbahndaten für NC-Maschine und mit diesem Gerät ausgerüstete numerische Steuerung
DE3751028T2 (de) Numerische steuereinheit.
WO1999023542A1 (de) Verfahren zur steuerung einer cnc-werkzeugmaschine

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8181 Inventor (new situation)

Free format text: JAKOBY, GERT, 64711 ERBACH, DE ASSMANN, NORBERT, DIPL.-INFORM., 647020 MICHELSTADT, DE

8181 Inventor (new situation)

Free format text: JAKOBY, GERT, 64711 ERBACH, DE ASSMANN, NORBERT, DIPL.-INFORM., 64720 MICHELSTADT, DE

8110 Request for examination paragraph 44
8364 No opposition during term of opposition
R071 Expiry of right
R071 Expiry of right