DE19751439A1 - Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung - Google Patents
Programmierbare Steuerung mit anwendungsspezifischer HartverdrahtungInfo
- Publication number
- DE19751439A1 DE19751439A1 DE1997151439 DE19751439A DE19751439A1 DE 19751439 A1 DE19751439 A1 DE 19751439A1 DE 1997151439 DE1997151439 DE 1997151439 DE 19751439 A DE19751439 A DE 19751439A DE 19751439 A1 DE19751439 A1 DE 19751439A1
- Authority
- DE
- Germany
- Prior art keywords
- oriented
- control
- bit
- controller
- byte
- 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/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/045—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using logic state machines, consisting only of a memory or a programmable logic device containing the logic for the controlled machine and in which the state of its outputs is dependent on the state of its inputs or part of its own output states, e.g. binary decision controllers, finite state controllers
-
- 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/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13007—Program hardwired logic, pld, fpga when out of machine, or inactive
-
- 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/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13024—Convert digital logic of hardware circuit into plc software
-
- 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/10—Plc systems
- G05B2219/15—Plc structure of the system
- G05B2219/15057—FPGA field programmable gate array
-
- 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/10—Plc systems
- G05B2219/15—Plc structure of the system
- G05B2219/15127—Bit and word, byte oriented instructions, boolean and arithmetic operations
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Description
Anwendungsspezifische Integrierte Schaltkreise (Asics) verändern unser technisches Umfeld,
insbesondere die beiden programmierbaren Untergruppen CPLDs und FPGAs. Konnte man früher
bereits Teile einer Steuerung mit FPGAs realisieren (siehe Patent EP 0 499 695 A2, sowie Patent
EP 0499695 A2 ≘ DE 42 05 524 A1) oder Steuerprogramme für eine Binärsignaiverarbeitung in einen
Zustandsautomaten im inneren eines CPLDs umsetzen (siehe Patent DE 40 38 533 A1) so kann man
heute die komplette Steuerung in einem FPGA unterbringen. Die Schaltung wird dabei in der Regel
als Mikroprozessor oder als Automat (Moore, Mealy oder Metvedev) im inneren der FPGAs realisiert.
Im Gegensatz dazu stellt die vorliegende Erfindung eine programmierbare Steuerung mit
anwendungsspezifischer Hartverdrahtung zur Verfügung, die aus einem STEP5-Programm heraus
entwickelt werden kann.
Im Vergleich zu Speicherprogrammierbaren Steuerungen haben anwendungsspezifisch
hartverdrahtete Steuerungen folgende Vorteile:
- - Parallelbearbeitung der Logik möglich,
- - Wesentlich kürzere Zykluszeiten,
- - geringere Kosten der Steuerung,
- - verringerter Raumbedarf der Steuerung,
- - modularer Aufbau möglich,
- - vereinfachte Lagerhaltung von Systemkomponenten,
- - erhöhte Systemzuverlässigkeit sowie
- - Reduzierung der Systemverlustleistung.
Bisher werden auch für kleine Steuerungen, bei denen Flexibilität erforderlich ist,
Speicherprogrammierbare Steuerungen eingesetzt. Anwendungsspezifisch hartverdrahtete
Steuerungen mit FPGAs stellen eine kleinere, der Anlagengröße entsprechende Alternative dar.
Ein Problem dagegen ist die Programmierung der FPGAs die bis heute nur Ingenieuren vorbehalten
bleibt. Das im weiteren angegebene Verfahren zur Umsetzung eines STEP5-Programmes in eine
anwendungsspezifisch hartverdrahtete Steuerung versetzt auch Praktiker mit SPS-Kenntnissen in die
Lage FPGAs zu programmieren.
Auch der Mikroprozessor hat in der Steuerungstechnik sein Einsatzgebiet in vielen Anwendungen
gefunden, kann aber wegen der Komplexität des Assemblercodes nur von Fachleuten programmiert
werden. Der Unterschied dieser Steuerung zu einem Mikroprozessor besteht darin, daß bitorientierte
Operationen eins zu eins in hartverdrahtete Logik umgesetzt werden. Außerdem gibt es kein
Programm in einem Programmspeicher, wie bei einem Prozessor, sondern eine
anwendungsspezifisch hartverdrahtete Steuereinheit.
Da FPGAs intern parallel arbeiten ist es möglich, daß mehrere Bitoperationen in nur einem
Systemtaktzyklus und Byteoperationen in maximal zwei Systemtaktzyklen abgearbeitet werden
können. Dadurch ergeben sich sehr kleine Verzögerungszeiten der Signale und sehr schnelle
Reaktionszeiten der Steuerung.
Oberflächlich betrachtet bietet sich zur Erstellung der Steuerung eine direkte Umsetzung des STEP5-
Programmes in die Hardwarebeschreibungssprache VHDL (Very High Speed Integrated Circuit
Hardware Description Language) an. Die entstehende Steuerung wäre aber um ein Vielfaches zu
komplex, um in einem FPGA realisiert werden zu können. Als weitaus besseres Verfahren erweist
sich eine strukturierte Umsetzung, in der auch Festkomponenten enthalten sind. Die
Festkomponenten kommen jedoch nur in der byteorientierten Steuerung vor.
Eine Übersicht der Gesamtschaltung ist im Anhang in Bild 1 dargestellt.
Im folgenden werden die einzelnen Komponenten der Steuerung beschrieben:
- - Die anwendungsspezifisch hartverdrahtete bitorientierte Steuerung,
- - die Festkomponenten der byteorientierten Steuerung und
- - die anwendungsspezifisch hartverdrahtete Steuereinheit.
Die logischen Verknüpfungen in der bitorientierten Steuerung werden von den Mikrotakten (µTn) des
Mikroprogrammzählers (µPc) aktiviert, so daß in jedem Systemtakt die entsprechenden logischen
Verknüpfungen durchgeführt werden. Gemäß Bild 2 sind die Logikschaltungen (1, . . ., 1') über den
vom Mikrotakt gesteuerten Multiplexer (2) mit dem Zustandsspeicher (3) verbunden. So werden in
jedem Mikrotakt die richtigen Ergebnisse der Logikschaltungen in den richtigen Zustandsspeichern
gespeichert. Im Zustandspeicher werden Merker (M), Eingänge (E), Ausgänge (A),
Verknüpfungsergebnisse (VKE), Zählergebnisse (Z) und Timerergebnisse (T) gespeichert. Die
aktuellen Zustände können mit dem Bus (5) in den Logikschaltungen (1, . . ., 1') weiterverarbeitet oder
den Ausgängen (A0, . . ., An) zugeleitet werden. Die Eingänge (E0, . . ., Em) werden im
Zustandsspeicher und die Ausgänge (A0, . . ., An) im Ausgangslatch (4, . . ., 4') gepuffert, um deren
Werte während eines Programmzyklusses konstant halten zu können. Das Lesen der Eingänge und
des Ausgangsabbildes wird gleichzeitig im Mikrotakt Null, bei dem noch keine logische Verknüpfung
stattfindet, durchgeführt.
In der bitorientierten Steuerung sind die Bitoperationen als hartverdrahtete Logik enthalten. Jede
Operation wird direkt in kombinatorische Logik umgewandelt wodurch sich sehr kleine
Bearbeitungszeiten ergeben.
Tabelle 1 zeigt ein Übersicht der Operationen und der dazugehörigen Schaltungsumsetzung.
Hierbei entsteht zunächst eine kombinatorische Logikschaltung mit hintereinanderfolgenden Gattern,
die später beim Minimieren durch Zusammenfassung parallelisiert und deren Zahl verringert wird.
Beim Öffnen von Klammern mit O( oder U( wird eine zweite kombinatorische Logik-Schaltung
begonnen, die beim Schließen der Klammer mit) zur ersten kombinatorischen Schaltung hinzugefügt
wird.
Als nächstes wird darauf eingegangen, wann bei der Umsetzung des STEP5-Programmes eine rein
kombinatorische Schaltung nicht mehr ausreicht und ein Mikrotakt abgewartet werden muß.
Dies ist nach dem Setzen (S), Rücksetzen (R) oder Zuweisen (=) von Merkern dann erforderlich,
wenn die Merker erneut verwendet werden. Die Verwendung der Merker könnte durch Und (U),
Undnicht (UN), Oder (O) oder Odernicht (ON) erfolgen. Dasselbe gilt auch bei Ein- und Ausgängen.
Bild 3 zeigt die verschiedenen Möglichkeiten.
Man kann die Anzahl der Mikrotakte niedrig halten, indem man versucht sogenannte
"Schmiermerker" zu umgehen. Schmiermerker sind Merker, die im selben Programmzyklus unter
verschiedenen Bedeutungen eingesetzt werden. Man kann statt ihnen jedesmal neue Merker
verwenden.
Ebenso werden nach allen Byteoperationen ein bis zwei zusätzliche Mikrotakte eingefügt, weil
höchstens eine Byteoperation in einem Mikrotaktzyklus möglich ist.
Insbesondere nach allen Timeroperationen SI, SE, SV, SA, SS und R und allen Zähleroperationen S,
R, ZV und ZR sind zwei Mikrotaktzyklen erforderlich. So erhält man bei darauffolgenden Abfragen
den richtigen Timer- bzw. Zählerzustand.
Dennoch sind insgesamt wesentlich weniger Mikrotakte in einem Programmzyklus erforderlich, als
Takte in einem Programmzyklus einer Speicherprogrammierbaren Steuerung. Erstens, weil die
anwendungsspezifisch hartverdrahtete Steuerung nur einen Mikrotakt pro Byteoperation benötigt, und
zweitens, weil in einem Mikrotakt mehrere Bitoperationen parallel durchgeführt werden können.
Die in Bild 1 dünn umrahmten Festkomponenten der byteorientierten Steuerung sind für alle
Anwendungen erforderlich. Ihre Inhalte sind mit Ausnahme des Datenspeichers für alle Anwendungen
gleich. Im Datenspeicher stehen die anwendungsspezifischen Konstanten des STEP5-Programmes
und es ist Platz für Datenbausteine vorgesehen. Im Gegensatz zur Speicherprogrammierbaren
Steuerung existiert kein Programmcode, der im Speicher abgelegt werden müßte. Auch die Timer
und Zähler sind für alle Anwendungen gleich, nur ihre Anzahl hängt von den Anwendungen ab. Um
die Schaltung möglichst klein zu halten, sollte man so wenig Timer und Zähler wie möglich einsetzen.
Die gesamte Schaltung wird synchron getaktet. Zur Ansteuerung der Timer (T1, T2, . . ., Tn) wird der
Systemtakt mit dem Frequenzteiler (T) in verschiedene Frequenzen geteilt. So werden mehrere
Enable-Leitungen mit kurzen Impulsen für die Timer hergestellt, und die verschiedenen Zeitbasen
verwirklicht, die aus der STEP5-Programmiersprache her kommen.
Tabelle 2 zeigt die verschiedenen Zeitbasen und die dazugehörigen Frequenzen auf den Enable-Leitungen.
Wie schon im vorigen Abschnitt erwähnt wurde, sind sowohl die Timer (T1, T2,. . .,Tn) als auch die
Zähler (Z1, Z2,. . .,Zm) in der byteorientierten Steuerung für alle Anwendungen gleich. Dazu sind
verschiedene Timer- bzw. Zähleraufsätze in der bitorientierten Steuerung notwendig. Durch sie
werden die verschiedenen STEP5-Operationen SI, SE, SV, SA, SS und R bei den Timern und S, R,
ZV und ZR bei den Zählern verwirklicht. Die Aufsätze werden mit den Timern bzw. Zählern über
globale Busse verbunden, die unabhängig vorn verwendeten Aufsatz alle notwendigen Leitungen
enthalten (siehe Kapitel 5 Timer und Zähler).
Der Kern der byteorientierten Steuerung besteht aus einer Arithmetisch-Logischen Recheneinheit
(ALU) und zwei hintereinandergeschalteten Akkumulatoren (A1 und A2).
Die Rotieroperationen SLW und SRW werden direkt im Akku 1 durchgeführt, der als Schieberegister
ausgelegt ist. Für die arithmetischen Operationen +F, -F, D, I und KZW, die logischen Operationen
UW, OW, XOW und KEW und die Vergleichsoperationen !=F, <<F, <F, <=F, <F und <=F wird die
ALU verwendet. Das Ergebnis der arithmetischen oder logischen Operationen wird von der ALU in
den Akku 1 geführt. Bei den Vergleichsoperationen sind als Ergebnis von der ALU nur die Leitungen
C (Carry) und Z (Zero) von Bedeutung. Sie werden je nach Vergleichsoperation miteinander verknüpft
und der bitorientierten Steuerung als VKE zugeführt.
Bei den Ladeoperationen L DL, L DR und L DW werden Daten direkt vom Datenspeicher in den
Akku 1 geladen. Bei den Transferoperationen T DL, T DR und T DW hingegen müssen die Daten
vom Akku 1 durch die ALU in den Datenspeicher transferiert werden. Die Timer und Zähler können
direkt vom Akku 1 geladen werden. Mit den Ladeoperationen L T1 und L Z1 können die aktuellen
Timer- bzw. Zählerstände wieder in den Akku 1 geladen werden.
Die Steuereinheit gehört zu den anwendungsspezifisch hartverdrahteten Komponenten
(siehe Kapitel 4). Sie koordiniert den Ablauf in der byteorientierten Steuerung, indem sie
Verbindungen durchschaltet, wie beispielsweise vom Akku 1 durch die ALU in den Datenspeicher.
Außerdem stellt sie sämtliche Steuerleitungen, Zählstände für den Mikroprogrammzähler (µPc) und
Adressen für den Datenspeicher her. Als Eingang hat sie nur den Mikroprogrammzähler.
Der Mikroprogrammzähler (µPc) mit nachgeschaltetem Decoder (D) wird bei jedem Takt um eins
erhöht. Am Ende jedes Zyklus wird er von der Steuereinheit wieder mit Null geladen. Beim Mikrotakt
Null werden die Zustände aller Eingänge eingelesen und das Ausgangsabbild an die Ausgänge
durchgeschaltet. So können das Eingangsabbild und die Zustände der Ausgänge während eines
Zyklus konstant bleiben. Die anderen Mikrotakte aktivieren die richtigen Logikschaltungen der
bitorientierten Steuerung.
Der Dekoder hat als Eingangssignal den aktuellen Stand des Mikroprogrammzählers. Am Ausgang
legt er die korrespondierende Mikrotaktleitung auf High. Es liegt immer nur eine Mikrotaktleitung auf
High.
Um untergeordnete Programmbausteine und Funktionsbausteine aufrufen zu können, wird ein Stack
verwendet, der bei jedem Bausteinaufruf den aktuellen Stand des Mikroprogrammzählers speichert
und beim Beenden des untergeordneten Bausteines eine Fortsetzung des übergeordneten Bausteines
ermöglicht.
Die anwendungsspezifisch hartverdrahtete Steuereinheit ist eine rein kombinatorische Schaltung. Sie
hat nur einen Eingang: Den Mikroprogrammzähler (µPc). Ihre Ausgänge sind in Tabelle 3 genau
beschrieben. Die Anzahl der Ausgänge ist variabel, da für jeden Timer und für jeden Zähler ein
anderes Auslesesignal benötigt wird (LT1, . . ., LTn, LZ1, . . ., Lzm).
Das Schaltnetz der anwendungsspezifisch hartverdrahteten Steuereinheit wird über eine Wertetafel
aus dem STEP5-Programm erstellt. Ein Beispiel dieser Wertetafel ist in Tabelle 4 dargestellt.
Wie in Tabelle 4 ersichtlich ist, muß nicht in jedem Mikrotakt eine Operation in der byteorientierten
Steuerung ausgeführt werden. Es werden auch in der bitorientierten Steuerung Operationen
ausgeführt.
Bild 4 im Anhang zeigt die Timeraufsätze in der bitorientierten Steuerung für die STEP5-Operationen
SI, SE, SV, SA, SS und R.
Zur Ansteuerung eines Timeraufsatzes wird von einer Logikschaltung in der bitorientierten Steuerung
(Bild 2, 1) ein Verknüpfungsergebnis (VKE) erzeugt. Von diesem wird innerhalb des Timeraufsatzes
beim richtigen Mikrotakt die steigende Flanke (SI, SE, SV und SS) bzw. die fallende Flanke (SA)
ausgewertet. Das Rücksetzen (R) des Timers erfolgt flankenunabhängig. An seinem Ausgang gibt der
Timeraufsatz an, in weichem Zustand sich der Timer befindet. Der Ausgang wird ohne weitere
Logikschaltung über den vom Mikrotakt gesteuerten Multiplexer (2) dem Zustandsspeicher (3)
zugeführt.
Beim Laden des Timers werden vom Akkumulator 10 Bit in den Zähler transferiert. Zwei weitere Bits
geben an, welche Frequenz die Enable-Leitung des Timers haben soll. Sie werden beim Laden des
Timers in D-Flipflops gepuffert und wählen über einen Multiplexer die Enableleitung aus.
Das Laden des Timers erfordert einen Mikrotakt; und um den Zustand des Timers zu ermitteln und im
Zustandsspeicher zu puffern, ist ein weiterer Mikrotakt erforderlich (siehe Kapitel 2, Zusätzliche
Taktzyklen). Der aktuelle Timerstand kann in den Akku 1 geladen werden (L).
In der STEP5-Programmiersprache ist es möglich den selben Timer mehrmals mit verschiedenen
STEP5-Operationen aufzurufen. In solchen Fällen werden die Verbindungen von den Timeraufsätzen
zum Timer mit ODER-Gattern verknüpft. Auf diese Weise setzt sich der zuletzt aktivierte
Timeraufsatz mit dem Setzen bzw. Rücksetzen des Timers durch.
Bild 5 im Anhang zeigt die Zähleraufsätze in der bitorientierten Steuerung für die STEP5-Operationen
S, R, ZV und ZR. Auch hier wird zur Ansteuerung des Zähleraufsatzes von einer Logikschaltung in
der bitorientierten Steuerung (1) ein Verknüpfungsergebnis (VKE) erzeugt und innerhalb des
Zähleraufsatzes beim richtigen Mikrotakt die steigende Flanke des VKEs (ZV und ZR) ausgewertet.
Das Setzen (S) und Rücksetzen (R) des Zählers erfolgt flankenunabhängig. An seinem Ausgang gibt
der Zähleraufsatz an, in weichem Zustand sich der Zähler befindet. Der Ausgang wird ohne weitere
Logikschaltung über den vom Mikrotakt gesteuerten Multiplexer (2) dem Zustandsspeicher (3)
zugeführt.
Wie beim Timer werden beim Laden des Zählers vom Akkumulator 10 Bit in den Zähler transferiert.
Das Laden des Zählers erfordert einen Mikrotakt; und um den Zustand des Zählers zu ermitteln und
im Zustandsspeicher zu puffern, ist ein weiterer Mikrotakt erforderlich (siehe Kapitel 2, Zusätzliche
Taktzyklen). Der aktuelle Zählerstand kann in den Akku 1 geladen werden (L).
STEP5-Programme werden zur übersichtlichen Strukturierung in mehrere Bausteine unterteilt. Ein
STEP5-Programm enthält den Organisationsbaustein OB1, der zyklisch aufgerufen wird, in dem die
vom Anwender erstellten Programmbausteine PB1, PB2, . . . aufgerufen werden. Funktionsbausteine
(FB) enthalten Programmteile die öfters verwendet werden. Bild 6 zeigt ein Beispiel eines
übersichtlich strukturierten STEP5-Programmes. Im folgenden werden zwei verschiedene
Möglichkeiten vorgestellt, ein STEP5-Programm dieser Art umzusetzen.
Bei diesem Verfahren werden die untergeordneten Programm- und Funktionsbausteine vollständig in
den übergeordneten Bausteinen eingebettet. Dies ist bei STEP5-Programmen möglich, weil innerhalb
eines Programmzykluses nur eine immer gleiche Zahl von Bausteinen aufgerufen werden kann (keine
Rekursionen möglich). Wird ein Funktionsbaustein mehrfach im STEP5-Programm aufgerufen, so
wird er auch mehrfach umgesetzt. Dies führt zu einer relativ umfangreichen Steuerung.
Beim Aufruf eines untergeordneten Programm- oder Funktionsbausteines wird der aktuelle Zählstand
des Mikroprogrammzählers (siehe Bild 1, µPc) auf den Stack geschrieben. Nun wird der
untergeordnete Baustein abgearbeitet. Danach wird wieder der alte Zählstand des
Mikroprogrammzählers vom Stack geholt und der übergeordnete Baustein fortgesetzt.
Der Stack ist ein vom Datenspeicher unabhängiger Speicherbereich, der direkt von einem speziellen
Stackpointerregister aus adressiert werden kann. Dadurch sind Stackzugriffe in nur zwei Mikrotakten
möglich.
Es soll der Zustandsgraph aus Bild 7 umgesetzt werden.
Die Zuordnungsliste für die Merker, Ein- und Ausgänge ist in Tabelle 5 dargestellt:
Es ergibt sich das STEP5-Programm in Tabelle 6.
Die nach dem angegebenen Verfahren umgesetzte anwendungsspezifisch hartverdrahtete Steuerung
sieht folgendermaßen aus:
- - Anwendungsspezifisch hartverdrahtete bitorientierte Steuerung siehe Bild 8,
- - Festkomponenten der byteorientierten Steuerung siehe Bild 9 und
- - anwendungsspezifisch hartverdrahtete Steuereinheit siehe Tabelle 7.
Claims (21)
1. Programmierbare Steuerung zum Anschließen von Sensoren wie z. B. Taster, Schalter,
Temperatur-, Druck- und induktive Sensoren und Aktoren wie z. B. Motoren, Ventile und
Meldeeinrichtungen mit einer bitorientierten Steuerung und einer byteorientierten Steuerung
bestehend aus Steuereinheit, Recheneinheit, Registern und Speicher,
dadurch gekennzeichnet,
daß die bitorientierte Steuerung anwendungsspezifisch hartverdrahtet ist.
2. Programmierbare Steuerung zum Anschließen von Sensoren wie z. B. Taster, Schalter,
Temperatur-, Druck- und induktive Sensoren und Aktoren wie z. B. Motoren, Ventile und
Meldeeinrichtungen mit einer bitorientierten Steuerung und einer byteorientierten Steuerung
bestehend aus Steuereinheit, Recheneinheit, Registern und Speicher,
dadurch gekennzeichnet,
daß die in der byteorientierten Steuerung enthaltene Steuereinheit anwendungsspezifisch
hartverdrahtet ist.
3. Programmierbare Steuerung zum Anschließen von Sensoren wie z. B. Taster, Schalter,
Temperatur-, Druck- und induktive Sensoren und Aktoren wie z. B. Motoren, Ventile und
Meldeeinrichtungen mit einer bitorientierten Steuerung und einer byteorientierten Steuerung
bestehend aus Steuereinheit, Recheneinheit, Registern und Speicher,
dadurch gekennzeichnet,
daß sowohl die bitorientierte Steuerung als auch die in der byteorientierten Steuerung
enthaltene Steuereinheit komplett in einem programmierbaren Logikbaustein untergebracht
sind.
4. Steuerung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß sowohl die bitorientierte
Steuerung als auch die in der byteorientierten Steuerung enthaltene Steuereinheit
anwenderspezifisch hartverdrahtet sind.
5. Steuerung nach Anspruch 1,
dadurch gekennzeichnet,
daß die bitorientierte Steuerung in einem programmierbaren Logikbaustein untergebracht ist.
6. Steuerung nach Anspruch 2,
dadurch gekennzeichnet,
daß die in der byteorientierten Steuerung enthaltene Steuereinheit in einem
programmierbaren Logikbaustein untergebracht ist.
7. Steuerung nach Anspruch 1 und 2,
dadurch gekennzeichnet,
daß sowohl die bitorientierte Steuerung als auch die in der byteorientierten Steuerung
enthaltene Steuereinheit komplett in einem programmierbaren Logikbaustein untergebracht
sind.
8. Steuerung nach Anspruch 3, 4, 5 oder 6,
dadurch gekennzeichnet,
daß der programmierbare Logikbaustein ein FPGA (Feldprogrammierbares Gatterfeld),
CPLD (Komplexer Programmierbarer Logikbaustein) oder ein EPROM (Löschbarer
Programmierbarer Festwertspeicher) ist.
9. Steuerung nach Anspruch 1,
dadurch gekennzeichnet,
daß ein Zähler mit nachgeschaltetem Decoder die Auswahlleitung (Mikrotaktleitung) der
aktiven Logikteilschaltung der bitorientierten Steuerung liefert.
10. Steuerung nach Anspruch 1,
dadurch gekennzeichnet,
daß in der bitorientierten Steuerung parallele Logikstrukturen vorhanden sind.
11. Steuerung nach Anspruch 2,
dadurch gekennzeichnet,
daß die in der byteorientierten Steuerung enthaltenen Timer feste Komponenten, die
gleiche Konfigurationen aufweisen, enthalten.
12. Steuerung nach Anspruch 2,
dadurch gekennzeichnet,
daß die in der byteorientierten Steuerung enthaltenen Zähler feste Komponenten, die
gleiche Konfigurationen aufweisen, enthalten.
13. Steuerung nach Anspruch 1, dadurch gekennzeichnet, daß die bitorientierte Steuerung sowohl
parallel als auch sequenziell strukturiert ist.
14. Verfahren zum Betreiben einer programmierbaren Steuerung nach einem oder mehreren der
obigen Ansprüche,
dadurch gekennzeichnet,
daß die bitorientierte Steuerung anwendungsspezifisch hartverdrahtet ist.
15. Verfahren zum Betreiben einer programmierbaren Steuerung nach einem oder mehreren der
obigen Ansprüche,
dadurch gekennzeichnet,
daß die in der byteorientierten Steuerung enthaltene Steuereinheit anwendungsspezifisch
hartverdrahtet ist.
16. Verfahren zum Betreiben einer programmierbaren Steuerung nach einem oder mehreren der
obigen Ansprüche,
dadurch gekennzeichnet,
daß sowohl bitorientierte als auch die in der byteorintierten Steuerung enthaltene
Steuereinheit in einem programmierbaren Logikbaustein untergebracht sind.
17. Verfahren nach Anspruch 12 bis 14,
dadurch gekennzeichnet,
daß das funktionale Gesamtverhalten der Programmierbaren Steuerung in der Program
miersprache für speicherprogrammierbare Steuerungen STEP5 vorgegeben wird.
18. Verfahren nach Anspruch 15,
dadurch gekennzeichnet,
daß das funktionale Gesamtverhalten der Programmierbaren Steuerung in die Hardware
beschreibungssprache (VHDL) umgesetzt wird.
19. Verfahren nach Anspruch 16,
dadurch gekennzeichnet,
daß das funktionale Gesamtverhalten der Programmierbaren Steuerung in ein Netzliste
umgesetzt wird.
20. Verfahren nach Anspruch 16,
daß bei Klammeraufrufen im STEP5-Programm eine weitere Logikteilschaltung in der
bitorientierten Steuerung begonnen wird und diese beim Schließen der Klammer zu der
vorangehenden Logikteilschaltung hinzugefügt wird.
21. Verfahren nach Anspruch 17,
dadurch gekennzeichnet,
daß in der bitorientierten Steuerung die Struktur nach Setzen (S), Rücksetzen (R)
oder Zuweisen (=) erneut verwendet wird.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1997151439 DE19751439A1 (de) | 1997-11-20 | 1997-11-20 | Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1997151439 DE19751439A1 (de) | 1997-11-20 | 1997-11-20 | Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19751439A1 true DE19751439A1 (de) | 1999-06-02 |
Family
ID=7849306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1997151439 Withdrawn DE19751439A1 (de) | 1997-11-20 | 1997-11-20 | Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE19751439A1 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10330458A1 (de) * | 2003-07-05 | 2005-02-10 | Staedtler + Uhl Kg | Steuervorrichtung zur Steuerung von Blas- und/oder Saugintervallen zur Reinigung einer Garnitur einer textilen Kämm-Maschine |
WO2006131317A1 (de) * | 2005-06-07 | 2006-12-14 | Contec Steuerungstechnik & Automation Gmbh | Speicherprogrammierbare steuerung |
EP1967920A1 (de) * | 2007-03-07 | 2008-09-10 | Siemens Aktiengesellschaft | Verfahren zur Durchführung von Softwareupdates in FPGA-basierte Automatisierungsgeräte |
-
1997
- 1997-11-20 DE DE1997151439 patent/DE19751439A1/de not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10330458A1 (de) * | 2003-07-05 | 2005-02-10 | Staedtler + Uhl Kg | Steuervorrichtung zur Steuerung von Blas- und/oder Saugintervallen zur Reinigung einer Garnitur einer textilen Kämm-Maschine |
WO2006131317A1 (de) * | 2005-06-07 | 2006-12-14 | Contec Steuerungstechnik & Automation Gmbh | Speicherprogrammierbare steuerung |
EP1967920A1 (de) * | 2007-03-07 | 2008-09-10 | Siemens Aktiengesellschaft | Verfahren zur Durchführung von Softwareupdates in FPGA-basierte Automatisierungsgeräte |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3300260C2 (de) | ||
DE3783072T2 (de) | Zusatzprozessorarchitektur. | |
DE3300261C2 (de) | ||
EP1329816B1 (de) | Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.) | |
DE69634824T2 (de) | Integrierte schaltungstestanordnung mit paralleler ansteuerung | |
DE69019670T2 (de) | Verzögerungsmessschaltung. | |
DE19882486B4 (de) | Synchroner, nicht-flüchtiger Seitenmodus-Speicher | |
DE3750705T2 (de) | Programmierbare, logische Kontrolleinrichtung. | |
DE3752017T2 (de) | Mikrorechner mit Zugriffsfähigkeit auf einen internen Speicher mit gewünschter variabler Zugriffszeit | |
DE69428634T2 (de) | Hardware-Anordnung und Verfahren zur Ausdehnung der Datenverarbeitungszeit in den Fliessbandstufen eines Mikrorechnersystems | |
DE2714268A1 (de) | Schaltungsanordnung zur steuerung von werkzeugmaschinen | |
DE2359258A1 (de) | Echtzeitsteuerungsanordnung fuer eine simulationsvorrichtung | |
DE69107476T2 (de) | Vorrichtung für eine in-circuit-prüfung mit einem minimalspeicher. | |
DE19814415A1 (de) | Logikanalyse-Untersystem in einem Zeitscheibenemulator | |
DE3752280T2 (de) | Mustergenerator | |
DE3508640A1 (de) | Computersystem zur implementierung eines ereignisgesteuerten simulationsalgorithmus | |
DE4024594C2 (de) | ||
DE69130513T2 (de) | Verfahren zur Durchführung boolescher Operationen zwischen zwei beliebigen Bits von zwei beliebigen Registern | |
DE3587446T2 (de) | Signalverarbeitungsprozessor und hierarchische Multiverarbeitungstruktur mit mindestens einem solchen Prozessor. | |
EP0134831A1 (de) | Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung | |
EP0218280A2 (de) | Datenverarbeitungsanordnung | |
DE4005042A1 (de) | Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit | |
EP1116129B1 (de) | Konfigurierbarer hardware-block | |
DE19751439A1 (de) | Programmierbare Steuerung mit anwendungsspezifischer Hartverdrahtung | |
DE10110567B4 (de) | Datenverarbeitungssystem mit einstellbaren Takten für unterteilte synchrone Schnittstellen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8122 | Nonbinding interest in granting licenses declared | ||
8139 | Disposal/non-payment of the annual fee |