DE4342660A1 - Einrichtung zum Betreiben eines technischen Gerätes entsprechend vorgegebenen Programmen - Google Patents
Einrichtung zum Betreiben eines technischen Gerätes entsprechend vorgegebenen ProgrammenInfo
- Publication number
- DE4342660A1 DE4342660A1 DE19934342660 DE4342660A DE4342660A1 DE 4342660 A1 DE4342660 A1 DE 4342660A1 DE 19934342660 DE19934342660 DE 19934342660 DE 4342660 A DE4342660 A DE 4342660A DE 4342660 A1 DE4342660 A1 DE 4342660A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- language
- standard
- processor
- control
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical 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/408—Numerical 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/36—Nc in input of data, input key till input tape
- G05B2219/36026—Combine general high level language and specialised plc language
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/36—Nc in input of data, input key till input tape
- G05B2219/36242—Convert 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)
- Programmable Controllers (AREA)
- Devices For Executing Special Programs (AREA)
Description
Die Erfindung bezieht sich auf eine Einrichtung zum Betreiben
eines technischen Geräts, beispielsweise einer Werkzeugma
schine oder eines Roboters, entsprechend vorgegebenen Program
men, die sowohl in einer Standardprogrammiersprache als auch
in einer speziellen Steuerungssprache vorliegen, mit Hilfe
eines Standardprozessors und eines Steuerungsprozessors.
Beispielsweise zur Programmierung von speicherprogrammierba
ren Steuerungen (SPS) gibt es unterschiedliche Programmier
techniken mit jeweils spezifischen Vorteilen. So existieren
verschiedenste Programmiersprachen zum Programmieren einer
SPS. Denkbar sind dabei Standardprogrammiersprachen wie C,
BASIC, PL/M oder aber auch spezielle Steuerungssprachen, z. B.
STEP5. Jede dieser Programmiersprache bietet dabei ihre be
sonderen Vorteile. Dabei bieten die speziellen SPS-Program
miersprachen zwar meist nur einen eingeschränkten und auf
Steuerungsaufgaben zugeschnittene Befehlsumfang, jedoch lie
gen dabei auch nur äußerst kurze Befehls-Ausführungszeiten
vor. Standardprozessoren bieten zwar einen größeren Befehls
umfang, jedoch sind die jeweiligen Befehlsausführungszeiten
wesentlich länger.
Die Programmierung von komplexen Funktionen ist SPS-Program
miersprachen dabei relativ kompliziert und könnte durch den
Einsatz von Standardprogrammiersprachen in Hochsprache
vereinfacht werden. Ein Hochsprachenprogramm ist nämlich
relativ übersichtlich und läßt sich gut strukturieren und
pflegen.
Wenn seitens der Hardwareausstattung bei einer speicherpro
grammierten Steuerung sowohl Standardprozessoren für
Standardprogrammiersprachen als auch Spezielprozessoren für
spezielle Steuerungssprachen zur Verfügung stehen, ist zwar
jeweils die Erstellung eines gesonderten Programms zum Ablauf
auf jeweils einem der Prozessoren denkbar, indem zwischen
deren Programmen durch aufwendiges Umschalten von einem
Prozeß auf den anderen ein Wechsel erfolgt, jedoch ist ein
solcher Wechsel nicht ohne weiteres ein fliegender Wechsel
für das Betriebsgeschehen.
Aufgabe der Erfindung ist es, eine Einrichtung der eingangs
genannten Art so auszubilden, daß seitens des Programmer
stellers einzelne Programmteile wahlweise in Standardpro
grammiersprache oder in spezieller Steuerungsprache abgefaßt
werden können und daß durch Kompiliermaßnahmen daraus ein
störungslos ablauffähiges Programm gewonnen werden kann.
Gemäß der Erfindung wird diese Aufgabe dadurch gelöst, daß
ein entsprechend den Prozeßanforderungen kontinuierlich
fortlaufend alternierend von Sprache zu Sprache wechselnd
geschriebenes Quellprogramm zunächst einem Precompiler zu
geleitet wird, der die Abschnitte in der Steuerungssprache
aus dem Quellprogramm entfernt, in Maschinencode übersetzt
und in einem definierten Bereich dem übrigen Programm wieder
hinzufügt, daß an den Stellen des Entfernes Verweise in der
Standardprogrammiersprache auf die jeweilige Bereichsadresse
des Hinzufügens eingesetzt werden, daß das precompilierte
Programm dann einem Standardcompiler zugeleitet wird und dann
auf den als Master vorgesehenen Standardprozessor und auf den
als Slave vorgesehenen Steuerungsprozessor gegeben wird und
daß der Master, veranlaßt durch die übersetzten Verweise den
Slave aktiviert, der dann jeweils nach Beenden seines zu
behandelnden Programmabschnittes wieder auf den Master
zurückschaltet.
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung
dargestellt und wird im folgenden näher erläutert. Dabei
zeigt:
Fig. 1 die Struktur einer durch den Stand der Technik nahege
legten Einrichtung,
Fig. 2 die Maßnahmen zum Programmerstellen gemäß der Erfindung
und
Fig. 3 die Struktur der erfindungsgemäßen Einrichtung.
In der Darstellung gemäß Fig. 1 ist eine Steuerungseinrichtung
bestehend aus einem Prozessor P1 und einem dazu parallelen
Prozessor P2 vorgesehen, die beispielsweise in einer spei
cherprogrammierbaren Steuerung oder einer numerischen Steue
rung vorhanden sein kann. Im Ausführungsbeispiel ist ange
nommen, daß die Prozessoren P1 und P2 auf einen Roboter R
einwirken mögen. Wie dieses Einwirken erfolgen soll, wird
dabei programmtechnisch vorgegeben. So möge beispielsweise
ein BASIC-Programm BP auf den Prozessor P1, der als Standard
prozessor ausgebildet ist, einwirken und ein STEP5-Programm
SP möge auf den Prozessor P2, bei dem es sich um ein Spezial
prozessor handelt, gegeben werden. Beide Programme müssen
dazu über eine Schaltstufe SCH synchronisiert werden. Ein
derartiges Synchronisieren ist jedoch dann, wenn zeitliche
Randbedingungen einzuhalten sind, beispielsweise bei
schnellen Bewegungen des Roboters R, technisch nicht ohne
weiteres realisierbar.
Hier setzt die Erfindung ein, indem nicht zwei speziell zu
geschnittene Programme vom Programmierer erstellt werden,
sondern indem zunächst ein Quellprogramm QP vom Programmierer
generiert wird, das je nach zu steuerndem technischem Prozeß
aufeinanderfolgend in den jeweils für einzelne Aufgaben
optimalen Programmiersprachen geschrieben wird. So möge im
Ausführungsbeispiel in einem ersten Abschnitt I(1) des Pro
gramms Hochsprache, im Ausführungsbeispiel BASIC gegeben
sein, an diesen Abschnitt möge sich dann ein Abschnitt II an
schließen, der in auf den Spezialprozessor P2 zugeschnittener
Sprache, im Ausführungsbeispiel STEP5 geschrieben ist und an
diesen möge sich wiederum ein Abschnitt I(2) anschließen, der
wieder in Hochsprache erstellt worden ist. Das Steuerungspro
gramm kann damit durchaus in der höheren Programmiersprache
geschrieben werden und dennoch können bestimmte Programmteile
in der speziellen Steuerungssprache für den Steuerungspro
zessor erstellt werden. Dabei kann der Programmierer wählen,
in welcher Programmiersprache er welche Programmteile pro
grammiert. So kann er jede Funktion (Programmteil) auf dem
Prozessor P1 bzw. P2 mit der jeweils schnellsten Ausführungs
zeit ablaufen lassen. Dadurch können die Vorteile der unter
schiedlichen Programmiersprachen und die Vorteile der unter
schiedlichen Hardware optimal ausgenutzt werden.
Damit das Quellprogramm QP ablauffähig wird, wird es dazu
zunächst auf einen Precompiler PC gegeben. Im Precompiler PC,
der für die Erfindung ganz wesentlich ist, werden dabei fol
gende Maßnahmen getroffen. Aus den Abschnitten in der Spei
cherprogrammiersprache, im Ausführungsbeispiel dem Abschnitt
II, werden jeweils einzelne Programmabschnitte gewonnen und
werden sozusagen als Kopf dem precompilierten Programm
vorangestellt. Im Ausführungsbeispiel wird aus dem Abschnitt
II beispielsweise ein Abschnitt A bis Z erstellt. Dabei wird
dieser Abschnitt im Maschinencode abgelegt. An den Grenzen
zwischen den in Hochsprache vorliegenden Abschnitten I(1) und
I(2) wird nun ein ebenfalls in der Hochsprache geschriebener
Adreßverweis - Abschnitt III - auf den herausgezogenen Pro
grammteil, in diesem Fall den Programmteil II, eingearbeitet.
Man kann also sagen, daß der Precompiler PC hier Anweisungen
zur Koordinierung der Prozesse einfügt. Diese Anweisungen
dienen dann zum Initialisieren und Starten des SPS-Prozessors
P2, da der Precompiler PC die in der Steuerungssprache
geschriebenen Programmteile in Maschinencode in das Hoch
sprachenprogramm, d. h. das precompilierte Programm PP einge
fügt hat.
Dieses precompilierte Programm PP wird dann über einen
Standardcompiler SC gegeben und führt zu einem ablauffähigen
Programm AP. Dabei wird der Code für den Standardprozessor P1
einschließlich den Koordinationsbefehle erzeugt. Der Code für
den speziellen Steuerungsprozessor P2 wird als konstanter
Teil im Hochsprachenprogramm abgelegt.
Wenn das Anwenderprogramm AP zum Ablauf gebracht werden soll,
kann dazu eine Anordnung der genannten Steuerung getroffen
sein, wie diese in der Darstellung gemäß Fig. 3 gezeigt ist.
Das Anwenderprogramm AP startet dabei zunächst entsprechend
den Befehlen, die durch den Abschnitt I(1) vorgesehen sind,
den Prozessor P1, der als Master des Systems dient. Wenn das
Programm dann soweit abgearbeitet worden ist, daß der Sprung
befehl aus dem Abschnitt III vorliegt, wird dies vom Prozes
sor P1, d. h. dem Master, detektiert und wie durch einen Wirk
pfeil angedeutet, wird nun der Spezialprozessor P2 aktiviert.
Im Ausführungsbeispiel würde dieser nun den Programmteil II
behandeln, der im precompilierten Programm durch die Abfolge
von Befehlen A bis Z gegeben ist. Wenn nun der Programmablauf
dort soweit erfolgt ist, daß der Zustand Z erreicht ist,
stoppt der Prozessor P2 und gibt an den Prozessor P1, wie
ebenfalls durch einen Wirkpfeil angedeutet, die Aufforderung,
den weiteren Betrieb vorzunehmen.
Selbstverständlich ist es möglich, nicht nur einen einzigen
in Steuerungssprache geschriebenen Programmteil an den Kopf
des precompilierten Programmes PP zu setzen, sondern dort
könnten durchaus eine ganze Reihe von derartigen Abschnitten
aneinandergereiht vorgegeben sein.
Claims (1)
- Einrichtung zum Betreiben eines technischen Geräts, bei spielsweise einer Werkzeugmaschine oder eines Roboters, ent sprechend vorgegebenen Programmen, die sowohl in einer Stan dardprogrammiersprache als auch in einer speziellen Steue rungssprache vorliegen, mit Hilfe eines Standardprozessors und eines Steuerungsprozessors, dadurch ge kennzeichnet, daß ein entsprechend den Prozeß anforderungen kontinuierlich fortlaufend alternierend von Sprache zu Sprache wechselnd geschriebenes Quellprogramm (QP) zunächst einem Precompiler (PC) zugeleitet wird, der die Ab schnitte (II) in der Steuerungsprache aus dem Quellprogramm (QP) entfernt, in Maschinencode übersetzt und in einem defi nierten Bereich dem übrigen Programm (PP) wieder hinzufügt, daß an den Stellen des Entfernens Verweise (III) in der Standardprogrammiersprache auf die jeweilige Bereichsadresse (A) des Hinzufügens eingesetzt werden, daß das precompilierte Programm (PP) dann einem Standardcompiler (SC) zugeleitet wird und dann auf den als Master vorgesehenen Standardpro zessor (P1) und auf den als Slave vorgesehenen Steuerungs prozessor (P2) gegeben wird und daß der Master (P1), veran laßt durch die übersetzten Verweise (III) den Slave (P2) aktiviert, der dann jeweils nach Beenden seines zu behandeln den Programmabschnittes wieder auf den Master (P1) zurück schaltet.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19934342660 DE4342660A1 (de) | 1993-12-14 | 1993-12-14 | Einrichtung zum Betreiben eines technischen Gerätes entsprechend vorgegebenen Programmen |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19934342660 DE4342660A1 (de) | 1993-12-14 | 1993-12-14 | Einrichtung zum Betreiben eines technischen Gerätes entsprechend vorgegebenen Programmen |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4342660A1 true DE4342660A1 (de) | 1995-06-22 |
Family
ID=6505006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19934342660 Withdrawn DE4342660A1 (de) | 1993-12-14 | 1993-12-14 | Einrichtung zum Betreiben eines technischen Gerätes entsprechend vorgegebenen Programmen |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4342660A1 (de) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19545898A1 (de) * | 1995-12-08 | 1997-06-12 | Hs Tech & Design | Rückhaltesystem in einem Fahrzeug |
WO2000065415A2 (en) * | 1999-04-22 | 2000-11-02 | The Dow Chemical Company | Process control system with integrated safety control system |
US7048910B2 (en) | 2000-09-07 | 2006-05-23 | Merck Patent Gmbh | Use of ectoine or ectoine derivatives for oral care |
EP2273332A1 (de) * | 2003-02-13 | 2011-01-12 | Renishaw PLC | Maschinenwerkzeugsteuerverfahren und Vorrichtung dafür |
DE102015105436A1 (de) * | 2015-04-09 | 2016-10-13 | Beckhoff Automation Gmbh | Übersetzungsmodul, Verarbeitungsmodul und Steuerungssystem |
WO2017216082A1 (de) * | 2016-06-13 | 2017-12-21 | Kuka Roboter Gmbh | Verfahren zum steuern eines manipulatorsystems |
-
1993
- 1993-12-14 DE DE19934342660 patent/DE4342660A1/de not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19545898A1 (de) * | 1995-12-08 | 1997-06-12 | Hs Tech & Design | Rückhaltesystem in einem Fahrzeug |
WO2000065415A2 (en) * | 1999-04-22 | 2000-11-02 | The Dow Chemical Company | Process control system with integrated safety control system |
WO2000065415A3 (en) * | 1999-04-22 | 2001-11-15 | Dow Chemical Co | Process control system with integrated safety control system |
US7048910B2 (en) | 2000-09-07 | 2006-05-23 | Merck Patent Gmbh | Use of ectoine or ectoine derivatives for oral care |
EP2273332A1 (de) * | 2003-02-13 | 2011-01-12 | Renishaw PLC | Maschinenwerkzeugsteuerverfahren und Vorrichtung dafür |
US9235205B2 (en) | 2003-02-13 | 2016-01-12 | Renishaw Plc | Method for producing a measurement probe path on a numerically controlled machine tool |
DE102015105436A1 (de) * | 2015-04-09 | 2016-10-13 | Beckhoff Automation Gmbh | Übersetzungsmodul, Verarbeitungsmodul und Steuerungssystem |
US10732608B2 (en) | 2015-04-09 | 2020-08-04 | Beckhoff Automation Gmbh | Translation module, processing module and control system |
WO2017216082A1 (de) * | 2016-06-13 | 2017-12-21 | Kuka Roboter Gmbh | Verfahren zum steuern eines manipulatorsystems |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3126878C2 (de) | Mikroprogramm-Steuerschaltung zum Ausführen eines aus einem Steuerspeicher in einem Quellenregister aufgenommenen Mikrobefehls | |
DE3587034T2 (de) | Verfahren und einrichtung zur steuerung automatischer geraete. | |
DE3206891A1 (de) | Verfahren zur fehlerdiagnose fuer speicherprogrammierbare steuerungen | |
DE2810977A1 (de) | Anordnung zum erzeugen und korrigieren eines benutzerprogramms | |
WO2017050895A1 (de) | Robotersteuerung | |
EP0553621B1 (de) | Programmierbare Computersteuerung für eine Werkzeugmaschine | |
DE2128288A1 (de) | Automatische Werkzeugmaschine mit Steuersystem | |
DE1966793A1 (de) | Steuerungssystem | |
DE4342660A1 (de) | Einrichtung zum Betreiben eines technischen Gerätes entsprechend vorgegebenen Programmen | |
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 | |
EP1217476A2 (de) | Vorrichtung und Verfahren zur Inbetriebnahme und Diagnose von Steuerungssystemen | |
EP0903654A2 (de) | Steuerungssystem für insbesondere Palettieranlagen mit Robotern | |
EP0801340A1 (de) | Verfahren und Vorrichtung zur Steuerung einer Werkzeugmaschine, insbesondere einer Funkenerosionsmaschine | |
DE10028140A1 (de) | Verfahren zur Organisation des Ablaufs elektronisch gesteuerter Schaltvorgänge | |
EP4018275A1 (de) | System und verfahren zur steuerung zumindest einer maschine, insbesondere eines kollektivs von maschinen | |
EP2299341A1 (de) | Editiergerät und Verfahren zur Konfigurierung von Parametern einer industriellen Automatisierungsanordnung | |
EP2360576B1 (de) | Verfahren und Einrichtung zur Projektierung einer industriellen Automatisierungsanordnung | |
DE10308815A1 (de) | Verfahren zur Erzeugung und Visualisierung einer aufgabenorientierten Schrittdarstellung | |
EP3273344A1 (de) | Verfahren und programmiereinrichtung zur optimierung von quellcode für ein computerprogramm | |
EP1393139B1 (de) | Programmierwerkzeug und verfahren zur erstellung von programmen, insbesondere der automatisierungstechnik | |
EP1241568B1 (de) | Verfahren und Vorrichtung zur Einfügung von Variablen in den Programmablauf einer Datenverarbeitungsanlage | |
AT522186B1 (de) | Computerimplementiertes Verfahren zur rechnergestützten Erzeugung eines ausführbaren Steuerungsprogramms zur Steuerung und/oder Regelung eines technischen Prozesses | |
DE102016121788A1 (de) | Konfiguration einer Automatisierungsanlage | |
DE112021007835T5 (de) | Robotersteuer- bzw. -regelvorrichtung | |
EP3742240A1 (de) | Verfahren und engineering-system zur änderung eines programms einer industriellen automatisierungskomponente |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |