WO2012076607A1 - Vorrichtung und verfahren zur erstellung eines programms für computergesteuerte maschinen - Google Patents

Vorrichtung und verfahren zur erstellung eines programms für computergesteuerte maschinen Download PDF

Info

Publication number
WO2012076607A1
WO2012076607A1 PCT/EP2011/072099 EP2011072099W WO2012076607A1 WO 2012076607 A1 WO2012076607 A1 WO 2012076607A1 EP 2011072099 W EP2011072099 W EP 2011072099W WO 2012076607 A1 WO2012076607 A1 WO 2012076607A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
machine
conversion
language
data
Prior art date
Application number
PCT/EP2011/072099
Other languages
English (en)
French (fr)
Inventor
Axel HESSENKÄMPER
Klaus-Dieter Becker
Original Assignee
Hessenkaemper Axel
Klaus-Dieter Becker
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 Hessenkaemper Axel, Klaus-Dieter Becker filed Critical Hessenkaemper Axel
Priority to CN201180066638XA priority Critical patent/CN103460150A/zh
Priority to US13/992,197 priority patent/US20140115561A1/en
Priority to EP11799661.1A priority patent/EP2649497A1/de
Publication of WO2012076607A1 publication Critical patent/WO2012076607A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • 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/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13119Compiler
    • 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/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23266Compiler
    • 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/36243Convert source, high level code to machine, object code

Definitions

  • the invention relates to a method and a device for creating a program for controlling the operation of a computer-controlled machine according to the preambles of the independent claims.
  • Computer-controlled machines are complex Au ⁇ tomatoes, whose operation is controlled by software. Examples are manufacturing robots, an assembly line or a machine tool. The latter are example ⁇ as machines, in which, for a concrete machining of a workpiece to be controlled by a tool in which other functions also have to be controlled on the other hand, the interest of machine operation and are necessary for him. By way of example, only briefly fuse functions, equipment monitoring (compressed air, oil, ...), chip removal and the like may be mentioned.
  • the control of complex machines is done by digital computers in connection with suitable interfaces to the machine.
  • suitable interfaces to the machine there are a number of manufacturers, such as Heidenhain, Siemens, Fanuc, Rexroth ....
  • the manufactured by the various manufacturers controllers each represent proprietary platforms (PLC design, Siemens Simatic, Fanuc ladder, 7) that are not gegenein ⁇ other interchangeable and are not standardized, especially in their programming and in their process interfaces.
  • the European Standard EN 61131 is based on the international standard IEC 61131 and describes Basics ⁇ gen programmable logic controllers. Part of this standard describes programming languages of programmable logic controllers.
  • the list of instructions and the structured text are text-based, while the others are graphically created.
  • the disadvantage of the concepts described here is that they do not specify uniform programming and require very close-to-machine programming.
  • the object of the invention is to provide a method and a device that allow easy creation of programs for computer-controlled machines.
  • a method for creating a program for controlling the operation of a computer controlled machine has the steps of providing a Encrypt ⁇ development program for converting a first program in a programming language into an executable second program in a machine language, create a first program in the first programming language and converting the first program by means of conversion ⁇ program in an executable second program of the machine language.
  • the first programming language needs not be machine-based, but can be easily understood by humans so that machine programming is simplified and supported.
  • the step of creating the first program may include the steps of pre-provisioning a collection of program parts, and later assembling program parts from the collection into a first program. Program parts that are often programmed equal to, so be prepared to ⁇ and then used quickly.
  • the first program can be created using a graphical user interface.
  • the conversion program may be designed so that it is the second ⁇ Pro program, starting from the first program generate in several machine languages. In the concrete conversion then the target machine language is selected. In it the first program is converted then. But it can also order ⁇ conversion always done routinely in all kinds of machine languages.
  • the program generated by the conversion device may be a cyclically repeated program during operation.
  • a device for generating a runnable second program in a machine language for Controlling the operation of a computer-controlled work ⁇ generating machine, starting from a first program has input means for inputting the first ⁇ Pro program, and conversion means for converting the first to the second program. It may comprise a dial ⁇ device to select one of several possible machine language, in which the second ⁇ Pro program to be generated.
  • the invention also relates to a data carrier having data thereon, which, when used in a computer for program execution, results in a front-end device as above.
  • FIG. 1 schematically shows a machine for which a program can be created according to the invention
  • Fig. 2 shows schematically a conversion device
  • Fig. 3 shows a program structure, as may be present in a more complex machine, at least parts of which can be produced according to the invention
  • Fig. 4 shows schematically the hardware structure in which the invention is applied.
  • FIG. 1 shows a machine tool 10 with a Machine frame 1, a tool 2 in a tool holder 2a, a workpiece 3 on a
  • Workpiece table 3a static and dynamic actuators 4 for the tool, static and dynamic actuators 5 for the workpiece, as an example of one of many auxiliary functions a coolant supply 6 with a pump 6a, a coolant reservoir 6b and a level sensor 6c, a door 7, a door sensor , and a controller 9a and a memory 9b.
  • a coolant supply 6 with a pump 6a, a coolant reservoir 6b and a level sensor 6c, a door 7, a door sensor , and a controller 9a and a memory 9b.
  • Fig. 2 shows a device 20 with which the difficulties mentioned can be completely or partially bypassed.
  • the device 20 is a Encrypt ⁇ averaging device, with a first program 15 can be converted into a second program 25th
  • the first program 15 may be written in a high-level language that replaces machine-level programming.
  • the high-level language can be designed appropriately, so that the user will be able to write a program with his knowledge after a short training period.
  • the user may be a skilled worker who is staying in Ma ⁇ schin hall an operation to the
  • the creation of the first program 15 may be fully or partially stabilized imagine done in a graphical user interface.
  • the graphical user interface can make many requirements intuitively tangible and manageable. Via the graphical user interface ⁇ then be put inputs, perform the step by step in the preparation of the first program 15 °.
  • the first program 15 is input via an input device 21 into the conversion device 20 and converted there in a conversion device 23 into the second program 25, which is output via an output device 24, for example as a stored file or a collection of files. then specifically for machine control
  • the second program 25 is adapted to the respective type of the controller 9, that is, it is ultimately manufacturer-dependent.
  • a simple embodiment a simple embodiment
  • FIG. 2 already shows a further developed embodiment. It is one
  • Dialing device 22 is provided, with which it can be selected in which language the second program 25 is to be generated, ie for which control manufacturer it should fit. It can then possibly one or multiple languages are selected as the language of the second program 25, and generates the order ⁇ conversion apparatus 20 in the mode of operation of same, differing ⁇ che only in the used machine language second programs 25 correspond to the choices in the selector 22 finally (the control manufacturers as mentioned at the outset : Heidenhain, Siemens, Fanuc, Rexroth, ...), which are supported by the Encrypt ⁇ lung device 20th
  • a mode switch can be provided between a first mode (one or more machine languages selectable) and a second mode (several second programs in all supported machine languages).
  • a frequently required step in the creation of the second program 15 is the location allocation ⁇ of data and / or the choice of access options to memory locations. Because unlike conventional PCs machine controls often not comfortable Be ⁇ operating system with file management, input / output system and have the like, which perform many functions automatically without a user it
  • Another relevant aspect of the programs considered is the data collection from the controlled process or machine.
  • One or more or many sensors have Kings ⁇ nen, whose data must be recorded and processed.
  • the first program 15 can accordingly Sensorikbe- commands for sensor query, data recording,
  • actuators or actuators such as coolant pump, chip removal, but also Achssteue ⁇ tion, tool drive), whose control from the
  • second program 25 may be desirable.
  • the first program 15 can accordingly control actuators for generation, formatting, time control,
  • the conversion device 20 may be configured to be
  • the consideration of the properties of the interfaces mentioned above in the description of the actuator and sensor commands to and from the real process (machine, process) can also be achieved by separately indicating interface data describing relevant properties of the interface (such as the characteristic voltage control voltage over the setpoint power ) and the conversion from the first to the second program, both with reference to the first program and with respect to the interface data.
  • the named actuator and sensor commands can be explicitly entered in the first program 15 and are then converted by the conversion device 20.
  • they can also be entered indirectly by being set via the graphical user interface. Even then, they are converted by the conversion device 20.
  • Fig. 3 is structurally divided it possible to program a machine tool is 10. Shown is a structure control in the two programs 35 and 25, the Ma ⁇ machine.
  • the program 35 is the actual tool and work control and serves the konkre ⁇ th production of the workpiece with the tool. It is generated starting from CAD data 31 by a structure 39, which is not explained in more detail.
  • the second program 25 is used to control auxiliary functions, such as the monitoring of the door sensor 8 or the coolant sensor 6c, as shown in Fig. 1, to name a few simple examples. Numerous other functions are also to be controlled.
  • the second program 25 is, as above beschrie ⁇ ben generated by the conversion device 20 based on a written program 15 in the language that is suitable for the used controller 9 on which to run the program. Interfaces 32 are desirable between the second program 25 and the third program 35, since the results from the different controlled processes are mutually exclusive. tig. For example, the work ⁇ piece machining must be interrupted (with program 35), if it is determined (with program 25) that the
  • Coolant circuit is defective (sensor 6c in Fig. 1) or that the car door (sensor 8) has been opened.
  • Interfaces 32 may be provided, which may or must be applied even in the first program 15, which is indicated by arrows 14 in Fig. 3.
  • the order ⁇ conversion device 20 is then designed accordingly to the interface system 14 in the first Pro ⁇ program 15 in an actual
  • Program may include format agreements for data input and / or output, and / or timing arrangements for data input and / or output, and / or storage arrangements for storing and reading data (eg, location for data to be transferred). , and or
  • the second program can control one or more of the following machine functions: equipment control and monitoring, Machine status control and monitoring, user interface, tool management and change,
  • Chip control workpiece monitoring, tool monitoring, safety devices, final drive,
  • the third program can control one or more of the following machine functions:
  • the creation of the first program 15 may be entirely or partially by means of a pre-provisioned collection 36 of program parts 36a - 36g take place, are selected from the concrete during the production of the first program one or more program parts and together quantitative results ⁇ . In addition to the pure selection of
  • Program parts may also be provided to set control parameters for the respective program parts in the course of the creation of the first program (for example: coolant delivery rate). These steps (Pro ⁇ gram part selection, setting parameters) can be done in a graphical zerober Design Benüt.
  • the second program 25 is preferably generated interpreting ⁇ Lich before the time at which it is used. The same applies to the third program 35. But the real time generation second program 25 is possible
  • the generated programs serve, for example, the control of complex machine tools (eg rotary machines, milling machines, ultrasonic machines, laser ablation machines) or processing machines (such as one or more robots).
  • Complex machine tools eg rotary machines, milling machines, ultrasonic machines, laser ablation machines
  • processing machines such as one or more robots.
  • Chemical reactors can also be the control target of the programs to be generated.
  • Fig. 4 shows another structure in which the invention can be applied.
  • 40 symbolizes a complex technical system with many components 10, 40a-c therein, which may include, among other components, for example, the machine 10 of FIG.
  • One or more numerical controls 9, 41a-c serve to control or regulate the individual system parts 10, 40a-c.
  • the one or more numerical controls 9, 41a-c are associated with a parent
  • programmable logic controller 42 via respective suitable interfaces 42a-c (which may correspond to interface 32).
  • connection 44 (such as network connection or also conventional data carrier transport) is loaded onto the programmable controller 42 where it can be executed.
  • the claimed method generates in the embodiment of FIG. 4 in the computer 43 as the second
  • Program 25 preferably a program for the hierarchically superior programmable controller 42, which is designed for communication with hierarchically subordinate numerical controls 41a-c, whose
  • each running programs (third programs 35) can be ⁇ generated to ⁇ .
  • the second program 25 has, on the one hand, one or more central program parts for the execution of the primary tasks of the programmable controller 42 (process or system control), but also interface program parts which are adapted to the existing ones (one or more, the same or the same)
  • a plurality of second programs 25 to operate each of fewer may take a second program 25 for loading ⁇ dienung of the plurality of interfaces (not all existing, possibly only one) are generated of the interfaces 42a-c, which then have interfaces with each other.
  • the / the second program / e 25 can / can per ⁇ wells one already called cyclically executed
  • the second program 25 may also program parts have the change (deletion, altering, Einspie ⁇ len) of numerical control programs (9a in Fig. 1) and / or the auxiliary data (9b in Fig. 1) in each numerical control 41a- c, 9, and ⁇ according to the converting apparatus 20 is adapted to corresponding instructions in the first program 15 in Pro ⁇ corresponding instructions for changing
  • Interfaces generally have hardware components that, however, require appropriate and in many ways customized operation for more complex equipment.
  • the operation of the interface hardware is meant in any case, which in ge ⁇ suitable program parts for implementation or
  • control programs for machine tools and / or for programmable logic controllers is significantly facilitated since the programming close to the machine and also the multiple programming for different hardware are eliminated.
  • the quality also improves, as incorrect programming becomes less likely and the synchronicity of different program versions (in different machine languages) improves.
  • the disclosure of method features should alternatively be understood as a disclosure of a device for carrying out the respective method and also as a disclosure of a method. carrier with data thereon, which, when used in a computer for program execution, yield a corresponding device or implement a corresponding method.

Landscapes

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

Abstract

Ein Verfahren zur Erstellung eines Programms zur Steuerung des Betriebs einer computergesteuerten Maschine, hat die Schritte Bereitstellen eines Umwandlungsprogramms zur Umwandlung eines ersten Programms in einer Programmiersprache in ein lauffähiges zweites Programm in einer Maschinensprache, Erstellen eines ersten Programms in der ersten Programmiersprache, und Umwandeln des ersten Programms mittels des Umwandlungsprogramms in ein lauffähiges zweites Programm der Maschinensprache.

Description

Vorrichtung und Verfahren zur Erstellung eines Programms für computergesteuerte Maschinen
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Erstellung eines Programms zur Steuerung des Betriebs einer computergesteuerten Maschine gemäß den Oberbegriffen der unabhängigen Patentansprüche .
Computergesteuerte Maschinen sind komplexe Au¬ tomaten, deren Betrieb von Software gesteuert wird. Beispiele sind Fertigungsrobotern, eine Montagestraße oder eine Werkzeugmaschinen. Letztere sind beispiels¬ weise Maschinen, bei denen zum einen die konkrete Bearbeitung eines Werkstücks durch ein Werkzeug zu steuern ist, bei denen zum anderen aber auch weitere Funktionen zu steuern sind, die dem Maschinenbetrieb dienen bzw. für ihn notwendig sind. Beispielhaft seien hier nur kurz Sicherungsfunktionen, Betriebsmittelüberwachung (Druckluft, Öl, ...) , Späneförderung und Ähnliches genannt.
Die Steuerung von komplexen Maschinen erfolgt durch Digitalrechner in Verbindung mit geeigneten Schnittstellen zur Maschine hin. Für die steuernden Rechner gibt es eine Reihe von Herstellern, so etwa Heidenhain, Siemens, Fanuc, Rexroth .... Die von den verschienen Herstellern gefertigten Steuerungen stellen jeweils proprietäre Plattformen dar (PLC Design, Siemens Simatic, Fanuc Ladder, ...) , die nicht gegenein¬ ander austauschbar sind und insbesondere in ihrer Programmierung und in ihren Prozessschnittstellen nicht standardisiert sind.
Maschinenhersteller andererseits bieten häufig für gleiche Maschinen Steuerungen mehrerer unterschiedlicher Hersteller an, so dass Steuerungssoftware für die gleiche Maschine nicht einheitlich erstellt werden kann, sondern plattformabhängig immer neu für letztendlich doch gleiche Funktionalitäten geschrieben werden muss .
Weiter nachteilig an der Programmerstellung für Maschinen ist es, dass bisher keine einfach handhabba¬ re Programmiersprache vorhanden ist, die es wenig spezialisierten Nutzern erlauben würde, Steuerungssoftware zu schreiben. Die einzelnen Plattformen fordern vielmehr detailliertes Wissen um die Besonder- heiten der jeweiligen Plattformen, um dementsprechend angepasste Programme in sehr maschinennaher Ausgestal¬ tung schreiben zu können.
Die Europäische Norm EN 61131 basiert auf der internationalen Norm IEC 61131 und beschreibt Grundla¬ gen speicherprogrammierbarer Steuerungen. Ein Teil dieser Norm beschreibt Programmiersprachen von speicherprogrammierbaren Steuerungen. Definiert sind eine Anweisungsliste, die mit Assembler für die EC- Programmierung vergleichbar ist, ein Kontaktplan ähn- lieh einem Elektro-Schaltplan, eine Funktionsbaustein- Sprache, die Logik-Schaltplänen ähnelt, eine Ablauf¬ sprache ähnlich Zustandsdiagrammen, und strukturierter Text, der an Hochsprachen angelehnt ist. Die Anwei- sungsliste und der strukturierte Text sind textbasiert, während die anderen graphisch angelegt sind. Nachteil der hier beschriebenen Konzepte ist es, dass sie keine einheitliche Programmierung festlegen und eine sehr maschinennahe Programmierung erfordern.
Aufgabe der Erfindung ist es, ein Verfahren und eine Vorrichtung anzugeben, die das einfache Erstellen von Programmen für computergesteuerte Maschinen ermöglichen .
Diese Aufgabe wird mit den Merkmalen der unab¬ hängigen Ansprüche gelöst. Abhängige Patentansprüche sind auf bevorzugte Ausführungsformen der Erfindung gerichtet .
Ein Verfahren zur Erstellung eines Programms zur Steuerung des Betriebs einer computergesteuerten Maschine hat die Schritte Bereitstellen eines Umwand¬ lungsprogramms zur Umwandlung eines ersten Programms in einer Programmiersprache in ein lauffähiges zweites Programm in einer Maschinensprache, Erstellen eines ersten Programms in der ersten Programmiersprache, und Umwandeln des ersten Programms mittels des Umwand¬ lungsprogramms in ein lauffähiges zweites Programm der Maschinensprache. Die erste Programmiersprache muss nicht maschinennah angelegt sein, sondern kann für den Menschen leicht (er) verständlich sein, so dass sich die Maschinenprogrammierung vereinfacht und unterstütz wird .
Der Schritt des Erstellens des ersten Programms kann folgende Schritte umfassen: vorab Bereitstellen einer Sammlung von Programmteilen, und später das Zusammenstellen von Programmteilen aus der Sammlung zu einem ersten Programm. Programmteile, die häufig gleich programmiert werden, können so vorbereitet wer¬ den und dann schnell verwendet werden. Das Erstellen des ersten Programms kann mittels einer grafischen Benutzeroberfläche erfolgen.
Das Umwandlungsprogramm kann so ausgelegt sein, dass es ausgehend vom ersten Programm das zweite Pro¬ gramm in mehreren Maschinensprachen erzeugen kann. Bei der konkreten Umwandlung wird dann die Zielmaschinensprache gewählt. In sie wird das erste Programm dann umgewandelt. Es kann aber routinemäßig auch die Um¬ wandlung immer in alle möglichen Maschinensprachen erfolgen .
Das von der Umwandlungseinrichtung erzeugte Programm kann ein im Betrieb zyklisch wiederholt durchlaufenes Programm sein.
Eine Vorrichtung zur Erzeugung eines lauffähi- gen zweiten Programms in einer Maschinensprache zur Steuerung des Betriebs einer computergesteuerten Werk¬ zeugmaschine ausgehend von einem ersten Programm hat eine Eingabeeinrichtung zum Eingeben des ersten Pro¬ gramms, und eine Umwandlungseinrichtung zum Umwandeln des ersten in das zweite Programm. Sie kann eine Wähl¬ vorrichtung aufweisen, um eine von mehreren möglichen Maschinensprachen auszuwählen, in der das zweite Pro¬ gramm erzeugt werden soll. Auch Gegenstand der Erfindung ist ein Datenträ¬ ger mit Daten darauf, die, wenn sie in einem Computer zur Programmausführung herangezogen werden, eine Vor¬ richtung wie oben ergeben. Nachfolgend werden Bezug nehmend auf die Zeich¬ nungen einzelne Ausführungsformen der Erfindung
beschrieben. Es zeigen:
Fig. 1 schematisch eine Maschine, für die ein Programm erfindungsgemäß erstellt werden kann,
Fig. 2 schematisch eine Umwandlungseinrichtung, Fig. 3 eine Programmstruktur, wie sie in einer komplexeren Maschine vorliegen kann, wobei mindestens Teile davon erfindungsgemäß hergestellt werden können, und
Fig. 4 schematisch die Hardwarestruktur, in der die Erfindung angewendet wird.
Fig. 1 zeigt als Beispiel einer komplexen Ma- schine eine Werkzeugmaschine 10 mit einem Maschinenrahmen 1, einem Werkzeug 2 in einer Werkzeug- halterung 2a, einem Werkstück 3 auf einem
Werkstücktisch 3a, statischen und dynamischen Stellglieder 4 für das Werkzeug, statischen und dynamischen Stellglieder 5 für das Werkstück, als Beispiel einer von vielen Hilfsfunktionen eine Kühlmittelzuführung 6 mit einer Pumpe 6a, einem Kühlmittelreservoir 6b und einem Füllstandssensor 6c, einer Tür 7, einem Türsensor 8, und einer Steuerung 9a und einem Speicher 9b.
In einer Werkzeugmaschine ist die Primärfunkti¬ on die Fertigung des Werkstücks. Das Programm hierfür wird häufig ausgehend von CAD-Daten über bestimmte
Zwischenschritte teilautomatisiert erzeugt. Es bleiben dann aber viele Funktionalitäten zusätzlich zu steuern, etwa die erwähnte Kühlung 6 oder die Überwachung der Tür 7. Zahlreiche andere solche Funktionen (Werkzeug¬ management, Benutzerschnittstelle, Spänesteuerung,
Werkstück- und Werkzeugüberwachung, Abfrage von Senso- ren, ...) sind vorhanden. Für diese Funktionen ist neben dem eigentlichen Fertigungsprogramm ein weiteres Programm zu erstellen, das die genannten Aufgaben wahrnimmt . In der Werkzeugmaschine 10 werden dann sowohl das Fertigungsprogramm wie auch das zusätzliche Pro¬ gramm letztlich in der Steuerung 9 laufen und über geeignete Schnittstellen von und zur Maschine auf die¬ se einwirken. Da, wie eingangs gesagt, die Hersteller der Steuerungen 9 keinen einheitlichen Standard zur Programmierung haben, ist jeweils abhängig vom Her¬ steller der Steuerung 9 die konkrete Programmierung vorzunehmen. Wenn ein Maschinenhersteller seinen Kun¬ den schon vorprogrammierte Programmteile mitgeben will, muss er sie letztlich für jeden Steuerungshersteller separat programmieren, sodass abhängig davon, welchen Steuerungshersteller der Kunde für die Maschine 10 wünscht, die passenden Softwareteile (z. B. Kühlmit¬ telsteuerung und -Überwachung, Türüberwachung)
mitgeliefert werden können. Darüber hinaus muss das jeweilige Programm maschinennah geschrieben werden, da sich Hochsprachen zur Programmierungen von Steuerungen komplexer Maschinen nicht entwickelt haben. Fig. 2 zeigt eine Vorrichtung 20, mit der die genannten Schwierigkeiten ganz oder teilweise umgangen werden können. Die Vorrichtung 20 ist eine Umwand¬ lungsvorrichtung, mit der ein erstes Programm 15 in ein zweites Programm 25 umgewandelt werden kann. Das erste Programm 15 kann in einer Hochsprache verfasst sein, die das maschinennahe Programmieren ersetzt. Die Hochsprache kann geeignet ausgelegt werden, sodass der Nutzer mit seinen Kenntnissen nach kurzer Einarbeitung ein Programm zu verfassen in der Lage sein wird. Der Nutzer kann ein Facharbeiter sein, der sich in der Ma¬ schinenhalle eines Betriebs aufhält, um den
Produktionsfortgang zu überwachen. Ihm sollte es mög¬ lich sein, das Programm 15 zu verfassen, ohne
vertiefte Computerkenntnisse erwerben zu müssen. Das Erstellen des ersten Programms 15 kann ganz oder teilweise in einer graphischen Benutzerschnitt¬ stelle erfolgen. Die graphische Benutzerschnittstelle kann viele Erfordernisse intuitiv erfassbar und hand- habbar machen. Über die graphische Benutzerschnitt¬ stelle erfolgen dann Eingaben, die Schritt für Schritt zur Erstellung des ersten Programms 15 führen.
Das erste Programm 15 wird über eine Eingabe- einrichtung 21 in die Umwandlungsvorrichtung 20 eingegeben und dort in einer Umwandlungseinrichtung 23 in das zweite Programm 25 umgewandelt, das über eine Ausgabeeinrichtung 24 ausgegeben wird, beispielsweise als eine gespeicherte Datei oder eine Sammlung von Da- teien, die dann konkret zur Maschinensteuerung
verwendet werden können. Das zweite Programm 25 ist angepasst an den jeweiligen Typ der Steuerung 9 ver- fasst, also letztlich wieder herstellerabhängig. In einer einfachen Ausführungsform kann eine
Umwandlungsvorrichtung 20 das eingegebene erste Pro¬ gramm 15 nur in ein zweites Programm 25 einer
festgelegten Sprache (also letztlich angepasst an ei¬ nen bestimmten Hersteller der gewünschten Steuerung 9) umwandeln. Fig. 2 zeigt demgegenüber schon eine weiterentwickelte Ausführungsform. Es ist eine
Wählvorrichtung 22 vorgesehen, mit der ausgewählt werden kann, in welcher Sprache das zweite Programm 25 erzeugt werden soll, also für welchen Steuerungsher- steller es passen soll. Es können dann ggf. eine oder mehrere Sprachen als Sprache des zweiten Programms 25 gewählt werden, und dementsprechend erzeugt die Um¬ wandlungsvorrichtung 20 in der Wirkungsweise gleiche, nur in der verwendeten Maschinensprache unterschiedli¬ che zweite Programme 25. Die Wahlmöglichkeiten in der Wählvorrichtung 22 entsprechen letztlich den Steuerungsherstellern (wie eingangs genannt: Heidenhain, Siemens, Fanuc, Rexroth, ...), die von der Umwand¬ lungsvorrichtung 20 unterstützt werden.
Anstatt zu wählen, kann aber auch vorgesehen sein, standardmäßig das zweite Programm immer in allen Maschinensprachen zu erzeugen, die von der Vorrichtung 20 unterstützt werden. Insoweit kann auch eine Moden- umschaltung vorgesehen sein zwischen einem ersten Modus (ein oder mehrere Maschinensprachen wählbar) und einem zweiten Modus (mehrere zweite Programme in allen unterstützten Maschinensprachen) .
Ein häufig erforderlicher Schritt bei der Erstellung des zweiten Programms 15 ist die Speicherort¬ zuweisung von Daten und/oder die Wahl von Zugriffsoptionen auf Speicherorte. Da anders als herkömmliche PCs Maschinensteuerungen häufig kein komfortables Be¬ triebssystem mit Dateiverwaltung, Eingabe/Ausgabe- System und ähnlichem haben, die viele Funktionen automatisch übernehmen, ohne dass ein Anwender es
überhaupt merkt, müssen anders als bei der PC- Programmierung bei der Maschinenprogrammierung viele Grundfunktionalitäten mitprogrammiert werden. Dies schlägt dann auch auf die Auslegung der Umwandlungs¬ vorrichtung 20 und ggf. die Erstellung des ersten Programms 15 durch. Insbesondere müssen bei Werkzeugmaschinen häufig Speicherorte für Daten (etwa Parameter,
Statusvariablen, Zwischengrößen, Flags, ...) explizit zugewiesen werden. Darüber hinaus ist der Datenzugriffsmodus häufig festzulegen (etwa ob
Schreiben/Lesen bitweise oder byteweise zu erfolgen hat) . Dies sind Festlegungen, die entweder im ersten Programm 15 getroffen werden können und die von der Umwandlungsvorrichtung 20 dann durch entsprechende Einrichtungen in entsprechende ausführbare Anweisungen im zweiten Programm 25 umgewandelt werden, oder die in der Umwandlungsvorrichtung 20 anhand impliziter Angaben im ersten Programm (etwa Variablendefinition) oder anhand bereitgestellter Vorabinformation (etwa zu Speicherorten und Speicheroptionen) durch entsprechen- de Einrichtungen ermittelt und in das zweite Programm eingearbeitet werden. Soweit die genannten Festlegungen im ersten Programm ausdrücklich gemacht werden, können auch diese genannten Festlegungen (Speicherortzuweisung, Zugriffssteuerung) anhand einer graphischen Benutzerschnittstelle erfolgen.
Ein weiterer relevanter Aspekt der betrachteten Programme ist die Datenerhebung aus dem gesteuerten Prozess bzw. der gesteuerten Maschine heraus. Sie kön¬ nen ein oder mehrere oder viele Sensoren aufweisen, deren Daten aufgenommen und verarbeitet werden müssen. Das erste Programm 15 kann dementsprechend Sensorikbe- fehle zur Sensorabfrage, Datenaufnahme,
Datenformatierung, Zeitsteuerung, Beeinflussung der Analog/Digital-Wandlung (etwa Beeinflussung von Null¬ punkt und Verstärkung bei der Wandlung) und
Datenspeicherung aufweisen, jeweils Daten betreffend, die von Prozeß-/Maschinensensorik zur Verfügung ge¬ stellt werden. Diese Sensorikbefehle können an die jeweiligen Sensorikschnittstellen von der Maschine 10 zur Steuerung 9 hin angepasst sein. Dementsprechend kann die Umwandlungsvorrichtung 20 dazu ausgelegt sein, solche Sensorikbefehle, auch in ihrer Anpassung an die jeweilige Sensorikschnittstelle, im ersten Pro- gramm 15 entgegenzunehmen und in entsprechende
ausführbare Anweisungen im zweiten Programm 25 in der jeweiligen Maschinensprache umzuwandeln.
Ein weiterer relevanter Aspekt der betrachteten Programme ist die Datenausgabe an den gesteuerten Pro- zess bzw. die gesteuerte Maschine. Die Maschinen
weisen zahlreiche Aktoren bzw. Stellglieder auf (etwa Kühlmittelpumpe, Späneförderung, aber auch Achssteue¬ rung, Werkzeugantrieb) , deren Steuerung aus dem
zweiten Programm 25 heraus wünschenswert sein kann.
Das erste Programm 15 kann dementsprechend Aktorikbe- fehle zur Erzeugung, Formatierung, Zeit Steuerung,
Beeinflussung der Digital/Analog-Wandlung (etwa Beein¬ flussung von Nullpunkt und Verstärkung bei der
Wandlung) und Ausgabe von Befehlen für Stellglieder des Prozesses bzw. der Maschine aufweisen. Diese Akto- rikbefehle können an die jeweiligen
Aktorikschnittstellen von der Steuerung 9 zur Maschine 10 hin angepasst sein. Dementsprechend kann die Um- Wandlungsvorrichtung 20 dazu ausgelegt sein, solche
Aktorikbefehle, auch in ihrer Anpassung an die jewei¬ lige Aktorikschnittstelle , im ersten Programm 15 entgegenzunehmen und in entsprechende ausführbare An¬ weisungen im zweiten Programm 25 in der jeweiligen Maschinensprache umzuwandeln.
Die Berücksichtigung der Eigenschaften der oben bei der Beschreibung der Aktorik- und Sensorikbefehle genannten Schnittstellen zum und vom realen Prozess (Maschine, Ablauf) kann auch dadurch erfolgen, dass Schnittstellendaten, die relevante Eigenschaften der Schnittstelle beschreiben, separat angegeben werden (etwa Kennlinie Ansteuerspannung über Sollleistung) und die Umwandlung vom ersten in das zweite Programm sowohl Bezug nehmend auf das erste Programm als auch Bezug nehmend auf die Schnittstellendaten erfolgt. Das erste Programm kann dann z. B. qualitative Angaben machen (etwa Pumpleistung P = 50% von Pmax) , die dann auch anhand der Schnittstellendaten in reale Ansteuer- befehle im zweiten Programm umgewandelt werden (z. B. eine bestimmte Ansteuerspannung oder Pulsbreite für die Pumpe) .
Die genannten Aktorik- und Sensorikbefehle kön- nen explizit im ersten Programm 15 eingebbar sein und werden dann von der Umwandlungsvorrichtung 20 umgewandelt. Bei Programmierung des ersten Programms 15 über eine grafische Benutzeroberfläche können sie aber auch mittelbar eingegeben werden, indem sie über die grafi- sehe Benutzeroberfläche gesetzt werden. Auch dann werden sie von der Umwandlungsvorrichtung 20 umgewandelt .
Fig. 3 zeigt strukturell aufgegliedert die Pro- grammierung einer Werkzeugmaschine 10. Gezeigt ist eine Struktur, in der zwei Programme 35 und 25 die Ma¬ schine steuern. Das Programm 35 ist die eigentliche Werkzeug- und Werkstücksteuerung und dient der konkre¬ ten Fertigung des Werkstücks mit dem Werkzeug. Es wird ausgehend von CAD-Daten 31 durch eine nicht näher erläuterte Struktur 39 erzeugt. Das zweite Programm 25 dient der Steuerung von Hilfsfunktionen, etwa der Ü- berwachung des Türsensors 8 oder des Kühlmittelsensors 6c, wie sie in Fig. 1 gezeigt sind, um einige einfache Beispiele zu nennen. Zahlreiche andere Funktionen sind ebenfalls zu steuern.
Das zweite Programm 25 wird, wie oben beschrie¬ ben, von der Umwandlungsvorrichtung 20 ausgehend von einem verfassten Programm 15 in derjenigen Sprache erzeugt, die für die verwendete Steuerung 9 geeignet ist, auf der das Programm laufen soll. Zwischen dem zweiten Programm 25 und dem dritten Programm 35 sind Schnittstellen 32 wünschenswert, da die Ergebnisse aus den unterschiedlichen gesteuerten Prozessen sich gegensei- tig beeinflussen. So muss beispielsweise die Werk¬ stückbearbeitung (mit Programm 35) unterbrochen werden, wenn (mit Programm 25) festgestellt wird, dass der
Kühlmittelkreislauf defekt ist (Sensor 6c in Fig. 1) oder dass die Kabinentür (Sensor 8) geöffnet wurde.
Um die Interaktion zwischen zweitem Programm 25 und drittem Programm 35 zu ermöglichen, können
Schnittstellen 32 vorgesehen sein, die auch schon im ersten Programm 15 angelegt werden können bzw. müssen, was durch Pfeile 14 in Fig. 3 angedeutet ist. Die Um¬ wandlungsvorrichtung 20 ist dann dementsprechend dazu ausgelegt, die SchnittStellenanlage 14 im ersten Pro¬ gramm 15 in eine tatsächliche
Schnittstellenfunktionalität 32 des zweiten Programms 25 umzuwandeln, sodass das laufende zweite Programm 25 mit einem dritten laufenden Programm 35 kommunizieren kann . Eine Schnittstelle zwischen zweitem und dritten
Programm kann umfassen Formatvereinbarungen zu Daten- ein- und/oder -ausgaben, und/oder Timingvereinbarungen zu Datenein- und/oder -ausgaben, und/oder Speichervereinbarungen für das Speichern und Lesen von Daten (z. B. Speicherort für zu übergebende Daten), und/oder
Kommunikations steuerungsVereinbarungen .
Das zweite Programm kann eine oder mehrere der folgenden Maschinenfunktionen steuern: Betriebsmit- telsteuerung und -Überwachung, Maschinenstatussteuerung und -Überwachung, Benützer- schnittstelle, Werkzeugmanagement und -Wechsel,
Spänesteuerung, Werkstücküberwachung, Werkzeugüberwachung, Sicherungseinrichtungen, Achsantrieb,
Sensorikbetrieb, hierbei insbesondere Sensorabfrage und Datenaufnahme. Das dritte Programm kann eine oder mehrere der folgenden Maschinenfunktionen steuern:
Werkzeugantrieb, Achsantrieb, Sensorikbetrieb, Kolli¬ sionsüberwachung .
Das Erstellen des ersten Programms 15 kann ganz oder teilweise mittels einer vorab bereitgestellten Sammlung 36 von Programmteilen 36a - 36g erfolgen, aus der bei der konkreten Erzeugung des ersten Programms ein oder mehrere Programmteile ausgewählt und zusam¬ mengeführt werden. Neben der reinen Auswahl der
Programmteile kann es auch vorgesehen sein, im Zuge der Erstellung des ersten Programms Steuerungsparame¬ ter für die jeweiligen Programmteile zu setzen (etwa: Förderleistung Kühlmittel) . Auch diese Schritte (Pro¬ grammteilauswahl, Setzen von Parametern) können in einer grafischen Benüt zeroberfläche erfolgen.
Das zweite Programm 25 wird vorzugsweise deut¬ lich vor dem Zeitpunkt erzeugt, zu dem es benützt wird. Gleiches gilt für das dritte Programm 35. Aber auch die Echt zeiterzeugung zweiten Programms 25 ist möglich
Die generierten Programme dienen beispielsweise der Steuerung komplexer Werkzeugmaschinen (z. B. Dreh- maschinen, Fräsmaschinen, Ultraschallmaschinen, Laserabtragsmaschinen) oder Bearbeitungsmaschinen (etwa ein oder mehrere Roboter) . Auch chemische Reaktoren können Steuerungs ziel der zu generierenden Programme sein.
Fig. 4 zeigt eine weitere Struktur, in der die Erfindung angewendet werden kann. 40 symbolisiert eine komplexe technische Anlage mit vielen Komponenten 10, 40a-c darin, die neben anderen Komponenten zum Beispiel die Maschine 10 aus Fig. 1 enthalten kann. Eine oder mehrere numerische Steuerungen 9, 41a-c dienen der Steuerung bzw. Regelung der einzelnen Anlagenteile 10, 40a-c. Die eine oder mehreren numerischen Steuerungen 9, 41a-c sind mit einer übergeordneten
programmierbaren Logiksteuerung 42 über jeweils geeignete Schnittstellen 42a-c (die der Schnittstelle 32 entsprechen können) verbunden.
Es ergibt sich damit ein hierarchischer Aufbau aus einem oder mehreren numerischen Steuerungen 9, 41 9 unmittelbar oder nahe am Prozess/Anlage 40, auf der/denen die genannten dritten Programme 35 laufen, und mindestens einer übergeordneten programmierbaren Steuerung 42, auf der das zweite Programm 25 läuft und für dessen Erzeugung das Verfahren ausgelegt ist.
43 symbolisiert Hardware, z. B. einen Rechner, der prozessfern sein kann, auf der die Komponenten 20 - 24 der Figur 2 implementiert sind. Im Rechner 43 wird das zweite Programm 25 erzeugt. Es wird dann über eine geeignete Verbindung 44 (etwa Netzwerkverbindung oder auch konventioneller Datenträgertransport) auf die programmierbare Steuerung 42 aufgespielt, wo es ausgeführt werden kann.
Das beanspruchte Verfahren erzeugt in der Aus¬ führungsform der Figur 4 im Rechner 43 als zweites
Programm 25 vorzugsweise ein Programm für die hierarchisch übergeordnete programmierbare Steuerung 42, die zur Kommunikation mit hierarchisch untergeordneten numerischen Steuerungen 41a-c ausgelegt ist, deren
jeweils laufenden Programme (dritte Programme 35) an¬ derweitig erzeugt sein können. Das zweite Programm 25 hat zum einen einen oder mehrere zentrale Programmteile zur Wahrnehmung der primären Aufgaben der programmierbaren Steuerung 42 (Prozess- bzw. Anlagensteuerung) , zum anderen aber auch Schnittstellen-Programmteile, die an die vorhan- denen (eine oder mehrere, gleiche oder
unterschiedliche) Hardware-Schnittstellen 42a-c ange- passt sind und diese in Datenformat und/oder Timing und/oder elektrischen Spezifikationen und/oder Protokoll geeignet bedienen.
Wenn in der übergeordneten programmierbaren Logiksteuerung 42 mehrere Schnittstellen hin zu
mehreren numerischen Steuerungen 41a-c vorgesehen sind, können diese Schnittstellen zueinander gleiche oder aber auch zwei oder mehrere unterschiedliche Spezifi- kationen aufweisen, die aber jeweils geeignet bedient werden .
Wenn mehrere Schnittstellen 42a-c vorgesehen sind, können statt eines zweiten Programms 25 zur Be¬ dienung der mehreren Schnittstellen auch mehrere zweite Programme 25 zur Bedienung jeweils wenigerer (also nicht aller vorhandenen, ggf. nur einer) der Schnittstellen 42a-c erzeugt werden, die dann aber un- tereinander Schnittstellen haben.
Das/die zweiten Programm/e 25 kann/können je¬ weils ein schon genannte zyklisch ausgeführtes
Programm sein.
In der Struktur der Figur 4 dient das zweite Programm 25 der Prozess- bzw. Maschinensteuerung indi¬ rekt, indem es über Schnittstellen 42a-d mit den direkt auf die Maschinen bzw. Prozesskomponenten ein- wirkenden numerischen Steuerungen 9, 41a-c einwirkt.
Das zweite Programm 25 kann auch Programmteile haben, die die Änderung (Löschen, Abändern, Einspie¬ len) von numerischen Steuerungsprogrammen (9a in Fig. 1) und/oder deren Hilfsdaten (9b in Fig. 1) in den einzelnen numerischen Steuerungen 41a-c, 9, und dem¬ entsprechend ist die Umwandlungsvorrichtung 20 dazu ausgelegt, entsprechende Anweisungen im ersten Pro¬ gramm 15 in entsprechende Anweisungen zum Ändern
(Löschen, Abändern, Einspielen) von numerischen Steue- rungsprogrammen und/oder deren Hilfsdaten (9b in Fig. 1) in den einzelnen angeschlossenen numerischen Steuerungen 41a-c, 9 umzuwandeln.
Schnittstellen haben allgemein Hardwarekomponenten, die bei komplexeren Gerätschaften aber auch eine geeignete und in vielerlei Hinsicht angepasste Bedienung erfordern. Soweit im Rahmen von Programmen, insbesondere des zweiten Programms 25 von „Schnitt¬ stellen" die Rede ist, ist jedenfalls die Bedienung der Schnittstellen-Hardware gemeint, die sich in ge¬ eignete Programmteile zur Implementierung bzw.
Steuerung der Bedienung der Schnittstellenhardware ab¬ bildet .
Mit dem erfindungsgemäßen Verfahren und der erfindungsgemäßen Vorrichtung wird die Erstellung von Steuerungsprogrammen für Werkzeugmaschinen und/oder für programmierbare Logiksteuerungen markant erleichtert, da das maschinennahe Programmieren und auch das mehrfache Programmieren für unterschiedliche Hardware entfallen. Auch die Qualität verbessert sich, da Fehlprogrammierungen unwahrscheinlicher werden und die Synchronität unterschiedlicher Programmversionen (in unterschiedlichen Maschinensprachen) besser wird.
Allgemein sollen wechselweise die Offenbarung von Verfahrensmerkmalen auch als Offenbarung einer Vorrichtung zur Durchführung des jeweiligen Verfahrens verstanden werden und auch als Offenbarung eines Da- tenträgers mit Daten darauf, die, wenn sie in einem Computer zur Programmausführung herangezogen werden, eine entsprechende Vorrichtung ergeben oder ein entsprechendes Verfahren implementieren.

Claims

Patentansprüche
1. Verfahren zur Erstellung eines Programms zur Steuerung des Betriebs einer computergesteuerten
Maschine, mit den Schritten:
Bereitstellen eines Umwandlungsprogramms zur Umwandlung eines ersten Programms in einer Programmiersprache in ein lauffähiges zweites Programm in einer Maschinensprache,
Erstellen eines ersten Programms in der ersten Programmiersprache, und
Umwandeln des ersten Programms mittels des Um¬ wandlungsprogramms in ein lauffähiges zweites
Programm der Maschinensprache.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Schritt des Erstellens des ersten Pro¬ gramms folgende Schritte umfasst:
vorab Bereitstellen einer Sammlung von Programmteilen,
Zusammenstellen von Programmteilen aus der Sammlung zu einem ersten Programm.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass der Schritt des Erstellens des ersten Pro¬ gramms einen oder mehrere der folgenden Schritte umfasst :
Setzen von Parametern zur Steuerung von Optionen der Programmteile, Zuweisen von Speicherorten zu zu speichernden Daten,
Auswählen von Zugriffsoptionen auf Speicherstellen,
wobei die Umwandlung Bezug nehmend auf die ge¬ setzten Parameter und/oder die Speicherort Zuweisung und/oder die gewählte Zugriffsoption erfolgt.
4. Verfahren nach einem oder mehreren der vorherigen Ansprüche, dadurch gekennzeichnet, dass das Erstel¬ len des ersten Programms und insbesondere das
Zusammenstellen und ggf. das Setzen von Parametern und/oder die Speicherort Zuweisung und/oder die Wahl der Zugriffsoption mittels einer grafischen Benutzeroberfläche erfolgt.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass
der Schritt des Bereitstellen eines Umwand¬ lungsprogramms umfasst, ein Umwandlungsprogramm zu erzeugen, das ausgehend vom ersten Programm das zweite Programm in mehreren Maschinensprachen erzeugen kann, und
der Schritt des Umwandeins umfasst, eine Ma¬ schinensprache zu wählen, in die das erste Programm umgewandelt werden soll, und das erste Programm in das zweite Programme in der gewählten Maschinensprache umzuwandeln.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass mehrere Maschinensprachen gleichzeitig wählbar sind und das Umwandlungsprogramm mehrere zweite Programme entsprechend den gewählten Maschinenspra¬ chen erzeugt.
7. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass
das zweite Programm ein Steuerungsprogramm ist zur Steuerung von Maschinenhilfsfunktionen einer Werkzeugmaschine ,
ein drittes Programm erzeugt wird, das ein Ar¬ beitsprogramm ist zur Steuerung von
Maschinenbearbeitungsfunktionen für ein Werkstück, wobei das Arbeitsprogramm Schnittstellen zum Steuerungsprogramm hat, und
das Umwandlungsprogramm bei der Umwandlung des ersten Programms in das zweite Programm im zweiten Programm nach Maßgabe von Angaben im ersten Programm eine oder mehrere Schnittstellen anlegt, die kompatibel zu einer oder mehreren Schnittstellen im dritten Programm sind.
8. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die
Umwandlungseinrichtung ein im Betrieb zyklisch wiederholt durchlaufendes Programm erzeugt.
9. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass das zweite Programm eine oder mehrere der folgenden Maschinenfunktionen steuert oder eine oder mehrere Schnittstellen hin zu Steuerungen der folgenden Maschinenfunktionen aufweist :
- Betriebsmittelsteuerung und -Überwachung,
- Maschinenstatussteuerung und -Überwachung,
- Benützerschnittstelle,
- Werkzeugmanagement und -Wechsel,
- Spänesteuerung,
- Werkstücküberwachung,
- Werkzeugüberwachung,
- Sicherungseinrichtungen,
- Achsantrieb,
- Sensorikbetrieb ,
und/oder dass das dritte Programm eine oder mehrere der folgenden Maschinenfunktionen steuert:
- Werkzeugantrieb,
- Achsantrieb,
- Sensorikbetrieb,
- Kollisionsüberwachung,
und/oder dass eine Schnittstelle zwischen zweitem und dritten Programm umfasst
- Formatvereinbarungen zu Datenein- und/oder - ausgaben, und/oder
- Timingvereinbarungen zu Datenein- und/oder - ausgaben, und/oder
- Speichervereinbarungen für das Speichern und Lesen von Daten, und/oder
- Kommunikations steuerungsVereinbarungen,
10. Verfahren nach 7, dadurch gekennzeichnet, dass das dritte Programm für eine Werkzeugmaschine von einem Automaten ausgehend von einer digitale Werkstückde¬ finition und nach Maßgabe von Benützereingaben erzeugt wird.
11. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass bei der Umwandlung
Befehle im zweiten Programm erzeugt werden, die die Sensorabfrage und/oder Datenaufnahme von Sensoren und/oder die Art der Analog/Digital-Wandlung betreffen .
12. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass bei der Umwandlung
Befehle im zweiten Programm erzeugt werden, die die Beeinflussung von Stellgliedern oder Achsen der Maschine oder die Art der Digital/Analog-Wandlung betreffen .
13. Verfahren nach einem der vorherigen Ansprüche, bei dem das zweite Programm für eine programmierbare Steuerung erzeugt wird und eine oder mehrere
Schnittstellen hin zu numerischen Steuerungen von Anlagenkomponenten aufweist.
14. Vorrichtung (20) zur Erzeugung eines lauffähigen zweiten Programms (25) in einer Maschinensprache zur Steuerung des Betriebs einer computergesteuer- ten Maschine, insbesondere Werkzeugmaschine, ausge¬ hend von einem ersten Programm (15), mit
einer Eingabeeinrichtung (21) zum Eingeben des ersten Programms,
einer Umwandlungseinrichtung (23) zum Umwandeln des ersten in das zweite Programm, und
einer Ausgabeeinrichtung (24) zum Ausgeben des zweiten Programms .
15. Vorrichtung nach Anspruch 14, dadurch gekennzeichnet, dass
eine Wählvorrichtung (22) vorgesehen ist, um eine von mehreren möglichen Maschinensprachen auszuwählen, in der das zweite Programm erzeugt werden soll, und
die Umwandlungseinrichtung zur Erzeugung des zweiten Programms in der gewählten Maschinensprache ausgelegt ist.
16. Datenträger mit Daten darauf, die, wenn sie in ei¬ nem Computer zur Programmausführung herangezogen werden, eine Vorrichtung nach Anspruch 14 oder 15 ergeben oder ein Verfahren nach einem der Ansprüche 1 bis 13 implementieren.
PCT/EP2011/072099 2010-12-07 2011-12-07 Vorrichtung und verfahren zur erstellung eines programms für computergesteuerte maschinen WO2012076607A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201180066638XA CN103460150A (zh) 2010-12-07 2011-12-07 用于计算机控制类机器的程序创建设备和方法
US13/992,197 US20140115561A1 (en) 2010-12-07 2011-12-07 Apparatus and Method for Creating a Program For Computer-controlled Machines
EP11799661.1A EP2649497A1 (de) 2010-12-07 2011-12-07 Vorrichtung und verfahren zur erstellung eines programms für computergesteuerte maschinen

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102010053668.7 2010-12-07
DE102010053668A DE102010053668A1 (de) 2010-12-07 2010-12-07 Vorrichtung und Verfahren zur Erstellung eines Programms für computergesteuerte Maschinen

Publications (1)

Publication Number Publication Date
WO2012076607A1 true WO2012076607A1 (de) 2012-06-14

Family

ID=45401049

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2011/072099 WO2012076607A1 (de) 2010-12-07 2011-12-07 Vorrichtung und verfahren zur erstellung eines programms für computergesteuerte maschinen

Country Status (5)

Country Link
US (1) US20140115561A1 (de)
EP (1) EP2649497A1 (de)
CN (1) CN103460150A (de)
DE (1) DE102010053668A1 (de)
WO (1) WO2012076607A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2787403A1 (de) * 2013-04-04 2014-10-08 Siemens Aktiengesellschaft Verfahren zum automatischen Erstellen eines Automatisierungsprogramms aus einer technologischen Beschreibung einer Automatisierungslösung
EP2869145B1 (de) * 2013-10-29 2016-04-27 dSPACE digital signal processing and control engineering GmbH Verfahren zur Beeinflussung eines Steuerprogramms eines Steuergerätes
EP3250865B1 (de) 2015-01-30 2021-03-03 Hewlett-Packard Enterprise Development LP Skalierbare kühlmittelverteilungseinheit
DE102015105436A1 (de) * 2015-04-09 2016-10-13 Beckhoff Automation Gmbh Übersetzungsmodul, Verarbeitungsmodul und Steuerungssystem
CN110235131A (zh) * 2017-07-19 2019-09-13 西门子工业软件有限公司 用于模拟工业机器人的机器人程序的方法及系统
US10948883B2 (en) * 2017-09-20 2021-03-16 Rockwell Automation Technologies, Inc. Machine logic characterization, modeling, and code generation
DE102019109184A1 (de) * 2019-04-08 2020-10-08 Teutloff Technische Akademie gGmbH Modellfabrik

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1422619A2 (de) * 2002-10-18 2004-05-26 Rockwell Software Inc. Verfahren und System zum Entwickeln eines Softwareprogramms mittels zusammengestellten Schablonen
US20050149212A1 (en) * 2003-10-27 2005-07-07 Siemens Aktiengesellschaft Controller for a machine tool or production machine
WO2007082862A1 (de) * 2006-01-23 2007-07-26 Siemens Aktiengesellschaft Verfahren zum steuern einer produktionsmaschine
EP2169547A1 (de) * 2008-09-30 2010-03-31 ICS Triplex ISaGRAF Inc. Kompilierungsmodell für mikriprozessorgesteuerte Steuereinrichtungen
DE102009024172A1 (de) * 2009-06-08 2010-12-09 Klaus-Dieter Becker Unified Software Code Generator (USC-Generator)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100131081A1 (en) * 1995-05-30 2010-05-27 Brown David W Systems and methods for motion control
DE10158317B4 (de) * 2001-11-28 2009-06-18 Siemens Ag Verfahren zur Generierung und Ausführung eines diversitären Programmablaufs
JP4009517B2 (ja) * 2002-10-18 2007-11-14 株式会社アドバンテスト プログラム開発支援装置およびコンパイル方法
DE10308815B4 (de) * 2003-02-27 2008-06-05 Siemens Ag Verfahren zur Erzeugung und Visualisierung einer aufgabenorientierten Schrittdarstellung
US7313773B1 (en) * 2004-05-26 2007-12-25 Coware, Inc. Method and device for simulator generation based on semantic to behavioral translation
WO2006089451A1 (de) * 2005-02-28 2006-08-31 Netstal-Maschinen Ag Verfahren zur steurung und bedienung einer produktionszelle sowie eine steuervorrichtung
US9393691B2 (en) * 2009-02-12 2016-07-19 Mitsubishi Electric Corporation Industrial robot system including action planning circuitry for temporary halts

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1422619A2 (de) * 2002-10-18 2004-05-26 Rockwell Software Inc. Verfahren und System zum Entwickeln eines Softwareprogramms mittels zusammengestellten Schablonen
US20050149212A1 (en) * 2003-10-27 2005-07-07 Siemens Aktiengesellschaft Controller for a machine tool or production machine
WO2007082862A1 (de) * 2006-01-23 2007-07-26 Siemens Aktiengesellschaft Verfahren zum steuern einer produktionsmaschine
EP2169547A1 (de) * 2008-09-30 2010-03-31 ICS Triplex ISaGRAF Inc. Kompilierungsmodell für mikriprozessorgesteuerte Steuereinrichtungen
DE102009024172A1 (de) * 2009-06-08 2010-12-09 Klaus-Dieter Becker Unified Software Code Generator (USC-Generator)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2649497A1 *

Also Published As

Publication number Publication date
DE102010053668A1 (de) 2012-06-14
US20140115561A1 (en) 2014-04-24
CN103460150A (zh) 2013-12-18
EP2649497A1 (de) 2013-10-16

Similar Documents

Publication Publication Date Title
WO2012076607A1 (de) Vorrichtung und verfahren zur erstellung eines programms für computergesteuerte maschinen
DE102017003529B4 (de) Parametereinstellvorrichtung, Parametereinstellprogramm und Parametereinstellverfahren
EP2098926B1 (de) Verfahren und Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung
EP2012201B1 (de) Verfahren zum Programmieren einer Sicherheitssteuerung
DE102009011679A1 (de) Verfahren und Vorrichtung zum Erstellen eines Anwenderprogrammes für eine Sicherheitssteuerung
DE102008060003A1 (de) Verfahren und Vorrichtung zum Erstellen eines Anwenderprogramms für eine Sicherheitssteuerung
EP2098925A1 (de) Verfahren und Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung
EP0793820B1 (de) Projektierungsverfahren für die leittechnik einer aus komponenten bestehenden technischen anlage
DE102004041469B4 (de) CNC-Fertigungsanordnung mit zentraler Datenbank
EP2407842B1 (de) Verfahren zur Inbetriebnahme von Maschinen oder Maschinen einer Maschinenserie und Projektierungssystem
DE102008060005A1 (de) Sicherheitssteuerung und Verfahren zum Steuern einer automatisierten Anlage mit einer Vielzahl von Anlagenhardwarekomponenten
EP2098924A1 (de) Verfahren und Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung
EP2837981A2 (de) Verfahren und Vorrichtung zur automatisierten Konfiguration einer Überwachungsfunktion eines Industrieroboters
EP0553621B1 (de) Programmierbare Computersteuerung für eine Werkzeugmaschine
AT412131B (de) Automatisierungssystem zur lösung einer prozesstechnischen aufgabenstellung und verfahren hierzu
DE102020202087A1 (de) Bildschirminhalterstellungsvorrichtung und bildschirminhalterstellungssystem
EP3082002B1 (de) Sicherheitssteuerung und verfahren zum steuern einer automatisierten anlage
EP2098928A1 (de) Verfahren und Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung
EP1513036A2 (de) Einrichtung zur Regelung und/oder Steuerung von Antrieben bei Werkzeug- oder Produktionsmaschinen
DE19614202C2 (de) Verfahren und Vorrichtung zur Steuerung einer Werkzeugmaschine, insbesondere einer Funkenerosionsmaschine
EP1886198B1 (de) Parametrierungsgerät und verfahren zum parametrieren elektrischer geräte
EP3420426A1 (de) Vorrichtung und verfahren zur anpassung einer numerischen steuerung an eine zu steuernde maschine
EP4184259A1 (de) Vorrichtung und verfahren zur verarbeitung eines digitalen zwillings einer werkzeugmaschine in einer mehrbenutzerumgebung
WO2006125405A2 (de) Verfahren zum bedienen eines elektrischen gerätes einer automatisierungsanlage
EP2367084A1 (de) Verfahren für die Konfigurierung einer Steuerungseinrichtung einer industriellen Automatisierungsanordnung und Komponente für eine industrielle Automatisierungsanordnung

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11799661

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011799661

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 13992197

Country of ref document: US