DE102008019089A1 - Programmierbare Steuerung - Google Patents

Programmierbare Steuerung Download PDF

Info

Publication number
DE102008019089A1
DE102008019089A1 DE102008019089A DE102008019089A DE102008019089A1 DE 102008019089 A1 DE102008019089 A1 DE 102008019089A1 DE 102008019089 A DE102008019089 A DE 102008019089A DE 102008019089 A DE102008019089 A DE 102008019089A DE 102008019089 A1 DE102008019089 A1 DE 102008019089A1
Authority
DE
Germany
Prior art keywords
output
circuit
input
signal
pulse
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.)
Granted
Application number
DE102008019089A
Other languages
English (en)
Other versions
DE102008019089B4 (de
Inventor
Takao Moriyama
Hideyuki Oguro
Seigo Kobe-shi Inobe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE102008019089A1 publication Critical patent/DE102008019089A1/de
Application granted granted Critical
Publication of DE102008019089B4 publication Critical patent/DE102008019089B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • 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/11Plc I-O input output
    • G05B2219/1144Program, program I-O module

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

In einer programmierbaren Steuerung, die eine spezielle Einheit enthält, kann ein integriertes Schaltungselement für spezielle Zwecke ohne weiteres für mehrere Zwecke verwendet werden, um den Bereich von Anwendungen zu erweitern, um Herstellungskosten zu reduzieren. Eine spezielle Einheit (130), die mit einem Mikroprozessor verbunden ist, zum Durchführen einer I/O-Steuerung durch einen Bus enthält ein integriertes Schaltungselement (10) mit einer Logikschaltungseinheit (1000n (n = 0 bis 7)), deren Betriebsspezifikationen durch einen Parameterspeicher bestimmt werden. Die Logikschaltungseinheit (1000n) enthält einen Vorwärts/Rückwärts-Zähler, der für sowohl eine Hochgeschwindigkeits-Eingabeverarbeitung als auch eine Hochgeschwindigkeits-Ausgabeverarbeitung verwendet wird, als Hauptkomponente und ist mit I/O-Schnittstellenschaltungen (139X) (139Y) durch ein erstes Port (11) und ein zweites Port (12) verbunden. Zusätzlich wird, weil die Funktion der Logikschaltungseinheit (1000n) durch einen Inhalt einer speziellen Anweisung in einem speziellen Programm bestimmt wird, die Logikschaltungseinheit (1000n) gemeinsam für verschiedene Typen von I/O-Schnittstellenschaltungen verwendet, um zuzulassen, dass das integrierte Schaltungselement für mehrere Zwecke verwendet wird.

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine programmierbare Steuerung, um mit einer speziellen Einheit zum Komplementieren einer unzureichenden Rechengeschwindigkeit eines Mikroprozessors verwendet zu werden, der eine Eingabe/Ausgabe-Steuerung durchführt, und insbesondere eine Verbesserung von Funktionen und einer Handhabungsfähigkeit eines integrierten Schaltungselements für spezielle Zwecke, um in der speziellen Einheit angebracht zu werden.
  • 2. Hintergrund der Erfindung
  • Es existiert eine programmierbare Steuerung, die einen Mikroprozessor enthält, um in Reaktion auf einen Betriebszustand eines Eingangssignals eines Operationsschalters oder verschiedener Sensoren zu arbeiten, und ein sequentielles Programm, das in einem Programmspeicher gespeichert ist, um die Treibersteuerung einer elektrischen Last, wie beispielsweise verschiedener Stellglieder oder Anzeigevorrichtungen durchzuführen. In der programmierbaren Steuerung ist als komplementäre funktionelle Einheit zum Handhaben eines Hochgeschwindigkeits-Pulssignals, um zyklisch berechnet zu werden, das schneller als ein Rechenzyklus des Programmspeichers ist und zwar beispielsweise, eine Hochgeschwindigkeits-Zählereinheit oder eine Hochgeschwindigkeits-Pulsausgabeeinheit zusätzlich zum Einsatz vorgesehen. Darüber hinaus ist auch eine spezielle Funktionseinheit zum variablen Einstellen einer Zeitkonstanten eines Filters oder zum Erzeugen einer Pulsbreitenmodulationssignalausgabe, um eine Verzögerung beim Holen eines Eingangssignals mit einem Eingangsfilter klein zu halten, um eine Hochgeschwindigkeits-Eingabe durchzuführen, bekannt.
  • Beispielsweise ist gemäß JP 2002-169602 A (1 und Abstract) und JP 2002-222003 A (1 und Abstract) eine spezielle Funktionseinheit beschrieben worden, die für einen allgemeinen Einsatz durch Verwenden einer programmierbaren Logikvorrichtung (PLD) oder eines Gate-Arrays geeignet ist. JP 2002-169602 A offenbart eine programmierbare Steuerung, die ein externes Anschlussstück zum Anschließen einer externen Vorrichtung, ein Verbindungsanschlussstück zum Anschließen einer Einheit der programmierbaren Steuerung und eine Arithmetik-Verarbeitungseinheit, die Funktionen zum Senden und Empfangen eines Signals zu/von der durch das externe Anschlussstück angeschlossenen externen Vorrichtung, um eine logische Berechnung basierend auf dem von der externen Vorrichtung empfangenen Signal und zum Senden eines Signals gemäß dem Ergebnis der Berechnung zu der Einheit der programmierbaren Steuerung durch das Verbindungsanschlussstück enthält. Die Arithmetik-Verarbeitungseinheit ist durch eine programmierbare Logikvorrichtung konfiguriert, die eine Auswahl einer Vielzahl von Funktionen durch Neuschreiben bzw. Überschreiben eines Programms zulässt. Auf diese Weise ist die programmierbare Steuerung vorgesehen, die zulässt, dass eine Vielzahl von Funktionen auf einfache Weise realisiert werden, und die die Kosten durch gemeinsames Verwenden derselben Schaltungskomponenten reduzieren soll.
  • JP 2002-222003 A offenbart eine programmierbare Steuerung, die ein externes Anschlussstück, ein Verbindungsanschlussstück, ein Gate-Array und ein Erweiterungsanschlussstück enthält. Eine zu steuernde Vorrichtung ist an dem Verbindungsanschlussstück angeschlossen. Eine CPU-Einheit, die eine CPU zum Ausführen eines sequentiellen Programms enthält, ist an dem Verbindungsanschlussstück angeschlossen. Das Gate-Array enthält eine Vielzahl von darin enthaltenen speziellen Funktionen. Die speziellen Funktionen unterstützen die durch das Verbindungsanschlussstück angeschlossene CPU-Einheit, um die Funktionen davon zu verbessern. Das Gate-Array sendet/empfängt auch ein Signal über das externe Anschlussstück. Das Erweiterungsanschlussstück schließt ein zusätzliches Substrat zum Erweitern der in dem Gate-Array enthaltenen speziellen Funktionen an, um spezielle Funktionen weiter hinzuzufügen. Das Erweiterungsanschlussstück enthält eine programmierbare Logikvorrichtung, in welcher die speziellen Funktionen enthalten sind, und ein Erweiterungsseitenanschlussstück, das an die programmiere Logikvorrichtung angeschlossen ist und das an das Erweiterungsanschlussstück anschließt. Auf diese Weise lässt die programmierbare Steuerung das Hinzufügen spezieller Funktionen zu, um die Kosten zu reduzieren. Gemäß der multifunktionellen speziellen Funktionseinheit, wie sie oben beschrieben ist, lässt ein Neuschreiben bzw. Überschreiben eines Programms zu, dass eine einzige Funktionsschaltung für allgemeine Zwecke verschiedene Funktionen realisiert, wie beispielsweise eine I/O-Funktion, eine Eingabezeitkonstantenfunktion, eine Unterbrechungsfunktion, eine Zählerfunktion, eine Vergleichsausgabefunktion, eine Pulsausgabefunktion, eine PWM-Ausgabefunktion und eine Positionierungsfunktion.
  • Andererseits ist in JP 2002-006907 A (3 und Abstract) die folgende I/O-Einheit offenbart. Eine Programmierfunktion ist für die I/O-Einheit vorgesehen, die als spezielle Funktionseinheit dient, um zuzulassen, dass ein Anwender eine I/O-Steuerlogik und eine Berechnungsfunktion frei programmiert. Als Ergebnis kann die I/O-Einheit gemäß einer Anwenderanwendung kundenangepasst (optimiert) werden. In diesem Fall gibt der Anwender ein Programm für die I/O-Steuerlogik und die Arithmetik-Verarbeitung zu der I/O-Einheit mit speziellen Funktionen ein, um einen ursprünglichen Einheitenbetriebsmode eines Anwenders zu erzeugen, um zuzulassen, dass die I/O-Einheit kundenangepasst wird, um für ein zu steuerndes Objekt und ein Steuerverfahren optimal zu sein. Darüber hinaus ist die I/O-Einheit konfiguriert, um die Anbringung einer I/O-Karte daran zuzulassen. Die I/O-Karte enthält eine spezielle Eingabeschaltung, zu welcher eine Pulseingabe, eine analoge Eingabe, eine spezielle Sensoreingabe und ähnliches eingegeben werden, und eine spezielle Ausgabeschaltung zum Ausgeben einer Pulsausgabe, einer analogen Ausgabe und von ähnlichem. Die spezielle I/O wird durch die I/O-Einheit gesteuert.
  • Jede der programmierbaren Steuerungen gemäß JP 2002-169602 A , JP 2002-222003 A und JP 2002-006907 A , die oben beschrieben sind, wird mit der speziellen Funktionseinheit verwendet, die die programmierbare Logikvorrichtung, die Kombination aus dem Gate-Array und der programmierbaren Logikvorrichtung oder dem Prozessor enthält. Die Funktionen der speziellen Funktionseinheit können programmierbar geändert werden. Als Ergebnis wird die Arithmetikeinheit zur Verfügung gestellt, die verschiedene spezielle Anwendungen auf dieselbe Weise wie bei der Anwendung für einen allgemeinen Zweck verwendet werden kann.
  • Unter dem Gesichtspunkt eines Anwenders ist es jedoch erforderlich, dass die programmierbaren Steuerungen, wie sie oben beschrieben sind, jeweils unterschiedliche Programmsprachen für ein Programm für die programmierbare Logikvorrichtung und ein Programm für den Mikroprozessor zusätzlich zu einer Sequenzsprache zum Erzeugen eines Steuerprogramms für die programmierbare Steuerung lernen. Daher ist die programmierbare Steuerung so schwierig, dass nur ein spezifischer berufsmäßiger Ingenieur sie handhaben kann, was die Diffusion bzw. Verbreitung der programmierbaren Steuerung schwierig macht.
  • Darüber hinaus hat die programmierbare Steuerung verschiedene Anwendungen. Beispielsweise wird die programmierbare Steuerung verwendet, wenn nur eine Hochgeschwindigkeits-Zählerfunktion erforderlich ist, eine Hochgeschwindigkeits-Pulsausgabe erforderlich ist oder mehrere Hochgeschwindigkeits-Zählerfunktionen und mehrere Hochgeschwindigkeits-Pulsausgaben gleichzeitig erforderlich sind. Jedoch ist niemals diskutiert worden, wie eine effiziente standardisierte I/O-Schnittstellenschaltung für verschiedene Anwendungen, wie diejenigen, die oben beschrieben sind, aufzubauen ist.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, eine programmierbare Steuerung zur Verfügung zu stellen, die eine spezielle Funktionseinheit nur in einer Sequenzsprache zum Erzeugen eines Steuerprogramms für die programmierbare Steuerung handhaben, eine durch einen Anwender einfach zu handhabende spezielle Funktionseinheit erhalten und zu einer weiteren Verbesserung der Funktionen der programmierbaren Steuerung und der Verteilung davon beitragen kann.
  • Weiterhin besteht eine weitere Aufgabe der vorliegenden Erfindung darin, begrenzte Typen von speziellen Einheiten zur Verfügung zu stellen, die konfiguriert sind, um eine ineffektive Verwendung für verschiedene spezielle Funktionen von verschiedenen Anzahlen von I/Os zu reduzieren, um dadurch eine programmierbare Steuerung zur Verfügung zu stellen, die eine standardisierte integrierte Schaltung enthält, die eine Vielzahl von speziellen Funktionen für verschiedene Anwendungen hat, welche Schaltung gemeinsam für die beschränkten Typen spezieller Einheiten verwendet wird.
  • Gemäß der vorliegenden Erfindung wird eine programmierbare Steuerung zur Verfügung gestellt, die folgendes enthält: eine CPU-Einheit mit einem Mikroprozessor, einem Systemspeicher, der in Zusammenarbeit mit dem Mikroprozessor arbeitet, einem Programmspeicher zum Speichern eines sequentiellen Programms und einem Vorrichtungsspeicher zum Speichern von I/O-Information und von Steuerinformation; und wenigstens eine I/O-Einheit, die mit der CPU-Einheit durch einen Bus verbunden ist, wobei wenigstens eine der I/O-Einheiten eine spezielle Einheit mit einem integrierten Schaltungselement zum gemeinsamen Nutzen einer speziellen I/O-Verarbeitungsfunktion enthält, um eine Steuerfunktion des Mikroprozessors zu komplementieren. In der programmierbaren Steuerung: enthält die spezielle Einheit ein elektronisches Substrat, auf welchem eine Mehrkanal-Eingabe-Schnittstellenschaltung und eine Mehrkanal-Ausgabe-Schnittstellenschaltung, die jeweils an externe Verbindungsanschlüsse angeschlossen sind, und wird das integrierte Schaltungselement für eine I/O-Steuerung verwendet, deren Steuerspezifikationen teilweise variabel eingestellt werden können; das integrierte Schaltungselement enthält einen Parameterspeicher entsprechend einer jeweiligen Kanalzahl und eine Logikschaltungseinheit, deren Betriebsspezifikationen für eine I/O-Verarbeitung durch Schaltungsorganisationsdaten bestimmt werden, die von dem Mikroprozessor zu dem Parameterspeicher entsprechend einer jeweiligen Kanalzahl gesendet sind; die Logikschaltungseinheit enthält einen Mitteilungs-Bitspeicher zum Zählen eines durch die Eingabe-Schnittstellenschaltung erhaltenen logischen Eingangssignals mit hoher Geschwindigkeit, um eine Aufwärtszählausgabe als Mitteilungssignal zu dem Mikroprozessor zu senden, ein Berechnungsregister zum Senden von Zähldaten als Berechnungsdaten zu dem Mikroprozessor, ein Einstellregister zum Speichern von Einstelldaten, die von dem Mikroprozessor empfangen sind, einen Befehls-Latch-Speicher zum Speichern eines vom Mikroprozessor empfangenen Befehlssignals und einen Vorwärts/Rückwärts-Zähler zum Zuführen einer Hochgeschwindigkeits-Pulsausgabe basierend auf Inhalten des Einstellregisters und des Befehls-Latch-Speichers zu der Ausgabe-Schnittstellenschaltung; ob der Vorwärts/Rückwärts-Zähler eine Hochgeschwindigkeits-Zählerschaltung für ein von der Eingabe-Schnittstellenschaltung zugeführtes Eingangssignal bildet, um eine Hochgeschwindigkeits-Eingangsverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit durchzuführen, oder eine Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit empfangenen Einstelldaten bildet, um eine Hochgeschwindigkeits-Ausgangsverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgabe-Schnittstellenschaltung durchzuführen, wird für jeden Kanal gemäß einem Inhalt einer speziellen Anweisung bestimmt, die in einem Steuerprogramm enthalten ist, das in dem Programmspeicher gespeichert ist; eine Vielzahl von Typen der Hochgeschwindigkeits-Eingangsverarbeitung und eine Vielzahl von Typen der Hochgeschwindigkeits-Ausgangsverarbeitung werden durch die zu dem Parameterspeicher gesendeten Schaltungsorganisationsdaten durchgeführt; und die Eingabe-Schnittstellenschaltung führt einen Puls mit einer Frequenz proportional zu einem Eingangssignal zu dem integrierten Schaltungselement zu, wenn das Eingangssignal von einem externen Sensor, der an den externen Verbindungsanschluss angeschlossen ist, ein analoges Signal ist, wohingegen das integrierte Schaltungselement eine Pulsausgabe bei einem befohlenen EIN/AUS-Verhältnis als ein Ausgangssignal erzeugt und die Ausgabe-Schnittstellenschaltung das empfangene Pulsausgabesignal glättet, um das geglättete Pulsausgabesignal zu einer externen Last zuzuführen, wenn die externe Last eine analoge Last ist.
  • Gemäß der vorliegenden Erfindung wird anstelle eines Mikroprozessors zum Ausführen eines sequentiellen Programms eine spezielle Einheit mit einem integrierten Schaltungselement zum Durchführen einer Hochgeschwindigkeits-I/O-Verarbeitung für ein Pulssignal mit einem kürzeren Zyklus als einem Berechnungszyklus der Programmsteuerung und eine I/O-Schnittstellenschaltung bei der programmierbaren Steuerung verwendet. Das integrierte Schaltungselement enthält einen Parameterspeicher, dessen Betriebsmode gemäß dem Inhalt einer speziellen Anweisung in dem Programmspeicher bestimmt wird, und eine Logikschaltungseinheit. Ein Vorwärts/Rückwärts-Zähler, der die Logikschaltungseinheit bildet, wird sowohl für eine Hochgeschwindigkeits-Eingabeverarbeitung als auch eine Hochgeschwindigkeits-Ausgabeverarbeitung verwendet. Daher kann durch Ändern der I/O-Schnittstellenschaltung die programmierbare Steuerung für verschiedene Anwendungen verwendet werden, die irgendetwas von einer Hochgeschwindigkeits-Logik-Eingabeverarbeitung, einer Hochgeschwindigkeits-Logik-Ausgabeverarbeitung, einer Verarbeitung einer analogen Eingabe, eine Verarbeitung einer analogen Ausgabe und der Kombination davon erfordern. Demgemäß können die Herstellungskosten des integrierten Schaltungselements für spezielle Zwecke reduziert werden. Gleichzeitig lässt die ledigliche Nutzung einer vorbestimmten speziellen Anweisung im sequentiellen Speicher zu, dass der Anwender ohne weiteres mit der speziellen Einheit kommuniziert, um auf einfache Weise eine hochentwickelte Funktion zu verwenden. Als Ergebnis wird der große Effekt zur Verfügung gestellt, der zu einer weiteren Erweiterung der Anwendungen führt. Darüber hinaus kann eine gleichzeitige Verwendung einer Vielzahl von speziellen Einheiten mit den speziellen Funktionen verschiedener Anzahlen von Eingaben und Ausgaben fertig werden. Als Ergebnis ist die programmierbare Steuerung diesbezüglich effektiv, dass ein effizienter Systemaufbau ermöglicht wird.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • In den beigefügten Zeichnungen gilt:
  • 1 ist eine Ansicht, die eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 2 ist eine Ansicht, die eine interne Konfiguration einer I/O-Einheit darstellt, die als in 1 dargestellte spezielle Einheit konfiguriert ist;
  • 3 ist eine Ansicht, die eine interne Konfiguration einer weiteren I/O-Einheit darstellt, die als die in 1 dargestellte spezielle Einheit konfiguriert ist;
  • 4 ist eine Ansicht, die eine detaillierte Konfiguration einer in den 2 und 3 dargestellten Logikschaltungseinheit zeigt;
  • 5 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als variable Filterschaltung konfiguriert ist;
  • 6 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als Pulsdichte-Messschaltung konfiguriert ist;
  • 7 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als Pulsbreiten-Messschaltung konfiguriert ist;
  • 8 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als Flanken-Erfassungsschaltung konfiguriert ist;
  • 9 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als 1-Phasen-1-Eingaben-Hochgeschwindigkeits-Zählerschaltung konfiguriert ist;
  • 10 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als 1-Phasen-2-Eingaben-Hochgeschwindigkeits-Zählerschaltung konfiguriert ist;
  • 11 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als PWM-Ausgabeschaltung konfiguriert ist;
  • 12 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als erste Pulsausgabenschaltung konfiguriert ist;
  • 13 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als zweite Pulsausgabenschaltung konfiguriert ist;
  • 14 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit darstellt, die als Ausgabeschaltung für einen modifizierten Puls konfiguriert ist;
  • 15 ist eine Ansicht, die eine beispielhafte Struktur eines in 1 dargestellten Vorrichtungsspeichers darstellt;
  • 16 ist eine Ansicht, die eine beispielhafte Struktur von in 1 dargestellten Hochgeschwindigkeits-Zählerzahlen darstellt;
  • 17 ist eine Ansicht, die eine beispielhafte Struktur von in 1 dargestellten Hochgeschwindigkeits-Ausgabezahlen darstellt;
  • 18 ist ein Ablaufdiagramm, das eine Grundoperation der in 1 dargestellten programmierbaren Steuerung darstellt;
  • 19 ist ein Ablaufdiagramm, das dem in 18 dargestellten Ablaufdiagramm folgt;
  • 20 ist ein Steuerschaltungsdiagramm für eine allgemeine Sequenz der in 1 dargestellten programmierbaren Steuerung;
  • 21 ist eine Ansicht, die eine beispielhafte Verwendung einer Anweisung eines variablen Filters und eine Anweisung einer Pulsdichtemessung darstellt;
  • 22 ist eine Ansicht, die eine beispielhafte Verwendung einer Flankenerfassungsanweisung entsprechend 22 darstellt;
  • 23 ist eine Ansicht, die eine beispielhafte Verwendung einer Hochgeschwindigkeits-Zähleranweisung und einer Pulsbreitenmessanweisung darstellt;
  • 24 ist eine Ansicht, die eine beispielhafte Verwendung einer Anweisung einer ersten Pulsausgabe darstellt;
  • 25 ist eine Ansicht, die eine beispielhafte Verwendung einer Anweisung einer zweiten Pulsausgabe darstellt;
  • 26 ist ein Kennliniendiagramm zum Erklären der 25;
  • 27 ist eine Ansicht, die eine beispielhafte Verwendung einer Anweisung für ein Zurückkehren zu Null bzw. einer Zero-Return-Anweisung darstellt;
  • 28 ist ein Kennliniendiagramm zum Erklären der 27;
  • 29 ist eine Ansicht, die eine beispielhafte Verwendung einer Anweisung für eine PWM-Ausgabe darstellt;
  • 30 ist eine Ansicht, die eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem zweiten Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 31 ist eine Ansicht, die eine interne Konfiguration einer in 30 dargestellten speziellen Einheit darstellt;
  • 32 ist eine Ansicht, die eine interne Konfiguration einer weiteren in 30 dargestellten speziellen Einheit darstellt;
  • 33 ist eine Ansicht, die eine interne Konfiguration einer weiteren in 30 dargestellten speziellen Einheit darstellt;
  • 34 ist ein Blockdiagramm, das eine Pulsdichten-Messschaltung für ein analoges Signal darstellt;
  • 35 ist ein Blockdiagramm, das eine PWM-Ausgabeschaltung für ein analoges Signal darstellt;
  • 36 ist eine Ansicht, die eine beispielhafte Verwendung einer Anweisung für eine analoge I/O darstellt;
  • 37 ist eine Ansicht, die eine interne Konfiguration einer weiteren in 30 dargestellten speziellen Einheit darstellt;
  • 38 ist eine Ansicht, die eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem dritten Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 39 ist eine Ansicht, die eine Konfiguration einer ersten Hälfte einer in 38 dargestellten speziellen Einheit darstellt;
  • 40 ist eine Ansicht, die eine Konfiguration einer zweiten Hälfte der in 38 dargestellten speziellen Einheit darstellt;
  • 41 ist eine Ansicht, die eine detaillierte Konfiguration einer Logikschaltungseinheit darstellt, die in den 39 und 40 dargestellt ist;
  • 42 ist ein Blockdiagramm, das eine in 41 dargestellte Logikschaltungseinheit darstellt, die als eine I/O-Schaltung für allgemeine Zwecke konfiguriert ist;
  • 43 ist ein Ablauffolgediagramm, das eine beispielhafte Verwendung einer Anweisung für ein variables Filter REF und einer Anweisung für ein Lesen eines Monitors bzw. Überwachungsleseanweisung EXRD darstellt;
  • 44 ist ein Ablaufdiagramm zum Darstellen einer Grundoperation der in 38 dargestellten Konfiguration;
  • 45 ist eine Ansicht, die eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem vierten Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 46 ist eine Ansicht, die eine erste Hälfte einer in 45 dargestellten speziellen Einheit darstellt;
  • 47 ist eine Ansicht, die eine zweite Hälfte der in 46 dargestellten speziellen Einheit darstellt; und
  • 48 ist eine Ansicht, die eine interne Konfiguration einer speziellen Einheit gemäß einem fünften Ausführungsbeispiel der vorliegenden Erfindung darstellt.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • Erstes Ausführungsbeispiel
  • (1) Detaillierte Beschreibung einer Konfiguration
  • 1 stellt eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung dar. In 1 enthält eine programmierbare Steuerung 100A eine CPU-Einheit 110A, Eingabe/Ausgabe-Einheiten (die hierin nachfolgend I/O-Einheiten genannt werden) 120, 130 und 140 und einen Endgeräteblock bzw. Anschlussblock 190.
  • Elektrische Energie wird zu der CPU-Einheit 110A von einer externen Energieversorgung 109 zugeführt, die beispielsweise eine kommerzielle Energieversorgung bzw. ein Starkstromnetz für 100 V bis 240 V AC ist. Die CPU-Einheit 110A ist auch mit einem externen Werkzeug 108 durch ein entfernbares Anschlussstück (nicht gezeigt) verbunden, um ein I/O-Steuerprogramm schreiben und einen Betriebszustand mit dem externen Werkzeug 108 überwachen zu können.
  • Die CPU-Einheit 110A enthält einen Mikroprozessor (CPU) 111, einen Systemspeicher (SMEM) 112A, einen Programmspeicher (PMEM) 113A, einen Vorrichtungsspeicher (DMEM) 114a, einen Pufferspeicher (BMEM) 114b, der nachfolgend beschrieben wird, eine Batterie (BATT) 115, eine Bus-Schnittstellenschaltung (BIF) 116, eine Warnungs-Anzeigeeinheit (DSP) 117, eine serielle Schnittstelle (SIF) 118 und eine Steuerungsenergieversorgung 119. Der Systemspeicher 112A ist beispielsweise ein Masken-ROM-Speicher oder ein nichtflüchtiger Flash-Speicher. Der Programmspeicher 113A ist beispielsweise ein nichtflüchtiger Flash-Speicher und speichert durch einen Anwender erzeugte I/O-Steuerprogramme. Der Vorrichtungsspeicher 114a ist beispielsweise ein RAM-Speicher und enthält I/O-Bildspeicher X und Y, ein Hilfsrelais M und ein Datenregister D, die nachfolgend beschrieben werden. Die Batterie 115 sichert einen Teil des Vorrichtungsspeichers 114a ab. Die Bus-Schnittstellenschaltung 116 dient für eine Datenkommunikation mit jeder der I/O-Einheiten. Die serielle Schnittstelle 118 verbindet das externe Werkzeug 108 und den Mikroprozessor 111 miteinander. Unter den oben beschriebenen Komponenten sind der Mikroprozessor 111, der Systemspeicher 112A, der Programmspeicher 113A, der Vorrichtungsspeicher 114a, der Pufferspeicher 114b, die Bus-Schnittstelle 116 und die serielle Schnittstelle 118 durch einen Bus miteinander verbunden.
  • Elektrische Energie wird von der externen Energieversorgung 109 zu der Steuerungs-Energieversorgung (PSU) 119 zugeführt, die infolge davon eine geregelte 24V-DC-Energie zu einer Eingangssignalschaltung (nicht gezeigt) oder beispielsweise eine geregelte 5V-DC-Spannung zu einer Konstantspannungs-Energieversorgungsleistung Vcc zuführt. Die Konstantspannungs-Energieversorgungsleitung Vcc ist zusammen mit einer Erdungsschaltung GND für jede Einheit vorgesehen. Die Steuerungs-Energieversorgung 119 kann auch außerhalb der CPU-Einheit 110A vorgesehen sein. Die Energieversorgungseinheit, die CPU-Einheit und eine vorbestimmte Anzahl von I/O-Einheiten bilden eine Basiseinheit.
  • Der Systemspeicher 112A enthält verschiedene Steuerprogramme, die nachfolgend unter Bezugnahme auf die 18 und 19 beschrieben werden. Der Systemspeicher 112A wandelt die I/O-Steuerprogramme in einer sequentiellen Sprache, die in dem Programmspeicher 113A gespeichert ist, in eine Maschinensprache um, die mit dem Mikroprozessor 111 kompatibel ist, um den Mikroprozessor 111 zu betreiben. Die Programme werden durch einen Hersteller der programmierbaren Steuerung zur Zeit eines Versendens des hergestellten Produkts gespeichert.
  • Ein durch den Anwender unter Verwendung des externen Werkzeugs 108, das beispielsweise ein Personalcomputer ist, erzeugtes sequentielles Programm der I/O-Steuerung wird in den Programmspeicher 113A durch die serielle Schnittstelle 118 geschrieben. Beispiele für das sequentielle Programm sind als Ablauffolgediagramme der 20 bis 25, 27 und 29 dargestellt. Die Erzeugung des Ablauffolgediagramms auf einem Personalcomputer-Bildschirm erzeugt automatisch ein sequentielles Programm. Der Programmspeicher 113A kann ein RAM-Speicher sein, der durch die Batterie gestützt wird. In diesem Fall lässt das Anbringen einer Speicherkassette, die einen nichtflüchtigen Speicher, wie beispielsweise einen Flash-Speicher oder einen EPROM, enthält, zu, dass der nichtflüchtige Speicher als Programmspeicherbereich verwendet wird.
  • Der Vorrichtungsspeicher 114 ist ein RAM-Speicher, der I/O-Signalinformation oder einen Betriebszustand einer Vorrichtung, wie beispielsweise eines Hilfsrelais, eines Zeitgebers, eines Zählers und eines Datenregisters, das für den Anwender offen ist, speichert, welcher in der programmierbaren Steuerung 100A vorgesehen ist. Ein Teil des Vorrichtungsspeichers 114a wird durch die Batterie 115 gesichert bzw. unterstützt, die beispielsweise eine Lithium-Batterie ist. Die Batterie 115 hält einen Speicherzustand selbst dann, wenn die Energieversorgung zu der programmierbaren Steuerung 100A abgetrennt ist.
  • Die Warnungs-Anzeigeeinheit 117 zeigt einen Betriebszustand des Mikroprozessors 111 an und besteht aus beispielsweise einer Vielzahl von lichtemittierenden Dioden oder einer Siebensegmentanzeige. Die Warnungs-Anzeigeeinheit 117 zeigt eine ankommende Energieversorgung, einen normalen Betriebszustand und verschiedene anormale Zustände an.
  • Die I/O-Einheit 120 ist mit der CPU-Einheit 110A durch ein Anschlussstück (nicht gezeigt) verbunden, das an einer Endfläche der CPU-Einheit 110A vorgesehen ist. Ein externer Ein/Aus-Schaltsensor 101x und eine elektrische Last 101y sind mit der I/O-Einheit 120 durch einen I/O-Anschlussblock (nicht gezeigt) verbunden. Die I/O-Einheit 120 als beispielhaftes Ausführungsbeispiel ist in eine Vielzahl von Eingabeeinheiten und eine Vielzahl von Ausgabeeinheiten aufgeteilt. Die Anzahl von zu verwendenden Eingabeeinheiten und diejenige von zu verwendenden Ausgabeeinheiten entsprechen der erforderlichen Anzahl von Eingaben und derjenigen von Ausgaben.
  • Der Ein/Aus-Schaltsensor 101x ist beispielsweise verschiedene Betriebsschalter und ein Sensorschalter zum Bestätigen von Operationen von Stellgliedern, die auf einer Steuertafel vorgesehen sind. Beispielsweise können acht Eingangssignale mit einer Eingabeeinheit verbunden sein. Für die Verbindung einer größeren Anzahl der Ein/Aus-Schaltsensoren wird die Anzahl von zu verbindenden bzw. anzuschließenden Eingabeeinheiten erhöht. Obwohl die Energieversorgung zu dem Ein/Aus-Schaltsensor 101x normalerweise bei 24 V DC ist, ist der Ein/Aus-Schaltsensor 101x in einigen Fällen an eine kommerzielle Energieversorgung für 100 V bis 240 V AC angeschlossen.
  • Die elektrische Last 101y ist beispielsweise verschiedene Anzeigelampen, ein elektromagnetisches Ventil zum Antreiben des Stellglieds oder ein elektromagnetisches Relais zum Antreiben eines Motors, die an der Steuertafel vorgesehen sind. Beispielsweise können acht Ausgangssignale mit einer Ausgabeeinheit verbunden sein. Für die Verbindung einer größeren Anzahl von elektrischen Lasten wird die Anzahl von anzuschließenden Ausgabeeinheiten erhöht.
  • Eine Eingabe-Schnittstellenschaltung, die in der I/O-Einheit 120 vorgesehen ist, enthält eine Eingabe-Isolierschaltung 121, wie beispielsweise einen Fotokoppler-Transistor oder einen Foto-Triac, ein Eingabefilter 122 zum Beschränken von Rauschen und einen Datenselektor 124. Eine Ausgabe-Schnittstellenschaltung, die in der I/O-Einheit 120 vorgesehen ist, enthält einen Latch-Speicher 125 für ein Antriebssignal, das die elektrische Last 101y antreibt, eine Ausgabe-Isolierschaltung 126, wie beispielsweise einen Fotokoppler-Transistor, einen Foto-Triac oder ein elektromagnetisches Relais und ein Ausgabeelement 127, wie beispielsweise einen Leistungstransistor, einen Triac oder ein elektromagnetisches Relais.
  • Die I/O-Einheit 130 bildet eine spezielle Einheit, die ein integriertes Schaltungselement 10 mit einem ersten Port 11 und einem zweiten Port 12 enthält. Die spezielle Einheit wird für sowohl Eingaben als auch Ausgaben verwendet. Beispielsweise werden acht Signale von dem EIN/AUS-Schaltsensor 102x, der mit hoher Geschwindigkeit arbeitet, zu der speziellen Einheit durch eine Eingabe-Isolierschaltung 131 und ein Eingangsfilter 132 eingegeben. Gleichzeitig treibt die spezielle Einheit acht elektrische Lasten 102y, die mit niedriger Geschwindigkeit arbeiten, durch eine Ausgabe-Isolierschaltung 136 und ein Ausgabeelement 137 an.
  • Die I/O-Einheit 140 bildet die spezielle Einheit, die ein integriertes Schaltungselement 10 mit dem ersten Port 11 und dem zweiten Port 12 enthält. Die spezielle Einheit wird für sowohl Eingaben als auch Ausgaben verwendet. Beispielsweise werden acht Signale von dem Ein/Aus-Schaltsensor 103x, der mit niedriger Geschwindigkeit arbeitet, zu der speziellen Einheit durch eine Eingabe-Isolierschaltung 141 und ein Eingangsfilter 142 eingegeben. Gleichzeitig treibt die spezielle Einheit acht elektrische Lasten 103y, die mit hoher Geschwindigkeit arbeiten, durch eine Ausgabe-Isolierschaltung 146 und ein Ausgabeelement 147 an.
  • Das Eingangsfilter 122 in der I/O-Einheit 120, die als I/O-Einheit für allgemeine Zwecke dient, ist ein Tiefpassfilter, das für eine logische Eingabe niedriger Geschwindigkeit verwendet wird, welches allgemein eine Ansprechverzögerung von etwa 10 msek hat, um einen fehlerhaften Betrieb zu verhindern, der durch ein Kontaktgrellen des Ein/Aus-Schaltsensors 101x (einen unterbrochenen Betrieb, der dann auftritt, wenn ein Sensor ausgeschaltet wird) oder durch Leitungsrauschen, das einer Eingangsverdrahtung überlagert ist, verursacht wird. Andererseits ist das Eingangsfilter 132 in der I/O-Einheit 130, die als die spezielle Einheit dient, ein Tiefpassfilter mit einer Ansprechverzögerung von 5 μsek oder darunter, um beispielsweise die Anzahl von Eingangs-Pulssignalen bei 100 kHz zu zählen. Der Ein/Aus-Schaltsensor 102x, der als Hochgeschwindigkeits-Logikeingabe dient, ist ein kontaktloser Sensor und erfordert eine spezielle Berücksichtigung, um zu verhindern, dass ein Leitungsrauschen der Eingangsverdrahtung überlagert wird, indem beispielsweise eine separate Verdrahtung oder ein abgeschirmtes verdrilltes Kabelpaar verwendet wird. Das Eingangsfilter 142 in der I/O-Einheit 140, die als spezielle Einheit dient, ist ein Tiefpassfilter mit einer Ansprechverzögerung von beispielsweise 1 msek, das für eine logische Eingabe mittlerer Geschwindigkeit verwendet wird. Wenn die spezielle Einheit 140 mit sowohl einer Eingabe hoher Geschwindigkeit als auch eine Ausgabe hoher Geschwindigkeit beschäftigt ist, wird jedoch das Eingangsfilter 142 für eine logische Eingabe hoher Geschwindigkeit verwendet, wie es nachfolgend beschrieben wird.
  • Andererseits ist als ein Ausgabeelement 127 in der I/O-Einheit 120, die als I/O-Einheit für allgemeine Zwecke dient, ein kleines elektromagnetisches Relais das am häufigsten verwendete. Zusätzlich wird ein Triac als ein kontaktloses Ausgabeelement für eine AC-Last verwendet, wohingegen ein Transistor als kontaktloses Ausgabeelement für eine DC-Last verwendet wird. Als Ergebnis ist eine Energieversorgung für die DC-Last normalerweise bei DC 24 V. Andererseits sind ein Ausgabeelement 137 in der I/O-Einheit 130 und ein Ausgabeelement 147 in der I/O-Einheit 140 Transistorausgaben. Für das Ausgabeelement 147 wird insbesondere ein Transistor, der mit hoher Geschwindigkeit arbeitet, verwendet, um eine Hochgeschwindigkeits-Pulsausgabe bei beispielsweise 100 kHz zu erzeugen. Als das Ausgabeelement 137 wird ein billiger Transistor verwendet, der mit niedriger Geschwindigkeit arbeitet. Durch Ersetzen des Transistors, der mit niedriger Geschwindigkeit arbeitet, durch einen Transistor, der mit hoher Geschwindigkeit arbeitet, kann eine Hochgeschwindigkeits-Pulsausgabe erzeugt werden.
  • Der Anschlussblock 190, der in der letzten Stufe angeschlossen ist, enthält eine Beendigungsverarbeitungsschaltung 199. Die Beendigungsverarbeitungsschaltung 199 verbindet einen Anschluss eines Datenbusses DATA und denjenigen eines Adressenbusses ADR, die von der CPU-Einheit 110A durch die I/O-Einheiten zu der Konstantspannungs- Energieversorgungsleitung Vcc und einer Erdungsschaltung GND durch eine Pull-up-Schaltung und eine Pull-down-Schaltung vorgesehen sind, um ein reflektiertes Rauschen eines Hochgeschwindigkeitssignals zu beschränken. Eine Zufuhrdurchgangs-Bussignalleitung als beispielhaftes Ausführungsbeispiel enthält sechzehn Busse für sowohl Adresse als auch Daten (was hierin nachfolgend Adressen/Daten-Busse genannt wird) und acht Steuersignalbusse. Ob die sechzehn Adressen/Daten-Busse ein Adressensignal oder gesendete empfangene Daten handhaben sollen, wird durch eine Steuersignalleitung bestimmt. Weiterhin enthält jede der I/O-Einheiten eine Bussteuerung (nicht gezeigt). Unter mehreren Datenselektoren und Latch-Speichern ist derjenige, der durch den Mikroprozessor 111 bestimmt ist, mit dem Datenbus verbunden, um mit dem Mikroprozessor 111 kommunizieren zu können.
  • Als Nächstes wird eine interne Konfiguration der I/O-Einheit 130, die als die spezielle Einheit in 1 gebildet ist, unter Bezugnahme auf 2 beschrieben werden, während diejenige der I/O-Einheit 140 unter Bezugnahme auf 3 beschrieben werden wird. Zuerst wird die Konfiguration der in 2 dargestellten I/O-Einheit 130 beschrieben werden. In 2 enthält die als die spezielle Einheit konfigurierte I/O-Einheit 130 einen Eingangsanschluss 130X, der mit den acht Ein/Aus-Schaltsensoren 102x verbunden ist, und einen Ausgangsanschluss 130Y, der mit den acht elektrischen Lasten 102y verbunden ist.
  • Eine Eingabe-Schnittstellenschaltung 139X für eine Hochgeschwindigkeits-Logikeingabe ist zwischen dem Eingangsanschluss 130X und dem ersten Port 11 vorgesehen, der für das integrierte Schaltungselement 10 vorgesehen ist. Die Eingabe-Schnittstellenschaltung 139X enthält Eingabe-Isolierschaltungen 131n und Eingangsfilter 132n mit einer relativ kleinen Zeitkonstanten, wie beispielsweise etwa 5 μsek. Die Kombination aus der Eingabe-Isolierschaltung 131n und dem Eingangsfilter 132n, die in Reihe geschaltet sind, ist für jede Kanalzahl vorgesehen: n = 0 bis 7.
  • Eine Ausgabe-Schnittstellenschaltung 139Y für eine EIN/AUS-Operation ist zwischen dem Ausgangsanschluss 130Y und dem zweiten Port 12 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Ausgabe-Schnittstellenschaltung 139Y enthält Ausgabeelemente 137n entsprechend Leistungstransistoren und Ausgabe-Isolierschaltungen 136n. Die Kombination aus dem Ausgabeelement 137n und der Ausgabe-Isolierschaltung 136n, die in Reihe geschaltet sind, ist für jede Kanalzahl vorgesehen: n = 0 bis 7. Der Eingangsanschluss 130X und die Eingabe-Schnittstellenschaltung 139X, der Ausgangsanschluss 130Y und die Ausgabe-Schnittstellenschaltung 139Y, ein Bus-Verbindungsanschlussstück 130Z und das integrierte Schaltungselement 10 sind auf einem elektronischen Substrat 19xy angebracht, um die spezielle Einheit 130 zu bilden.
  • Das erste Port 11 enthält Kanalanschlüsse 11n (die nicht mit einem Bezugszeichen dargestellt sind) jeweils entsprechend den Kanalzahlen n = 0 bis 7, während das zweite Port 12 Kanalanschlüsse 12n (die nicht mit einem Bezugszeichen dargestellt sind) jeweils entsprechend den Kanalzahlen n = 0 bis 7 enthält. Jeder der Kanalanschlüsse 11n ist selektiv an einen Datenbus DATA über einen Datenselektor 134, einen Bus-Verbindungsanschluss 13 und das Bus-Verbindungsanschlussstück 130Z angeschlossen, um ein Eingangssignal zum Mikroprozessor 111 zu senden. Andererseits ist jeder der Kanalanschlüsse 12n selektiv an den Datenbus DATA über einen Ausgabe-Latch-Speicher 135 angeschlossen, um ein Ausgangssignal vom Mikroprozessor 111 zu empfangen. Eine Logikschaltungseinheit 1000n (1000·0, 1000·1, ..., 1000·7) ist zu jedem der Kanäle (n = 0 bis 7) zugeteilt.
  • Die Logikschaltungseinheit 1000n sendet und empfängt ein Signal zu/von dem Datenbus DATA und auch zu/von einer anderen Logikschaltungseinheit 1000n. Weiterhin empfängt die Logikschaltungseinheit 1000n ein Signal vom Kanalanschluss 11n und gibt ein Signal zum Kanalanschluss 12n aus. Die Details der Logikschaltungseinheit 1000n werden nachfolgend unter Bezugnahme auf 4 beschrieben werden. Bei einer typischen Hochgeschwindigkeits-Eingabeverarbeitungsoperation wird beispielsweise ein Hochgeschwindigkeits-Pulssignal vom Kanalanschluss 11n angegeben. Die Logikschaltungseinheit 1000n zählt die Anzahl der Hochgeschwindigkeits-Pulssignale. Wenn die Anzahl der Hochgeschwindigkeits-Pulssignale eine vorbestimmte Sollzahl erreicht, sendet die Logikschaltungseinheit 1000n eine Aufwärtszählausgabe über den Datenbus DATA zum Mikroprozessor 111. Die Sollzahl wird im Voraus als Einstelldaten vom Mikroprozessor 111 über den Datenbus DATA zu der Logikschaltungseinheit 1000n gesendet. Bei einer typischen Hochgeschwindigkeits-Ausgabeverarbeitungsoperation erzeugt beispielsweise die Logikschaltungseinheit 1000n eine Hochgeschwindigkeits-Pulsausgabe von dem Kanalanschluss 12n basierend auf einem Pulszyklus und der Anzahl erzeugter Pulse, die im Voraus als Einstelldaten vom Mikroprozessor 111 über den Datenbus DATA zur Logikschaltungseinheit 1000n gesendet sind.
  • Ein erster Identifikationsanschluss 14a identifiziert, ob die Eingabe-Schnittstellenschaltung 139X für ein logisches Signal oder ein analoges Signal, das nachfolgend beschrieben wird, dient. Wenn die Eingabe-Schnittstellenschaltung 139X für ein logisches Signal verwendet wird, wird ein Schreibmuster angeschlossen, um einen logischen Pegel auf "H" einzustellen. Ein zweiter Identifikationsanschluss 14b identifiziert, ob die Ausgabe-Schnittstellenschaltung 139Y für ein logisches Signal oder ein analoges Signal, das nachfolgend beschrieben wird, dient. Wenn die Ausgabe-Schnittstellenschaltung 139Y für ein logisches Signal dient, wird ein Schreibmuster angeschlossen, um einen logischen Pegel auf "H" einzustellen.
  • Ein Schreibmuster eines ersten Signalanschlusses 16a ist angeschlossen, um seinen logischen Pegel auf "H" einzustellen, um anzuzeigen, dass der erste Signalanschluss 16a für eine Hochgeschwindigkeits-Logikeingabe dient. Ein Schreibmuster eines zweiten Signalanschlusses 16b ist angeschlossen, um seinen logischen Pegel auf "L" einzustellen, um anzuzeigen, dass der zweite Signalanschluss 16b für eine logische Ausgabe niedriger Geschwindigkeit dient. Identifikationsanschlussinformation, wie sie oben beschrieben ist, wird zu einem Karteninformationsspeicherungs-Speicher 9000 zugeführt, um über den Datenbus DATA zum Mikroprozessor 111 gesendet zu werden.
  • Eine gemeinsame Taktschaltung 9001 erzeugt ein Taktsignal τ mit beispielsweise einem Zyklus von 1 μsek und führt das Taktsignal zu jeder Logikschaltungseinheit 1000n zu, wie es nötig ist. Eine gemeinsame Triggerschaltung 9002 erzeugt Triggersignale P0 und Q0 in Tandemform, die jeweils beispielsweise einen Signalzyklus von T0 = 10 msek und eine Breite von 1 μsek haben, und führt die Triggersignale P0 und Q0 zu jeder Logikschaltungseinheit 1000n zu, wie es nötig ist.
  • Als Nächstes wird die Konfiguration der in 3 dargestellten I/O-Einheit 140 beschrieben. In 3 enthält die als die spezielle Einheit konfigurierte I/O-Einheit 140 einen Eingangsanschluss 140X, der an die acht Ein/Aus-Schaltsensoren 103x angeschlossen ist, und einen Ausgangsanschluss 140Y, der an die acht elektrischen Lasten 103y angeschlossen ist.
  • Eine Eingabe-Schnittstellenschaltung 149X für eine logische Eingabe mittlerer Geschwindigkeit ist zwischen dem Eingangsanschluss 140X und dem ersten Port 11 vorgesehen, das in dem integrierten Schaltungselement 10 vorgesehen ist. Die Eingabe-Schnittstellenschaltung 149X enthält Eingabe-Isolierschaltungen 141n und Eingangsfilter 142n, die jeweils eine relativ kleine Zeitkonstante von beispielsweise etwa 1 msek haben. Die Kombination aus der Eingabe-Isolierschaltung 141n und dem Eingangsfilter 142n, die in Reihe geschaltet sind, ist für jede Kanalzahl vorgesehen: n = 0 bis 7.
  • Eine Ausgabe-Schnittstellenschaltung 149Y für eine EIN/AUS-Operation ist zwischen dem Ausgangsanschluss 140Y und dem zweiten Port 12 vorgesehen, das in dem integrierten Schaltungselement 10 vorgesehen ist. Die Ausgabe-Schnittstellenschaltung 149Y enthält Ausgabeelemente 147n entsprechend Leistungstransistoren für eine Hochgeschwindigkeitsoperation und Ausgabe-Isolierschaltungen 146n. Die Kombination aus dem Ausgabeelement 147n und der Ausgabe-Isolierschaltung 146n, die in Reihe geschaltet sind, ist für jede Kanalzahl vorgesehen: n = 0 bis 7. Der Eingangsanschluss 140X und die Eingabe-Schnittstellenschaltung 149X, der Ausgangsanschluss 140Y und die Ausgabe-Schnittstellenschaltung 149Y, ein Bus-Verbindungsanschlussstück 140Z und das integrierte Schaltungselement 10 in auf dem elektronischen Substrat 19xy angebracht, um die spezielle Einheit 140 zu bilden.
  • Da die Eingabe-Schnittstellenschaltung 149X für ein logisches Signal dient, ist das Verdrahtungsmuster des ersten Identifikationsanschlusses 14a angeschlossen, um seinen logischen Pegel auf "H" einzustellen.
  • Da die Ausgabe-Schnittstellenschaltung 149Y für ein logisches Signal dient, ist das Verdrahtungsmuster des zweiten Identifikationsanschlusses 14b angeschlossen, um seinen logischen Pegel auf "H" einzustellen.
  • Das Verdrahtungsmuster des ersten Signalanschlusses 16a ist angeschlossen, um den logischen Pegel auf "L" einzustellen, um anzuzeigen, dass der erste Signalanschluss 16a für eine logische Eingabe mittlerer Geschwindigkeit dient. Das Verdrahtungsmuster des zweiten Signalanschlusses 16b ist angeschlossen, um den logischen Pegel auf "H" einzustellen, um anzuzeigen, dass der zweite Signalanschluss 16b für eine logische Ausgabe hoher Geschwindigkeit dient.
  • Als Nächstes wird auf 4 Bezug genommen werden, die eine detaillierte Konfiguration der in den 2 und 3 gezeigten Logikschaltungseinheit 1000n darstellt. In 4 ist die Logikschaltungseinheit 1000n (1000·0, 1000·1, ..., 1000·7), die jedem der Kanäle n = 0 bis 7 zugeteilt ist, basierend auf einem Vorwärts/Rückwärts-Zähler 2000n (2000·0, 2000·1, ..., 2000·7) konfiguriert. In dem Vorwärts/Rückwärts-Zähler 2000n wird dann, wenn der logische Pegel von irgendeinem eines Aufwärtszählbefehlsanschlusses UP und eines Abwärtszählbefehlsanschlusses DN sich zu "H" ändert, ein aktueller Zählerwert eines Registers für einen aktuellen Wert 4001n auf einen Übergang des logischen Pegels eines Zähleingangsanschlusses IN von "L" zu "H" hin erhöht oder reduziert. Eine inkrementelle oder dekrementelle Variation bezüglich des aktuellen Zählerwerts wird basierend auf einem in einem Variations-Einstellregister 4003n gespeicherten numerischen Wert bestimmt. Der Wert des Variations-Einstellregisters 4003n ist normalerweise 1, und der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001 wird auf einen logischen Übergang des Zähleingangsanschlusses IN hin nur um Eins erhöht oder reduziert.
  • Auf eine Eingabe eines Rücksetzbefehls zu einem Rücksetzanschluss RST des Vorwärts/Rückwärts-Zählers 200n hin wird der Wert des Registers für einen aktuellen Wert 4001n auf Null rückgesetzt. Wenn irgendein numerischer Wert in einem Voreinstellregister in einem Standby-Pufferregister 4004n gespeichert ist, wird der Inhalt des Voreinstellregisters zu dem Register für einen aktuellen Wert 4001n transferiert. Ein Halten/Halte-Register 4002n dient zum regelmäßigen Lesen und Speichern des Inhalts des Registers für einen aktuellen Wert 4001n. Das Register für einen aktuellen Wert 4000n, das (Reibe-)Halten/Halte-Register 4002n, das Variations-Einstellregister 4003n und das Standby-Pufferregister 4004n werden kollektiv bzw. gemeinsam als ein Berechnungsregister 4000n bezeichnet. Insbesondere ist, wie es aus der folgenden Beschreibung klar wird, das Variations-Einstellregister 4003n nur für die Logikschaltungseinheiten 1000·1, 1000·2, 1000·5 und 1000·6 vorgesehen. Jeder der Vorwärts/Rückwärts-Zähler mit den anderen Kanalzahlen erhöht oder erniedrigt den Zählerwert immer um Eins.
  • Das Einstellregister 3000n enthält ein erstes Einstellregister 3001n, das einen Zählwert einer oberen Grenze speichert, und ein zweites Einstellregister 3002n, das einen Zwischenwert bzw. mittleren Wert speichert, der kleiner als der Zählwert einer oberen Grenze ist.
  • Eine erste Vergleichsschaltung 4001n ist eine Wert-Vergleichsschaltung. Ein logischer Pegel der ersten Vergleichsschaltung 5001n ändert sich zu "H", um eine Bestimmungs-Speicherschaltung S1 einzustellen, um eine Aufwärtszählausgabe Q zu erzeugen, wenn ein in dem ersten Einstellregister 3001n gespeicherter Einstellwert und der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001n identisch zueinander sind oder wenn der aktuelle Zählerwert einen Einstellwert übersteigt. Eine zweite Vergleichsschaltung 5002n ist eine Wert-Vergleichsschaltung zum Vergleichen eines im zweiten Einstellregister 3002n gespeicherten Einstellwerts und des aktuellen Zählerwerts des Registers für einen aktuellen Wert 4001n. Wenn der Einstellwert und der aktuelle Zählerwert identisch zueinander sind oder der aktuelle Zählerwert den Einstellwert übersteigt, und zwar in einem Aufwärtszählmode, stellt die zweite Vergleichsschaltung 5002n eine Bestimmungs-Speicherschaltung S2 durch ein UND-Element 42 ein, um eine Aufwärtszählvergleichs-Übereinstimmungsausgabe P zu erzeugen. Andererseits stellt dann, wenn der aktuelle Zählerwert kleiner als der Einstellwert in einem Abwärtszählmode ist, die zweite Vergleichsschaltung 5002n eine Bestimmungs-Speicherschaltung S3 durch ein Gatterelement 44 ein, um eine Abwärtszählvergleichs-Übereinstimmungsausgabe P zu erzeugen.
  • Eine Rücksprung-Vergleichsschaltung 5003n ist eine Wert-Vergleichsschaltung, die eine Rücksprungausgabe Q erzeugt, um die Bestimmungs-Speicherschaltung S1 rückzusetzen, wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001n sich erniedrigt, um identisch zu einem Wert eines Null-Registers 41 zu sein oder um ein negativer Wert zu sein. Ein Befehlssignal vom Mikroprozessor 111 kann die Bestimmungs-Speicherschaltungen S2 und S3 oder den aktuellen Zählerwert des Registers für einen aktuellen Wert 4001n über einen Befehls-Latch-Speicher 6000n rücksetzen.
  • Ein Mitteilungsbitspeicher 7000n enthält die Aufwärtszählausgabe Q, die Rücksprungausgabe Q, die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und die Abwärtszählvergleichs-Übereinstimmungsausgabe P. Die oben beschriebenen Bestimmungsausgänge sind mit dem Datenbus DATA durch einen Datenselektor 48 verbunden. Eine Wechselausgabeschaltung 47 ist eine Logikschaltung zum abwechselnden Invertieren der Logik einer Ausgabe jedes Mal dann, wenn der logische Pegel der Vergleichs-Übereinstimmungsausgabe von der ersten Vergleichsschaltung 5001n sich von "L" zu "H" ändert. Eine Ausgangs- bzw. Ausgabe-Auswahlschaltung 49 wählt eine Ausgangs- bzw. Ausgabeschaltung entsprechend dem Inhalt eines Parameterspeichers 8000n aus und bestimmt diese. Die Ausgabe-Auswahlschaltung 49 bestimmt beispielsweise, ob Anschlüsse J und K als Vorwärtspulsausgabe FP und als Rückwärtspulsausgabe RP oder als Vorwärts/Rückwärts-Pulsausgabe FRP und eine Richtungsbefehlsausgabe DIR zuzuteilen sind. Darüber hinaus führt die Ausgaben-Auswahlschaltung 49 die von der Bestimmungs-Speicherschaltung S2 ausgegebene Aufwärtszählvergleichs-Übereinstimmungsausgabe P oder eine Operationsbeendigungsausgabe als die Aufwärtszählausgabe Q zu einem Anschluss L zu.
  • Eine Eingabeschaltungseinheit 40 ist eine Eingabeverarbeitungsschaltung für den Vorwärts/Rückwärts-Zähler 2000n. Eine spezifische Schaltungskonfiguration der Eingabeschaltungseinheit 40 wird basierend auf dem Inhalt des Parameterspeichers 8000n bestimmt. Spezifische Schaltungskonfigurationen der Eingabeschaltungseinheit 40 und der Ausgaben-Auswahlschaltung 49 werden nachfolgend unter Bezugnahme auf die 5 bis 14 beschrieben werden. Wenn beispielsweise der Vorwärts/Rückwärts-Zähler 2000n eine Hochgeschwindigkeits-Zählerschaltung bildet, ist der Vorwärts/Rückwärts-Zähler irgendeiner eines 1-Phasen-1-Eingang-Vorwärts/Rückwärts-Zählers, bei welchem eine Zählrichtung durch ein Befehlssignal bestimmt wird, eines 1-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, zu welchem eine Aufwärts/Abwärts-Zähleingabe individuell zugeführt wird, und eines 2-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, in welchem eine Aufwärts/Abwärts-Zählrichtung basierend auf einer Phasendifferenz oder einer Zweiphaseneingabe bestimmt wird. Weiterhin hat die Hochgeschwindigkeits-Zählerschaltung irgendeinen eines Einzelflanken-Auswertungsmodes, eines Doppelflanken-Auswertungsmodes und eines Vierflanken-Auswertungsmodes in Abhängigkeit davon, ob ein Zählen gestartet wird, wenn die Hochgeschwindigkeits-Zähleranweisung ausgeführt wird, oder dann, wenn eine Zählstartbefehlseingabe auf EIN geschaltet wird, ob eine Voreinstellbefehlseingabe zum Transferieren von Anfangswertdaten zu dem Register für einen aktuellen Wert hinzugefügt ist oder nicht, oder ob das Zählen bei einem Ansteigen oder einem Abfallen des Pulssignals bei jeder Phase in dem Fall der 2-Phasen-2-Eingaben-Hochgeschwindigkeits-Zählerschaltung durchgeführt wird. Jede von verschiedenen Hochgeschwindigkeits-Zählerschaltungen, wie denjenigen, die oben beschrieben sind, ist mit einer eindeutigen Identifikationsnummer versehen. Durch die Kombination einer speziellen Anweisung und der Identifikationsnummer bestimmte Schaltungsorganisationsinformation ist im Parameterspeicher 8000n gespeichert.
  • Alle Eingangssignale, die erforderlich sind, um zuzulassen, dass die Logikschaltungseinheit 1000n in jedem Kanal ihre vorbestimmten verschiedenen Funktionen demonstriert bzw. zeigt, sind an Eingangsanschlüsse A bis H angeschlossen. Der Parameterspeicher 8000n wählt das an den Vorwärts/Rückwärts-Zähler 2000n anzuschließende Eingangssignal aus allen Eingangssignalen und der für den Anschluss verwendeten Schaltungskonfiguration aus und bestimmt dieses.
  • Die Daten von dem Parameterspeicher 8000n werden von dem Mikroprozessor 111 bei einem Start der Operation der programmierbaren Steuerung 100A gesendet und werden während der Operation der programmierbaren Steuerung 100A außer für einige nachfolgend beschriebene Fälle nicht geändert. Ein Teil der Operation der Eingabeschaltungseinheit 40 kann auch durch den Inhalt des Befehls-Latch-Speichers 6000n geändert werden, der während der Operation vom Mikroprozessor 111 gesendet wird. Beispielsweise wird die Auswahl der Aufwärts/Abwärts-Zählrichtung in dem 1-Phasen-1-Eingangs-Hochgeschwindigkeitszähler durch den Inhalt des Befehls-Latch-Speichers 6000n variabel eingestellt.
  • Wie es oben beschrieben ist, führt die Eingabeschaltungseinheit 40 einen Befehl zum Unterscheiden einer Zählrichtung des Vorwärts/Rückwärts-Zählers, einen selektiven Anschluss des Zähleingangssignals zu dem Zähleingangsanschluss IN, den selektiven Anschluss eines Rücksetzsignals zu dem Rücksetzanschluss RST und dem selektiven Anschluss eines Stoppbefehlssignals zum erzwungenen Stoppen der Zählsignaleingabe zu dem Zähleingangsanschluss IN durch.
  • Ein NAND-Ausgabeelement 46a ist eine Gatterschaltung, die an einem UND-Element 45a wirkt, um eine subtrahierende Zähloperation zu stoppen, wenn der logische Pegel der Rücksprungvergleichsschaltung 5003n sich zu "H" ändert. Ob die Gatterschaltung freizugeben ist oder nicht, wird durch das NAND-Ausgabeelement 46a basierend auf dem Inhalt der Eingabeschaltungseinheit 40 bestimmt. Das UND-Element 45a ist eine Gatterschaltung, die ein durch die Eingabeschaltungseinheit 40 erhaltenes Abwärtszählrichtungs-Befehlssignal zu einem Abwärtszählbefehlsanschluss DN des Vorwärts/Rückwärts-Zählers 2000n zuführt.
  • Ein NAND-Ausgabeelement 46b ist eine Gatterschaltung, die auf ein UND-Element 45b wirkt, um eine additive Zähloperation zu stoppen, wenn der logische Pegel der ersten Vergleichsschaltung 5001n sich zu "H" ändert. Ob die Gatterschaltung freizugeben ist oder nicht, wird durch das NAND-Ausgabeelement 46b basierend auf dem Inhalt der Eingabeschaltungseinheit 40 bestimmt. Das UND-Element 45b ist eine Gatterschaltung, die ein durch die Eingabeschaltungseinheit 40 erhaltenes Aufwärtszählrichtungs-Befehlssignal zu einem Aufwärtszählbefehlsanschluss UP des Vorwärts/Rückwärts-Zählers 2000n zuführt.
  • 5 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit 1000n darstellt, die als variable Filterschaltung 1010n gebildet ist, während 6 ein Blockdiagramm ist, das die Logikschaltungseinheit 1000n darstellt, die als Pulsdichte-Messschaltung 1020n gebildet ist. In 5 enthält die variable Filterschaltung 1010n (n = 0 bis 7) den Vorwärts/Rückwärts-Zähler 2000n, der ein von der gemeinsamen Taktsignalschaltung 9001 erzeugtes Taktsignal als Zähleingangssignal verwendet. Einstelldaten 3010n entsprechend einer Filterkonstanten werden von dem Mikroprozessor 111 gesendet, um in dem ersten Einstellregister 3000n des Vorwärts/Rückwärts-Zählers 2000n gespeichert zu werden. Beispielsweise wird eine der Eingaben von dem Ein/Aus-Schaltsensor 102x der speziellen Einheit 130 zu einem Kanalanschluss 11n des ersten Ports 11 mit der Kanalzahl n über die Eingabe-Schnittstellenschaltung 139X eingegeben. Wenn der Ein/Aus-Schaltsensor 102x auf EIN geschaltet wird, um den logischen Pegel des Kanalanschlusses 11n auf "H" zu ändern, wird ein Aufwärtszählrichtungsbefehl zu dem Aufwärtszählbefehlsanschluss UP über das UND-Element 45bb zugeführt. Als Ergebnis zählt der variable Zähler 2000n die von der gemeinsamen Taktsignalschaltung 90001 erzeugten Taktsignale aufwärts, um den aktuellen Wert des Registers für einen aktuellen Wert 4001n nach und nach zu erhöhen.
  • Wenn der aktuelle Zählerwert den Einstellwert einer oberen Grenze entsprechend der in dem ersten Einstellregister 3001n im Voraus gespeicherten Filterkonstanten erreicht, erzeugt der Vorwärts/Rückwärts-Zähler 2000n die Aufwärtszählausgabe Q. Die Aufwärtszählausgabe Q dient als Mitteilungssignal 7010n, um zu veranlassen, dass der Mikroprozessor 111 ein vorbestimmtes Hilfsrelais in dem Vorrichtungsspeicher 114a aktiviert. Andererseits ändert sich auf eine Erzeugung der Aufwärtszählausgabe Q hin der logische Pegel des Aufwärtszählbefehlsanschlusses UP über das NAND-Ausgabeelement 46b und das UND-Element 45b zu "L". Als Ergebnis wird verhindert, dass der Vorwärts/Rückwärts-Zähler 2000n ein additives Zählen durchführt, das den Einstellwert einer oberen Grenze übersteigt. Wenn der Ein/Aus-Schaltsensor 102x auf AUS geschaltet wird, um den logischen Pegel des Kanalanschlusses 11n "L" zu ändern, wird ein Abwärtszählrichtungsbefehl zu dem Abwärtszählbefehlsanschluss DN über ein NAND-Element 51 und das UND-Element 45a zugeführt. Als Ergebnis zählt der Vorwärts/Rückwärts-Zähler 2000n die von der gemeinsamen Taktsignalschaltung 9001 erzeugten Taktsignale abwärts, um den aktuellen Zählerwert des Registers für einen aktuellen Wert 4001n nach und nach zu erniedrigen. Wenn der aktuelle Zählerwert derart erniedrigt ist, dass er Null ist, wird die Rücksprungausgabe Q erzeugt, um die Aufwärtszählausgabe Q rückzusetzen. Die Rücksprungausgabe Q dient als das Mitteilungssignal 7010n, um zu veranlassen, dass der Mikroprozessor 111 das Hilfsrelais deaktiviert. Andererseits ändert auf eine Erzeugung der Rücksprungausgabe Q sich der logische Pegel des Abwärtszählbefehlsanschlusses DN über das NAND-Ausgabeelement 46a und das UND-Element 45a zu "L", um zu verhindern, dass ein subtrahierendes Zählen unter Null durchgeführt wird.
  • Daher wird dann, wenn der Zustand des Ein/Aus-Schaltsensors 102 sich von EIN zu AUS oder von AUS zu EIN ändert, das Mitteilungssignal 7010n mit einer Ansprechverzögerungszeit von N × τ = N μsek geändert, was einem Produkt, aus dem Taktzyklus τ = 1 μsek der gemeinsamen Taktsignalschaltung 9001 und der im ersten Einstellregister 3001n gespeicherten Filterkonstanten N entspricht. Wenn ein Kontaktgrellen im Ein/Aus-Schaltsensor 102x erzeugt wird, um eine unregelmäßige intermittierende Operation zu veranlassen, führt der Vorwärts/Rückwärts-Zähler 2000n eine Aufwärts/Abwärts-Zähloperation durch. Wenn der Zählerwert den Einstellwert einer oberen Grenze als Ergebnis der Addition erreicht, wird die EIN-Operation bestimmt. Wenn andererseits der Zählerwert als Ergebnis der Subtraktion Null erreicht, wird die AUS-Operation bestimmt.
  • Andererseits werden mit einer Eingabeschaltung für allgemeine Zwecke 1091 alle zu dem ersten Port 11 eingegebenen Signale zu einem Eingangsbildspeicher entsprechend einem spezifischen Bereich in dem Vorrichtungsspeicher 114a über einen Datenselektor 134 transferiert. Jedoch werden die Signale zu dem Bildspeicher bzw. Abbildungsspeicher in einem Eingabeprozess 911, der nachfolgend unter Bezugnahme auf 19 beschrieben wird, gesendet, und daher wird das Senden der Signale durch einen Berechnungszyklus der programmierbaren Steuerung 100A für eine Aktualisierung bzw. ein Updaten beeinflusst. Daher kann dann, wenn ein Hochgeschwindigkeits-Pulssignal zu dem Kanalanschluss 11a beispielsweise eingegeben wird, die Eingabeschaltung für allgemeine Zwecke 1091 seiner hohen Geschwindigkeit nicht folgen und verwendet das Hochgeschwindigkeits-Pulssignal lediglich als Information für eine Abtastungsprüfung.
  • In 6 wird im Vorwärts/Rückwärts-Zähler 2000n, der die Pulsdichte-Messschaltung 1020n (n = 0 bis 7) bildet, ein Eingangssignal zum Kanalanschluss 11n zu dem Zähleingangsanschluss IN zugeführt. Gleichzeitig ist der Vorwärts/Rückwärts-Zähler 2000n gebildet, um die EIN/AUS-Operationen des Eingangssignals aufwärts zu zählen. Ein oberer Grenzwert, der durch einen numerischen 32-Bit-Wert dargestellt ist, ist als die Einstelldaten 3020n im ersten Einstellregister 3001n gespeichert. Die gemeinsame Triggerschaltung 9002 erzeugt ein Triggersignal PO, das ein kurzer Puls von 1 μsek ist, und eine Aufwärtszählausgabe Q0 für jeden konstanten Zyklus T0 = 10 msek. Der Puls des Triggersignals PO wird direkt vor der Aufwärtszählausgabe Q0 erzeugt, um den aktuellen Zählerwert des Registers für einen aktuellen Wert 40001n zu einem Spitzenhalteregister 4002n zu transferieren, während die Aufwärtszählausgabe Q0 ein Rücksetzsignal zu dem Rücksetzanschluss RST des Vorwärts/Rückwärts-Zählers 2000n zuführt. Als Ergebnis wird der Inhalt des Registers für einen aktuellen Wert 4001n auf Null rückgesetzt. Daher wird der maximale Zählerwert des Vorwärts/Rückwärts-Zählers 2000n direkt bevor der Vorwärts/Rückwärts-Zähler 2000n rückgesetzt wird, für jeden konstanten Zyklus T0 für jedes Mal im Spitzenhalteregister 4002n gespeichert. Der maximale Zählerwert stellt eine Dichte des Pulses (das heißt eine Frequenz des Pulses) des Ein/Aus-Schaltsensors 102x dar, der zu dem Kanalanschluss 11n zugeführt wird, um als Berechnungsdaten 4020n zu dem Mikroprozessor 111 gesendet zu werden.
  • Als Nächstes wird eine Beschreibung in Bezug auf die 7 und 8 durchgeführt werden. 7 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit 1000n darstellt, die als Pulsbreitenmessschaltung 1022n gebildet ist, während 8 ein Blockdiagramm ist, das die als eine Flankenerfassungsschaltung 1031n gebildete Logikschaltungseinheit 1000n darstellt. In 7 wird im variablen Zähler 2000n, der die Pulsbreiten-Messschaltung 1022n (n = 0 bis 7) bildet, ein Eingangssignal zu dem Kanalanschluss 11n zu dem Aufwärtszählbefehlsanschluss UP über ein Gatterelement 61 eingegeben, während ein von der gemeinsamen Taktsignalschaltung 9001 erzeugtes Taktsignal zu dem Zähleingangsanschluss IN zugeführt wird. Ein oberer Grenzwert, der durch einen numerischen 32-Bit-Wert dargestellt ist, ist als die Einstelldaten 3022n im ersten Einstellregister 3001n gespeichert, während ein Einstellwert "1" als die Einstelldaten 3022n im zweiten Einstellregister 3002n gespeichert wird.
  • Wenn der logische Pegel des Kanalanschlusses 11n sich zu "H" ändert, beginnt der Vorwärts/Rückwärts-Zähler 2000n ein Aufwärtszählen. Dann, wenn der logische Pegel des Kanalanschlusses 11n sich zu "L" ändert, stoppt der Vorwärts/Rückwärts-Zähler 2000n ein Zählen. Gleichzeitig wird ein Transferbefehl zu dem Spitzenhalteregister 4002n durch das Gatterelement 62 erzeugt, um den maximalen Zählerwert des Registers für einen aktuellen Wert 4001n zu dem Spitzenhalteregister 4002n zu transferieren. Gleichzeitig mit dem Transfer zu dem Spitzenhalteregister 4002n wird eine Speicherschaltung 63 eingestellt, um ein Messbeendigungssignal als Mitteilungssignal 7022n zum Mikroprozessor 111 zu senden. Wenn die Speicherschaltung 63 einmal eingestellt ist, wird die Aufwärtszähloperation durch das Gatterelement 61 gestoppt, bis die Speicherschaltung 63 durch ein Befehlssignal 6022n rückgesetzt wird. Das Gatterelement 62 verhindert eine Speicheroperation der Speicherschaltung 63, bis die Aufwärtszählvergleichs-Übereinstimmungsausgabe P betrieben wird.
  • Als Ergebnis ist der Inhalt N des Spitzenhalteregisters 4002n proportional zu einer gemessenen Zeitperiode, während welcher der logische Pegel des Kanalanschlusses 11n bei "H" gehalten wird. Wenn beispielsweise ein Taktsignalzylus τ 1 μsek ist, ist eine erfasste Zeitlänge N μsek. Der Inhalt des Spitzenhalteregisters 4002n wird als Berechnungsdaten 4022n zum Mikroprozessor 111 gesendet. In Reaktion auf das Befehlssignal 6022n setzt der Mikroprozessor 111 die Speicherschaltung 63 über den Befehls-Latch-Speicher 6000n zurück, um die Messung der Pulsbreite erneut zu starten. Es ist auch möglich, ein Befehlssignal zum Umschalten zwischen der Messung einer EIN-Zeitbreite des Eingangssignals und der Messung einer AUS-Zeitbreite des Eingangssignals durch eine Pulsbreitenmessanweisung hinzuzufügen. Die Pulsdichte-Messschaltung 1020n, wie sie in 6 dargestellt ist, ist im folgenden Fall effektiv. Ein Codierer, der durch beispielsweise einen Drehkörper angetrieben wird, erzeugt einen Drehpuls hoher Geschwindigkeit. Eine Dichte des erzeugten Pulses wird gemessen, um eine Drehgeschwindigkeit bzw. Drehzahl des Drehkörpers zu erfassen. In dem Fall eines Drehpulses niedriger Geschwindigkeit kann jedoch eine Drehgeschwindigkeit nicht erfasst werden, bis eine Messzeit auf ausreichend lang eingestellt ist. Um mit diesem Problem fertig zu werden, misst die Pulsbreitenmessschaltung 1022n eine Zeitbreite eines Pulses niedriger Geschwindigkeit, welche dann reziprok durch den Mikroprozessor 111 berechnet wird. Als Ergebnis kann die Pulsbreiten-Messschaltung 1022n eine Drehgeschwindigkeit mit hoher Genauigkeit erfassen.
  • In 8 wird dann, wenn der Vorwärts/Rückwärts-Zähler 2000n die Flankenerfassungsschaltung 1031n (n = 0 bis 7) bildet, ein Eingangssignal zu dem Kanalanschluss 11n zu dem Zähleingangsanschluss IN des Vorwärts/Rückwärts-Zählers 2000n über ein Exklusiv-ODER-Element 67 eingegeben. Die andere Eingabe zu dem Exklusiv-ODER-Element 67 ist die Aufwärtszählvergleichs-Übereinstimmungsausgabe P. Beispielsweise wird ein konstanter Wert "2" als Einstelldaten 3031n zu dem ersten Einstellregister 3001n geschrieben, während ein konstanter Wert "1" als Einstelldaten 3031n zu dem zweiten Einstellregister 3002n geschrieben wird. Die Aufwärtszählvergleichs-Übereinstimmungsausgabe P wird mit dem Abwärtszählbefehlsanschluss DN und auch mit dem Aufwärtszählbefehlsanschluss UP über ein NICHT-Element 66 verbunden. In Reaktion auf Befehlssignal 6031n setzt der Mikroprozessor 111 das Register für einen aktuellen Wert 4001 des Vorwärts/Rückwärts-Zählers 2000n, die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und die Abwärtszählvergleichs-Übereinstimmungsausgabe P durch den Befehls-Latch-Speicher 6000n zurück. Die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und Abwärtszählvergleichs-Übereinstimmungsausgabe P werden als Mitteilungssignal 7031n zum Mikroprozessor 111 gesendet.
  • Daher ändert sich dann, wenn der logische Pegel des Kanalanschlusses 11n sich von "L" zu "H" in dem Zustand ändert, in welchem der Inhalt des Registers für einen aktuellen Wert 4001n Null ist und sowohl die Aufwärtszählvergleichs-Übereinstimmungsausgabe P als auch die Abwärtszählvergleichs-Übereinstimmungsausgabe P rückgesetzt sind, eine Ausgabelogik des Exklusiv-ODER-Elements 67 zu "H", um zu veranlassen, dass der Vorwärts/Rückwärts-Zähler 2000n den Zählerwert um 1 erhöh. Als Ergebnis ändert sich der logische Pegel der Aufwärtszählvergleichs-Übereinstimmungsausgabe P zu "H", was dem Mikroprozessor 111 als eine Anstiegsflankendetektionsausgabe bzw. -erfassungsausgabe mitgeteilt wird. Gleichzeitig wird der Mode des Vorwärts/Rückwärts-Zählers 2000n von dem Aufwärtszählmode zu dem Abwärtszählmode umgeschaltet, um den logischen Pegel des Zähleingangsanschlusses IN zu "L" zu ändern.
  • Darauffolgend ändert sich dann, wenn der logische Pegel des Kanalanschlusses 11n sich von "H" zu "L" ändert, eine Ausgangslogik des Exklusiv-ODER-Elements 67 zu "H", um zu veranlassen, dass der Vorwärts/Rückwärts-Zähler 2000n den Zählerwert um 1 erniedrigt. Als Ergebnis ändert sich der logische Pegel der Abwärtszählvergleichs-Übereinstimmungsausgabe P zu "H", was dem Mikroprozessor 111 als eine Abfallflankenerfassungsausgabe mitgeteilt wird.
  • Als Nächstes ist 9 ein Blockdiagramm, das die in 4 gezeigte Logikschaltungseinheit 1000n darstellt, welche als eine 1-Phasen-1-Eingaben-Hochgeschwindigkeits-Zählerschaltung 1030n verwendet wird, während 10 ein Blockdiagramm ist, das die Logikschaltungseinheit 1000n darstellt, die als eine 1-Phasen-2-Eingaben-Hochgeschwindigkeits-Zählerschaltung 1040n verwendet wird. Es gibt auch einen 2-Phasen-Eingaben-Hochgeschwindigkeits-Zähler und Hochgeschwindigkeitszähler, die eine Einzelflankenauswertung, eine Doppelflankenauswertung und eine Vierfachflankenauswertung verwenden. Jeder der Hochgeschwindigkeitszähler, wie sie oben angegeben sind, hat eine Schaltungskonfiguration (die nicht gezeigt ist) gemäß dem Inhalt des Parameterspeichers.
  • In 9 enthält die 1-Phasen-1-Eingangs-Hochgeschwindigkeits-Zählerschaltung 1030n (n = 0 bis 7) zum Zählen der Anzahl von Operationen des EIN/AUS-Schaltsensors 102x, die zu dem Kanalanschluss 11n eingegeben werden, den Vorwärts/Rückwärts-Zähler 2000n. Ein Einstellwert für eine obere Grenze und ein mittlerer Einstellwert werden in dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n des Vorwärts/Rückwärts-Zählers 2000n durch Verwenden von Einstelldaten 3030n vom Mikroprozessor 111 gespeichert. Eine Zählrichtung des Vorwärts/Rückwärts-Zählers 2000n wird als Befehlssignal 6030n vom Mikroprozessor 111 zum Befehls-Latch-Speicher 6000n gesendet, um darin gespeichert zu werden. Wenn der logische Pegel des Befehlssignals "H" ist, führt der Vorwärts/Rückwärts-Zähler 2000n eine Aufwärtszähloperation durch. Wenn andererseits der logische Pegel des Befehlssignals "L" ist, führt der Vorwärts/Rückwärts-Zähler 2000n eine Abwärtszähloperation durch die Funktion eines NICHT-Elements 71 durch.
  • Wenn der aktuelle Zählerwert des Vorwärts/Rückwärts-Zählers 2000n den Einstellwert für eine obere Grenze erreicht, wird die Aufwärtszählausgabe Q erzeugt, um durch Verwenden eines Mitteilungssignals 7030n zum Mikroprozessor 111 gesendet zu werden. In dem Fall, in welchem das zweite Einstellregister 3002n des Vorwärts/Rückwärts-Zählers 2000n im Einsatz ist und eine Hochgeschwindigkeits-Vergleichsanweisung HCMP im Programmspeicher 113A ausgeführt wird, wird die Aufwärtszählvergleichs-Übereinstimmungsausgabe P betrieben, um zu dem entsprechenden Kanalanschluss 12n ausgegeben zu werden, und wird durch Verwenden des Mitteilungssignals 7030n zum Mikroprozessor 111 gesendet, wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001n sich erhöht, um durch den mittleren Einstellwert zu verlaufen, der in dem zweiten Einstellregister 3002n gespeichert ist.
  • Der entsprechende Kanalanschluss 12n ist ein Kanalanschluss des anderen Ports (in diesem Fall des zweiten Ports), der dieselbe Kanalzahl wie die Zähleingangskanalzahl n hat. Beispielsweise ist ein Ausgang entsprechend einem Eingang X014 der speziellen Einheit 130 Y014. Daher kann nur dann, wenn das erste Port 11 ein logisches Eingangsport hoher Geschwindigkeit ist und das zweite Port 12 ein Logikausgabeport hoher Geschwindigkeit oder niedriger Geschwindigkeit ist, die Hochgeschwindigkeits-Vergleichsanweisung HCMP verwendet werden. Der Ausgang vom anderen Port, der durch die Hochgeschwindigkeits-Vergleichsanweisung HCMP besetzt ist, kann nicht als die anderen Ausgänge hoher Geschwindigkeit verwendet werden.
  • Der Mikroprozessor 111 kann über die Vergleichsübereinstimmung durch das Benachrichtigungssignal bzw. Mitteilungssignal 7030n benachrichtigt werden. In diesem Fall kann die Vergleichsübereinstimmung erkannt werden, wenn die Hochgeschwindigkeits-Vergleichsanweisung HCMP ausgeführt wird. Andererseits kann eine Aufwärtszähl-Vergleichsübereinstimmungsausgabe P von dem Vorwärts/Rückwärts-Zähler 2000n extern als die Ausgabe Y014 über den entsprechenden Kanalanschluss 12n ausgegeben werden. Daher kann die Benachrichtigung über die Vergleichsübereinstimmung sofort zu dem Äußeren gegeben werden. Der Inhalt des Registers für einen aktuellen Wert 4001n des Vorwärts/Rückwärts-Zählers 2000n, die Aufwärtszählausgabe Q, die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und die Abwärtszählvergleichs-Übereinstimmungsausgabe P können durch den Befehls-Latch-Speicher 6000n rückgesetzt werden, der das Befehlssignal 6030n vom Mikroprozessor 111 empfangen und gespeichert hat. Als beispielhafte Anwendung der Hochgeschwindigkeits-Vergleichsanweisung HCMP wird beispielsweise angenommen, dass eine abgewickelte Größe eines länglichen Materials, das um Aufwickelgestell gewickelt wird, durch einen von dem Codierer erzeugten Puls gemessen wird, um das längliche Material in vorbestimmten Intervallen zu stempeln. In diesem Fall wird ein konstantes Zuführgrößenausmaß durch die Aufwärtszählausgabe Q von dem Vorwärts/Rückwärts-Zähler sequentiell aktualisiert und gemessen, um ein Stempeln mit der Aufwärtszählvergleichs-Übereinstimmungsausgabe P anzutreiben. Als Ergebnis kann das längliche Material bei einer vorbestimmten Position genau gestempelt werden.
  • In 10 enthält die 1-Phasen-2-Eingangs-Hochgeschwindigkeits-Zählerschaltung 1040m (m = 0, 2, 4 oder 6) den Vorwärts/Rückwärts-Zähler 2000m. Der Vorwärts/Rückwärts-Zähler 2000m zählt die Anzahl von Operationen eines Vorwärtspulses FP aufwärts, der zu dem Kanalanschluss 11m eingegeben ist, oder zählt die Anzahl von Operationen eines umgekehrten Pulses RP abwärts, der zu einem benachbarten Kanalanschluss 11m+1 eingegeben ist. Daher wird der Vorwärtspuls FP zu dem Aufwärtszähl-Befehlsanschluss UP eingegeben, während der Rückwärtspuls RP zu dem Abwärtszähl-Befehlsanschluss DN eingegeben wird. Der Vorwärtspuls FP und der Rückwärtspuls RP sind mit dem Zähl-Eingangsanschluss IN über ein ODER-Element 72 verbunden.
  • Ein Einstellwert für eine obere Grenze und ein mittlerer Einstellwert werden in dem ersten Einstellregister 3001m und dem zweiten Einstellregister 3002m des Vorwärts/Rückwärts-Zählers 2000m durch Verwenden von Einstelldaten 3040m vom Mikroprozessor 111 gespeichert. Die Aufwärtszählausgabe Q des Vorwärts/Rückwärts-Zählers 2000m, ein Benachrichtigungssignal 7040m für die Aufwärtszählvergleichs-Übereinstimmungsausgabe P oder die Aufwärtszählvergleichs-Übereinstimmungsausgabe für den entsprechenden Kanalanschluss 12m oder ein Rücksetzprozess des Vorwärts/Rückwärts-Zählers 2000m durch ein Befehlssignal 6040 werden auf dieselbe Weise wie in dem Fall der oben unter Bezugnahme auf 9 beschriebenen 1- Phasen-1-Eingang-Hochgeschwindigkeits-Zählerschaltung 1030n gehandhabt.
  • Als die andere Hochgeschwindigkeits-Zählerschaltung (nicht dargestellt) existiert ein 2-Phasen-2-Eingang-Hochgeschwindigkeits-Zähler. In diesem Fall wird eine Zählrichtung (Aufwärtszählen oder Abwärtszählen) basierend auf einer Phasendifferenz zwischen einem A-Phasen-Eingangspuls und einem B-Phasen-Eingangspuls bestimmt. Es existieren auch diejenigen, die eine Einzelflankenauswertung zum Zählen von nur der Anstiegsflanke eines Pulses bei irgendeiner der A-Phase und der B-Phase, eine Doppelflankenauswertung zum Zählen der Anstiegsflanke und der Abfallflanke eines Pulses in irgendeiner der A-Phase und der B-Phase und eine Vierflankenauswertung zum Zählen der Anstiegsflanke und der Abfallflanke eines Pulses in sowohl der A-Phase als auch der B-Phase verwenden.
  • Als Nächstes wird auf die 11 und 12 Bezug genommen werden. 11 ist ein Blockdiagramm, das die in 4 gezeigte Logikschaltungseinheit 1000n darstellt, die als eine PWM-Ausgangsschaltung 1050n verwendet wird, während 12 ein Blockdiagramm ist, das die in 4 gezeigte Logikschaltungseinheit 1000n darstellt, die als erste Pulsausgangsschaltung 1060m verwendet wird. In 11 zählt der in der PWM-Ausgangsschaltung 1050n (n = 0 bis 7) enthaltene Vorwärts/Rückwärts-Zähler 2000n ein von der gemeinsamen Taktsignalschaltung 9001 erzeugtes Taktsignal aufwärts. Das erste Einstellregister 3001n speichert einen Sollzyklus T eines Pulsbreitenmodulationssignals 80, während das zweite Einstellregister 3002n eine Soll-AUS-Zeitbreite des Pulsbreitenmodulationssignals 80 speichert. Der Mikroprozessor 111 sendet Einstellwerte wie diejenigen, die oben beschrieben sind, unter Verwendung von Einstelldaten 3050n zu dem Standby-Pufferregister 4004n. Der Inhalt des Standby-Pufferregisters 4004n wird zu dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n am Ende jedes Zyklus des Pulsbreitenmodulationssignals 80 transferiert.
  • Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001n sich erhöht, um den Einstellwert entsprechend der im zweiten Einstellregister 3002n gespeicherten AUS-Zeitbreite zu erreichen, arbeitet die Aufwärtszählvergleichs-Übereinstimmungsausgabe P, um von dem Kanalanschluss 12n über die Ausgangsschnittstellenschaltung 149Y und den Ausgangsanschluss 140Y zu dem entsprechenden Kanal der elektrischen Last 103y zugeführt zu werden. Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001 sich weiter erhöht, um den Einstellwert entsprechend dem im ersten Einstellregister 3001n gespeicherten Zyklus zu erreichen, arbeitet die Aufwärtszählausgabe Q. Als Ergebnis wird der Vorwärts/Rückwärts-Zähler 2000n rückgesetzt. Dann kehrt der logische Pegel der Vergleichsübereinstimmungsausgabe P zu "L" zurück, um die Ausgabe vom Kanalanschluss 12n auf AUS zu schalten, um den Inhalt des Registers für einen aktuellen Wert 4001n auf Null zu schalten. Gleichzeitig werden die Einstelldaten im Standby-Pufferregister 4001n zu dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n transferiert.
  • Daher ist der Zyklus T des Pulsbreitenmodulationssignals 80 gleich dem Produkt aus einem Zyklus τ des Taktsignals und einem im ersten Einstellregister 3001n gespeicherten Einstellwert N1: τ × N1. Gleichermaßen ist die AUS-Zeitbreite des Pulsbreitenmodulationssignals 80 gleich dem Produkt aus dem Zyklus τ des Taktsignals und einem im zweiten Einstellregister 3002n gespeicherten Einstellwert N2: τ × N2. Daher wird eine EIN-Zeitbreite des Pulsbreitenmodulationssignals 80, das vom Kanalanschluss 12n ausgegeben ist, berechnet durch: τ × (N1 – N2). Wenn eine invertierte Logikausgabe der Vergleichsübereinstimmungsausgabe P zu dem Kanalanschluss 12n zugeführt wird, ist die Definition von EIN/AUS invertiert. In diesem Fall entspricht daher τ × N2 der EIN-Zeitbreite. Demgemäß entspricht in dem Fall einer logischen Inversion der im zweiten Einstellregister 3002n gespeicherte Einstellwert N2 der EIN-Zeitbreite.
  • Andererseits wird in der Ausgangsschaltung für allgemeine Zwecke 1092 ein EIN/AUS-Zustand eines Ausgangsbildspeichers entsprechend einem spezifischen Bereich im Vorrichtungsspeicher 114a zu dem zweiten Port 12 durch den Ausgangs-Latch-Speicher 145 gesendet. Die Ausgangsschaltung für allgemeine Zwecke 1092 wird für den Kanalanschluss 12n freigegeben, der nicht für die spezielle Anweisung verwendet wird. Beispielsweise dann, wenn der Kanalanschluss 12n als ein Hochgeschwindigkeits-Pulsausgang besetzt wird, der nachfolgend beschrieben ist, kann die Ausgangsschaltung für allgemeine Zwecke nicht für eine Ausgabe für allgemeine Zwecke verwendet werden. Daher ist es erforderlich, dass der Ausgangsbildspeicher des Kanals auf AUS geschaltet wird.
  • In 12 ist die erste Pulsausgangsschaltung 1060m (m = 0, 2, 4 oder 6) eine Pulserzeugungsschaltung, die für einen Betrieb mit zwei Geschwindigkeiten mit einem Schrittmotor geeignet ist, der einen Startbetrieb niedriger Geschwindigkeit, einen Betrieb hoher Geschwindigkeit, einen Betrieb niedriger Geschwindigkeit vor einem Stoppen und einen Stoppbetrieb enthält. Die erste Pulsausgangsschaltung erzeugt ein erstes vorbestimmtes Ausmaß von Pulsen in einem Zyklus niedriger Geschwindigkeit, ein zweites vorbestimmtes Ausmaß von Pulsen in einem Zyklus hoher Geschwindigkeit, das erste vorbestimmte Ausmaß von Pulsen in dem Zyklus niedriger Geschwindigkeit noch einmal und stoppt dann die Erzeugung von Pulsen. Die detaillierte Beschreibung der Pulserzeugung ist wie folgt. Die erste Pulsausgangsschaltung 1060m enthält ein Paar Vorwärts/Rückwärts-Zähler 2000m und 2002m+1. Der erste Vorwärts/Rückwärts-Zähler 2000m zählt das von der gemeinsamen Taktsignalschaltung 9001 erzeugte Taktsignal aufwärts. Das erste Einstellregister 3001m speichert einen numerischen Wert entsprechend einer Hälfte des Sollzyklus T des Ausgabepulses niedriger Geschwindigkeit, während das zweite Einstellregister 3002m einen numerischen Wert entsprechend einer Hälfte des Sollzyklus T des Ausgabepulses hoher Geschwindigkeit speichert.
  • Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001m des ersteren Vorwärts/Rückwärts-Zählers 2000m sich erhöht, um irgendeinen des Einstellwerts N1 im ersten Einstellregister 30001m und des Einstellwerts N2 im zweiten Einstellregister 30002m (N2 ≤ N1) zu erreichen, wird die Aufwärtszählausgabe Q oder die Aufwärtszählvergleichs-Übereinstimmungsausgabe P erzeugt, um den Vorwärts/Rückwärts-Zähler 2000m rückzusetzen. Gleichzeitig wird eine Ausgabe von der alternativen Ausgangsschaltung 84 auf eine alternative Weise invertiert. Die Auswahl des Einstellwerts, um verwendet zu werden, aus demjenigen, die in dem ersten und dem zweiten Einstellregister gespeichert sind wird, durch eine Logikoperation einer Umschaltschaltung 81 bestimmt, die nachfolgend beschrieben wird. Als Ergebnis des Rücksetzens des Vorwärts/Rückwärts-Zählers 2000m, um den Wert des Registers für einen aktuellen Wert 4001m auf Null zurückzubringen, werden die Aufwärtszählausgabe Q und die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückgesetzt, um das Zählen des Taktsignals erneut zu beginnen.
  • Als Ergebnis ist unter der Annahme, dass der Zyklus τ des von der gemeinsamen Taktsignalschaltung 9001 erzeugten Taktsignals 1 μsek ist, ein Zyklus ein Ausgangspuls von der alternativen Ausgangsschaltung 84 2 × N1 oder 2 × N2 (μsek). Der Ausgangsmode der Ausgabe-Auswahlschaltung 49 ändert sich in Abhängigkeit von dem Inhalt eines Parameterspeichers 8000m und demjenigen eines Befehls-Latch-Speichers 6000m. Beispielsweise erzeugt die Ausgabe-Auswahlschaltung 49 eine Vorwärts/Rückwärts-Pulsausgabe FRP für den Kanalanschluss 12m und eine Drehrichtungs-Befehlsausgabe DIR für den benachbarten Kanalanschluss 12m+1 oder erzeugt eine Vorwärtspulsausgabe FP für den Kanalanschluss 12m und eine Rückwärtspulsausgabe RP für den benachbarten Kanalanschluss 12m+1.
  • Der letztere Vorwärts/Rückwärts-Zähler 2000m+1 zählt das Ausgangssignal von der alternativen Ausgangsschaltung 84 aufwärts und abwärts. Ein erstes Einstellregister 3001m+1 des Vorwärts/Rückwärts-Zählers 2000m+1 speichert einen halben Wert einer Soll-Gesamtanzahl von Pulsen, um erzeugt zu werden. Basierend auf der Anzahl von zu erzeugenden Pulsen wird beispielsweise ein gesamtes Ausmaß an Versatz eines Schrittmotors bestimmt. Ein zweites Einstellregister 30002m+1 des Vorwärts/Rückwärts-Zählers 2000m+1 speichert eine Sollzahl von zu erzeugenden Pulsen niedriger Geschwindigkeit. Basierend auf der Anzahl von zu erzeugenden Pulsen werden die Ausmaße eines durch einen Startbetrieb niedriger Geschwindigkeit erzeugten Versatzes und durch einen Betrieb niedriger Geschwindigkeit vor einem Stoppen des Schrittmotors bestimmt.
  • Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001m+1 des Vorwärts/Rückwärts-Zählers 2000m+1 sich erhöht, um einen Einstellwert M2 im zweiten Einstellregister 3002m+1 zu erreichen, wird die Aufwärtszählvergleichs-Übereinstimmungsausgabe P erzeugt, um zu veranlassen, dass die Umschaltschaltung 81 einen Einstellzyklus des ersteren Vorwärts/Rückwärts-Zählers 2000m von einem Zyklus niedriger Geschwindigkeit zu einem Zyklus hoher Geschwindigkeit umschaltet und einstellt. Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001m+1 des Vorwärts/Rückwärts-Zählers 2000m+1 sich weiter erhöht, um einen Einstellwert M1 (M2 ≤ M1) im ersten Einstellregister 3001m+1 zu erreichen, wird die Aufwärtszählausgabe Q erzeugt, um zu veranlassen, dass der Vorwärts/Rückwärts-Zähler 2000m+1 einen Subtraktionsbetrieb mit NICHT-Elementen 82 und 83 beginnt. Dann wird auf einen Betrieb der Abwärtszählvergleichs-Übereinstimmungsausgabe P hin veranlasst, dass die Umschaltschaltung 81 den Einstellzyklus des ersteren Vorwärts/Rückwärts-Zählers 2000m von dem Zyklus hoher Geschwindigkeit zu dem Zyklus niedriger Geschwindigkeit wieder umschaltet und einstellt.
  • Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001m+1 des Vorwärts/Rückwärts-Zählers 2000m+1 sich weiter erniedrigt, um wieder Null zu sein, um zu veranlassen, dass die Rücksprungausgabe Q arbeitet, stoppt jeder der Vorwärts/Rückwärts-Zähler den Zählbetrieb. Dann benachrichtigt ein Benachrichtigungssignal 7060m den Mikroprozessor 111 über die Beendigung einer Pulserzeugung. Als Ergebnis ist eine gesamte Anzahl von durch die erste Pulsausgangsschaltung 1060m erzeugten Pulsen gleich der Summe aus der Anzahl von Pulsen niedriger Geschwindigkeit M2, die erzeugt sind, bis die Aufwärtszählvergleichs-Übereinstimmungsausgabe P des letzteren Vorwärts/Rückwärts-Zählers 2000m+1 ein Arbeiten beginnt, der Anzahl von Pulsen hoher Geschwindigkeit (M1 – M2), die bis zu der Erzeugung der Aufwärtszählausgabe Q erzeugt sind, der Anzahl von Pulsen hoher Geschwindigkeit (M1 – M2), die erzeugt sind, bis die Abwärtszählvergleichs-Übereinstimmungsausgabe P ein Arbeiten beginnt, und zwar durch die Subtraktionsoperation, und der Anzahl von Pulsen niedriger Geschwindigkeit M2, die erzeugt sind, bis die Rücksprungausgabe Q ein Arbeiten beginnt. Daher ist die gesamte Anzahl von erzeugten Pulsen: M2 + (M1 – M2) + (M1 – M2) + M2 = 2 × M1. Wie es oben beschrieben ist, werden vor und nach der Erzeugung von Pulsen hoher Geschwindigkeit M2 Pulse niedriger Geschwindigkeit jeweils erzeugt.
  • Wenn es erwünscht ist, dass eine ungerade gesamte Anzahl von Pulsen erzeugt wird, wird "+1" oder "–1" in dem Register für einen aktuellen Wert 4001m+1 als Anfangswert gespeichert. Die übrigen geraden Anzahlen werden den Einstellwerten M1 und M2 zugeordnet. Während die erste Pulsausgangsschaltung 1060m die Zähloperation nicht durchführt, sendet der Mikroprozessor 111 den Einstellwert für jedes des ersten und des zweiten Einstellregisters unter Verwendung von Einstelldaten 3060m. Gleichzeitig sendet der Mikroprozessor 111 ein Drehrichtungs-Befehlssignal unter Verwendung eines Befehlssignals 6060m zu dem Befehls-Latch-Speicher 6000m. Der aktuelle Wert der Anzahl erzeugter Pulse, der durch das Register für aktuelle Werte 4000m+1 angezeigt ist, wird unter Verwendung von Berechnungsdaten 4060m zum Mikroprozessor 111 gesendet.
  • Der Mikroprozessor 111 sendet einen Vorwärtsdrehungsbegrenzungs-Stoppbefehl, einen Rückwärtsdrehungsbegrenzungs-Stoppbefehl und einen Befehl für einen erzwungenen Stopp durch Verwenden des Befehlssignals 6060m zu dem Befehls-Latch-Speicher 6000m, um die Erzeugung von Pulsen zu stoppen. Die erste Pulsausgangsschaltung 1060m gibt einen Drehantriebsbefehl zum Schrittmotor aus. Einige Treiber zum Antreiben des Schrittmotors haben einen Vorwärtsantriebsanschluss und einen Rückwärtsantriebsanschluss und die anderen haben einen Vorwärts/Rückwärts-Drehantriebsanschluss und einen Drehrichtungs-Befehlsanschluss. Die erste Pulsausgangsschaltung 1060m kann eine Pulsausgabe gemäß jedem der Antriebsmoden erzeugen, wie sie oben beschrieben sind.
  • In der obigen Beschreibung werden für den Betrieb mit zwei Geschwindigkeiten, der den Startbetrieb niedriger Geschwindigkeit, den Betrieb hoher Geschwindigkeit, den Betrieb niedriger Geschwindigkeit vor einem Stoppen und den Stoppbetrieb enthält, die Einstellwerte für ein zyklisches Betreiben des ersteren Vorwärts/Rückwärts-Zählers als Ringzähler durch das erste und das zweite Einstellregister umgeschaltet, um dadurch einen Ausgangspulszyklus niedriger Geschwindigkeit oder hoher Geschwindigkeit zu erhalten. Der letztere Vorwärts/Rückwärts-Zähler 2000m+1 erzeugt ein Zählen der Anzahl erzeugter Pulse und ein Geschwindigkeitsumschalt-Befehlssignal. Bei dieser Geschwindigkeitsumschaltsteuerung werden die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und die Abwärtszählvergleichs-Übereinstimmungsausgabe P verwendet, die in Reaktion auf die Erzeugung der Anzahl erzeugter Pulse niedriger Geschwindigkeit arbeiten. Jedoch wird zu Beginn eines Betriebs des letzteren Vorwärts/Rückwärts-Zählers 2000m+1 eine negative Anzahl entsprechend der Anzahl an von bei dem Betrieb niedriger Geschwindigkeit erzeugten Pulsen in dem Register für aktuelle Werte 40001m+1 gespeichert, wird die Anzahl von bei dem Betrieb hoher Geschwindigkeit erzeugten Pulsen für das zweite Einstellregister 3002m+1 eingestellt und wird die Summe aus der Anzahl von bei dem Betrieb hoher Geschwindigkeit erzeugten Pulsen und der Anzahl von bei dem Betrieb niedriger Geschwindigkeit vor einem Stoppen erzeugten Pulsen für das erste Einstellregister 3001m+1 eingestellt. Auf diese Weise kann der Vorwärts/Rückwärts-Zähler den Startbetrieb niedriger Geschwindigkeit durchführen, während die Rücksprungausgabe Q arbeitet, den Betrieb hoher Geschwindigkeit, nachdem der aktuelle Zählerwert des Registers für aktuelle Werte 4001m+1 positiv wird, den Betrieb niedriger Geschwindigkeit vor einem Stoppen nach dem Beginn eines Betriebs der Aufwärtszählvergleichs-Übereinstimmungsausgabe P und den Stoppbetrieb auf eine Erzeugung der Aufwärtszählausgabe Q hin.
  • Als Nächstes wird die Beschreibung unter Bezugnahme auf 13 fortgesetzt. 13 ist ein Blockdiagramm, das die in 4 gezeigte Logikschaltungseinheit 1000n darstellt, die als zweite Pulsausgangsschaltung 1070k (k = 0 oder 4) verwendet wird. Die zweite Pulsausgangsschaltung 1070k führt einen Drehpulsbefehl zu einem Servoverstärker zu, der einen Servomotor antreibt. Die zweite Pulsausgangsschaltung 1070k führt einen Vorwärtsdrehpuls oder einen Rückwärtsdrehpuls oder einen Vorwärts/Rückwärts-Drehpuls und einen Drehrichtungsbefehl zum Servomotor zu. Die zweite Pulsausgangsschaltung 1070k ist mit einer Beschleunigungs/Abbrems-Steuerfunktion zum schrittweisen Erhöhen oder Erniedrigen einer Pulsfrequenz für einen langsamen Start/langsamen Stopp des Servomotors versehen. Eine Teilmodifikation der Schaltung lässt zu, dass die zweite Pulsausgangsschaltung 1070k eine Steuerung für ein Zurückkehren zu Null, die nachfolgend beschrieben wird, durchführt. Daher wird die zweite Pulsausgangsschaltung 1070k durch Verwenden des ersten Ports 11 und des zweiten Ports 12 zur gleichen Zeit freigegeben und besetzt zwei Kanaleingänge, drei Kanalausgänge und vier Vorwärts/Rückwärts-Zähler.
  • In 13 werden vier Vorwärts/Rückwärts-Zähler 2000·0, 2000·1, 2000·2 und 2000·3 in der zweiten Pulsausgangsschaltung 1070·0 verwendet, während vier Vorwärts/Rückwärts-Zähler 2000·4, 2000·5, 2000·6 und 2000·7 in der zweiten Pulsausgangsschaltung 1070·4 verwendet werden. Da die zwei Vorwärts/Rückwärts-Zähler dieselben sind, wird nur die zweite Pulsausgangsschaltung 1070·0 nachfolgend beschrieben werden. Der Vorwärts/Rückwärts-Zähler 2000·0 in einer ersten Stufe (der hierin nachfolgend der erste Vorwärts/Rückwärts-Zähler genannt wird) zählt das von der gemeinsamen Taktsignalschaltung 9001 erzeugte Taktsignal aufwärts. Das erste Einstellregister 3001·0 speichert einen numerischen Wert entsprechend einer Hälfte einer sich nach und nach erhöhenden/erniedrigenden Soll-Stufenzeit Δt durch Verwenden von Einstelldaten 3070·0 im Voraus. Wenn der aktuelle Zählerwert des Registers für einen aktuellen 4001·0 des ersten Vorwärts/Rückwärts-Zählers 2000·0 sich erhöht, um den Einstellwert N1 im ersten Einstellregister 3001·0 zu erreichen, wird die Aufwärtszählausgabe Q erzeugt, um den Vorwärts/Rückwärts-Zähler 2000·0 rückzusetzen und alternativ bzw. abwechselnd die Ausgabe von der alternativen bzw. wechselnden Ausgangsschaltung 97 zu invertieren.
  • Mit dem Rücksetzen des Vorwärts/Rückwärts-Zählers 2000·0, um den Wert des Registers für einen aktuellen Wert 40001·0 zu Null zurückzubringen, wird auch die Aufwärtszählausgabe Q rückgesetzt, um das Zählen der Taktsignale erneut zu starten. Als Ergebnis ist ein Zyklus einer Erzeugung der Aufwärtszählausgabe Q gleich dem Produkt aus dem Einstellwert N1 und dem Taktsignalzyklus τ: N1 × τ. Ein Zyklus des Ausgangspulses von der alternativen Ausgangsschaltung 97 ist das Doppelte des Zyklus einer Erzeugung der Aufwärtszählausgabe Q: 2 × N1 × τ, was der Stufenzeit Δt entspricht. Daher dient der erste Vorwärts/Rückwärts-Zähler 2000·0 als Mittel zum Erzeugen einer Stufenzeit in einem sich nach und nach erhöhenden/erniedrigenden Muster. Eine Änderung bezüglich des aktuellen Zählerwerts des Registers für einen aktuellen Wert 4001·0 wird durch eine sägezahnartige Welle 91 dargestellt. Der Vorwärts/Rückwärts-Zähler 2000·1 in einer zweiten Stufe (der hierin nachfolgend der zweite Vorwärts/Rückwärts-Zähler genannt wird) zählt die Ausgangssignale von der alternativen Ausgangsschaltung 97 aufwärts oder abwärts. In Reaktion auf einen einzigen Aufwärts/Abwärts-Zählbefehl wird ein Wert einer in dem Variationseinstellregister 4003·1 gespeicherten sich nach und nach erhöhenden/erniedrigenden Frequenz Δf zu dem Wert des Registers für einen aktuellen Wert von 4001·1 addiert oder von diesem subtrahiert.
  • Der Vorwärts/Rückwärts-Zähler 2000·1 dient zum Erzeugen eines Geschwindigkeitsmusters 93A. Zum Starten des Betriebs der zweiten Pulsausgangsschaltung 1070·0 wird eine Anfangseinstellung mit den Einstelldaten 3070·0 durchgeführt. Ein Wert einer Pulsfrequenz f1 entsprechend einer Sollbetriebsgeschwindigkeit wird im ersten Einstellregister 3001·1 eingestellt, ein Wert einer Pulsfrequenz f2 entsprechend eines Betriebs niedriger Geschwindigkeit wird im zweiten Einstellregister 3002·1 eingestellt, ein Wert einer Pulsfrequenz f0 entsprechend einer Anfangsgeschwindigkeit beim Start eines Betriebs wird im Register für einen aktuellen Wert 4001·1 eingestellt und ein Wert der sich nach und nach erhöhenden/erniedrigenden Frequenz Δf wird in dem Variations-Einstellregister 4003·1 eingestellt.
  • Im Allgemeinen wird jedoch derselbe Wert als die niedrige Geschwindigkeit und die Anfangsgeschwindigkeit verwendet, und daher gilt f2 = f0. Als Ergebnis wird jedes Mal dann, wenn das Zähleingangssignal im Zyklus Δt zu dem Zähleingangsanschluss IN eingegeben wird, die sich nach und nach erhöhende Frequenz Δf sequentiell zu dem Wert des Registers für einen aktuellen Wert 4001·1 addiert, dass die Pulsfrequenz f0 für die Anfangsgeschwindigkeit als einen Anfangswert speichert. Wenn der als das Ergebnis einer Addition erhaltene aktuelle Wert die Pulsfrequenz f1 entsprechend der im ersten Einstellregister 3001·1 gespeicherten Sollbetriebsgeschwindigkeit erreicht, wird die Aufwärtszählausgabe Q erzeugt, um zu veranlassen, dass die Ausgabe von einem NICHT-Element 92 die Aufwärtszählbefehlseingabe stoppt. Als Ergebnis hält das Register für einen aktuellen Wert 4001·1 selbst dann, wenn eine Zähleingabe erzeugt wird, einen konstanten Wert.
  • Wenn jedoch der nachfolgend beschriebene Vorwärts/Rückwärts-Zähler 2000·3 einen Abbremsstartbefehl erzeugt, lassen Ausgaben von einem ODER-Element 95a und einem Gatterelement 95b zu, dass der Vorwärts/Rückwärts-Zähler 2000·1 eine Subtraktionsoperation startet. Jedes Mal dann, wenn ein Zähleingangssignal im Zyklus Δt zu dem Zähleingangsanschluss IN eingegeben wird, wird die sich nach und nach erniedrigende Frequenz Δf sequentiell von dem Wert des Registers für einen aktuellen Wert 4001·1 subtrahiert. Wenn der Wert des Registers für einen aktuellen Wert 4001·1 gleich der Frequenz niedriger Geschwindigkeit f2 (= f0) oder niedriger bzw. kleiner als diese wird, die in dem zweiten Einstellregister 3002·1 gespeichert ist, ändert sich der logische Pegel der Abwärtszählvergleichs-Übereinstimmungsausgabe P zu "H" und wird der logische Pegel der Ausgabe des Gatterelements 95b zu "L" invertiert. Als Ergebnis wird die Subtraktionsoperation gestoppt. Das Register für einen aktuellen Wert 4001·1 hält den Wert der Frequenz niedriger Geschwindigkeit f2 (= f0).
  • Der Vorwärts/Rückwärts-Zähler 2000·2 in einer dritten Stufe (der hierin nachfolgend der dritte Vorwärts/Rückwärts-Zähler genannt wird) addiert sequentiell ein in dem Variations-Einstellregister 4003·2 gespeichertes Inkrement zu dem Register für einen aktuellen Wert 4001·2 in Reaktion auf das von der gemeinsamen Taktsignalschaltung 9001 erzeugte Taktsignal. Ein vorbestimmter Koeffizient K wird in dem ersten Einstellregister 3001·2 durch Verwenden der Einstelldaten 3070·0 vom Mikroprozessor 111 gespeichert. Im Variations-Einstellregister 4003·2 wird der Wert des Registers für einen aktuellen Wert 4001·1 des ersten Vorwärts/Rückwärts-Zählers 2000·1 für eine Aktualisierung sequentiell gespeichert.
  • Daher wird das in dem Variations-Einstellregister 4003·2 gespeicherte Inkrement sequentiell zu dem aktuellen Zählerwert des Registers für einen aktuellen Wert 4001·2 des Vorwärts/Rückwärts-Zählers 2000·2 durch die EIN/AUS-Operation der von der gemeinsamen Taktsignalschaltung 9001 eingegebenen Taktsignals addiert. Wenn der aktuelle Zählerwert den in dem ersten Einstellregister 3001·2 gespeicherten Koeffizienten K erreicht, wird die Aufwärtszählausgabe Q erzeugt, um den Vorwärts/Rückwärts-Zähler 2000·2 selbst rückzusetzen. Darauffolgend wird derselbe Betrieb wiederholt. Als Ergebnis wird der Zyklus einer Erzeugung der Aufwärtszählausgabe Q kürzer, wenn das in dem Variations-Einstellregister 4003·2 gespeicherte Inkrement größer wird. Die Ausgabe von der alternativen Ausgangsschaltung 47 ist eine Pulsausgabe in einem Zyklus, der umgekehrt proportional zu dem in dem Variations-Einstellregister 4003·2 gespeicherten Inkrement ist. Die Pulsausgabe wird zu den Kanalanschlüssen 12·0 und 12·1 durch die Ausgangs-Auswahlschaltung 49 ausgegeben.
  • Der Ausgabemode der Ausgabe-Auswahlschaltung 49 wird basierend auf dem Inhalt des Parameterspeichers 8000·2 bestimmt. Beispielsweise gibt die Ausgabe-Auswahlschaltung 49 die Vorwärtsdrehpulsausgabe FP und die Rückwärtsdrehpulsausgabe RP oder den Vorwärts/Rückwärts-Puls FRP und die Richtungssignalausgabe DIR aus. Der letzte Vorwärts/Rückwärts-Zähler 2000·3 zählt das Ausgangssignal von der alternativen Ausgangsschaltung 47 aufwärts, um die Anzahl erzeugter Puls zu zählen. Eine Sollanzahl von zu erzeugenden Pulsen ist in dem ersten Einstellregister 3001·3 des Vorwärts/Rückwärts-Zählers 2000·3 gespeichert, während die Anzahl von Impulsen, die vor dem Start eines Abbremsens erzeugt sind, in dem zweiten Einstellregister 3002·3 gespeichert ist. Die Einstellwerte wie diejenigen, die oben angegeben sind, werden im Voraus als die Einstelldaten 3070·0 vom Mikroprozessor 111 gesendet.
  • Wenn der Vorwärts/Rückwärts-Zähler 2000·3 die Anzahl erzeugter Pulse zählt und dann die Anzahl erzeugter Pulse die Anzahl von Pulsen erreicht, die vor dem Start eines Abbremsens erzeugt sind, welche in dem zweiten Einstellregister 3002·3 gespeichert ist, ändert sich der logische Pegel der Aufwärtszählvergleichs-Übereinstimmungsausgabe P zu "H", um eine Subtraktionsoperation des Vorwärts/Rückwärts-Zählers 2000·1 durch das ODER-Element 95a und das Gatterelement 95b zu starten. Wenn der Vorwärts/Rückwärts-Zähler 2000·3 die Anzahl erzeugter Pulse zählt und dann die Anzahl erzeugter Pulse die Sollanzahl von zu erzeugenden Pulsen erreicht, die im ersten Einstellregister 3001·3 gespeichert ist, ändert sich der logische Pegel der Aufwärtszählausgabe Q zu "H", um die Operationen von allen Vorwärts/Rückwärts-Zählern zu stoppen, um die Erzeugung von Ausgangspulsen zu stoppen. Gleichzeitig wird der Mikroprozessor 111 über die Beendigung eines Betriebs durch Verwenden eines Benachrichtigungssignals 7070·0 benachrichtigt. Der Mikroprozessor 111 kann einen Vorwärtsdrehungsbegrenzungs-Stoppbefehl, einen Rückwärtsdrehungsbegrenzungs-Stoppbefehl und Befehl für einen erzwungenen Stopp als Befehlssignal 6070·0 zu dem Befehls-Latch-Speicher 6000·0 senden, um die Erzeugung von Pulsen zu stoppen. Die mit einer gestrichelten Linie in 13 angezeigten Operationen werden nachfolgend unter Bezugnahme auf 14 beschrieben werden.
  • Als Nächstes wird auf 14 Bezug genommen werden, und zwar hauptsächlich für die Beschreibung von Unterschieden gegenüber 13. 14 ist ein Blockdiagramm, das die in 4 gezeigte Logikschaltungseinheit 1000n darstellt, die als eine modifizierte Pulsausgangsschaltung 1080k (k = 0 oder 4) verwendet wird. Die modifizierte Pulsausgangsschaltung 1080k wird durch teilweises modifizieren der zweiten Pulsausgangsschaltung 1070k, die in 13 dargestellt ist, mit einer Parameteränderungseinrichtung 918 erhalten, die nachfolgend unter Bezugnahme auf 19 beschrieben wird. Da eine zu verwendende spezielle Anweisung eine Anweisung für ein Zurückkehren zu Null ZRN ist, unterscheiden sich Einstelldaten für die jeweiligen Einheiten von denjenigen in 13.
  • In 14 arbeitet der erste Vorwärts/Rückwärts-Zähler 2000·0 auf exakt dieselbe Weise wie in 13. Der Vorwärts/Rückwärts-Zähler 2000·0 führt eine wiederholte Operation entsprechend der in dem ersten Einstellregister 3001·0 eingestellten sich nach und nach erhöhenden/erniedrigenden Stufenzeit durch, während er das von der gemeinsamen Taktsignalschaltung 9001 erzeugte Taktsignal aufwärts zählt. Der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001·0 variiert, wie es durch die sägezahnartige Welle 91 dargestellt ist. Der zweite Vorwärts/Rückwärts-Zähler 2000·1 arbeitet auf nahezu dieselbe Weise wie in 13, um ein Geschwindigkeitsmuster zu erzeugen, wie es durch ein Kennliniendiagramm 93b dargestellt ist.
  • In dem Fall der 14 ist jedoch die Anfangsgeschwindigkeit nicht für das Register für einen aktuellen Wert 40001·1 eingestellt. Daher erhöht sich die Geschwindigkeit nach und nach von Null als ein Geschwindigkeitserhöhungsmuster. Darüber hinaus hängt der Start einer Subtraktionsoperation des Vorwärts/Rückwärts-Zählers 2000·1 von einem Betrieb eines von dem Kanalanschluss 11·0 eingegebenen Nahstellen-Klemmzapfensignals DOG ab. Das Nahstellen-Klemmzapfensignal DOG führt einen Abwärtszählbefehl zu dem Vorwärts/Rückwärts-Zähler 2000·1 durch das ODER-Element 95a und das Gatterelement 95b basierend auf einem Umschaltsignal zu, das eine EIN-Operation bei einer nahen Stelle eines mechanischen Ursprungs durchführt.
  • Weiterhin wird in einer Abbremsbeendigungsstufe eine konstante Geschwindigkeit entsprechend einer in dem zweiten Einstellregister 3002·1 gespeicherten Kriechgeschwindigkeit gehalten. Die konstante Geschwindigkeit wird gehalten, um die Abwärtszähloperation durch das Gatterelement 95b durch die Abwärtszählvergleichs-Übereinstimmungsausgabe P zu stoppen. Der dritte Vorwärts/Rückwärts-Zähler 2000·2 arbeitet auf genau dieselbe Weise wie in 13. Der aktuelle Wert des zweiten Registers für einen aktuellen Wert 4001·1 wird sequentiell zu dem Variations-Einstellregister 4003·2 transferiert. Der Vorwärts/Rückwärts-Zähler 2000·2 erzeugt eine Pulsausgabe in einem Zyklus umgekehrt proportional zu einer Frequenz entsprechend der Betriebsgeschwindigkeit für die Kanalanschlüsse 12·0 und 12·1.
  • Der letzte Vorwärts/Rückwärts-Zähler 2000·3 zählt ein von einem für einen Servomotor vorgesehenen Codierer erzeugtes Null-Phasensignal aufwärts. Eine Zählsignaleingabe zu dem Vorwärts/Rückwärts-Zähler ist ein Ausgangssignal von einem UND-Element 95e. Eine Halteschaltung 95c speichert den Übergang des Nahstellen-Klemmzapfensignals DOG von AUS zu EIN, um den logischen Pegel des Kanalanschlusses 11·0 von "L" zu "H" zu bringen. Der logische Pegel einer Ausgabe von dem Gatterelement 95d wird durch den Übergang des Nahstellen-Klemmzapfensignals DOG von EIN zu AUS zu "H" gebracht, nachdem die Halteschaltung 95c eingestellt ist.
  • Als Ergebnis wird ein Nullstellensignal ZERO bzw. NULL, das zu dem Kanalanschluss 11·1 eingegeben ist, zu dem Zähleingangsanschluss IN des Vorwärts/Rückwärts-Zählers 2000·3 durch das UND-Element 95e eingegeben. Eine Zählstart-Bestimmungsschaltung 96 für das Nullstellensignal enthält die Halteschaltung 95c und das Gatterelement 95d. Die Beziehung zwischen dem Nahstellen-Klemmzapfensignal DOG und dem Nullstellensignal ZERO wird nachfolgend unter Bezugnahme auf 28 spezifisch beschrieben werden. Der logische Pegel des Nahstellen-Klemmzapfensignals DOG ändert sich in der Nähe des Ursprungs zu "H" und kehrt dann zu "L" zurück, wenn die Abbremsung nahezu beendet ist. Darauffolgend startet der Vorwärts/Rückwärts-Zähler 2000·3 ein Zählen des Nullstellensignal ZERO.
  • Wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4001·3 des Vorwärts/Rückwärts-Zählers 2000·3 die Anzahl von Nullstellensignalen erreicht, welche im Voraus im ersten Einstellregister 3001·3 gespeichert ist, wird die Aufwärtszählausgabe Q erzeugt, um die Operationen von allen Vorwärts/Rückwärts-Zählern und die Erzeugung von Pulsausgaben zu stoppen. Der Vorwärts/Rückwärts-Zähler 2000·3 erzeugt ein Löschsignal CLR für den Kanalanschluss 12·2 über die Ausgabe-Auswahlschaltung 49, setzt die Halteschaltung 95c zurück oder sendet ein Betriebsbeendigungssignal zu dem Mikroprozessor 111 durch Verwenden eines Benachrichtigungssignals 7080·0. Das Löschsignal CLR, das zu dem Kanalanschluss 12.2 ausgegeben wird, wird zum Initialisieren des Servoverstärkers verwendet. In 14 dient der Vorwärts/Rückwärts-Zähler 2000·3, der zum Zählen der Anzahl erzeugter Pulse in 13 verwendet wird, auch zum Zählen der Anzahl von Nullstellensignalen, um die Anzahl von zu verwendenden Vorwärts/Rückwärts-Zählern niedrig zu halten.
  • Als Nächstes wird eine Beschreibung unter Bezugnahme auf 15 durchgeführt werden. 15 stellt eine beispielhafte Struktur des in 1 dargestellten Vorrichtungsspeichers 114a dar. In 15 werden einhundertachtundzwanzig Eingangsrelais durch Oktalzahlen X000 bis X177 identifiziert. jedes der Eingangsrelais ist ein virtuelles elektronisches Relais, das durch jeden der EIN/AUS-Schaltsensoren X000 bis X177 angetrieben wird, die mit dem Eingangsanschluss der programmierbaren Steuerung 100A verbunden sind. Das Eingangsrelais hat unzählige normalerweise offene Kontakte und normalerweise geschlossene Kontakte und kann in einem sequentiellen Programm eines Anwenders verwendet werden. Weiterhin werden beispielsweise einhundertachtundzwanzig Ausgangsrelais durch Oktalziffern Y000 bis Y177 identifiziert. Jedes der Ausgangsrelais treibt eine elektrische Last an, die extern durch ein einziges Ausgabeelement angeschlossen ist, das mit dem Ausgangsanschluss der programmierbaren Steuerung 100A verbunden ist, wie beispielsweise ein elektromagnetisches Element, ein Transistor oder ein Triac. Das Ausgangsrelais hat zahllose normalerweise offene Kontakte und normalerweise geschlossene Kontakte entsprechend virtueller elektronischer Kontakte und kann im den sequentiellen Programm eines Anwenders verwendet werden.
  • Hilfsrelais M0000 bis M8999, die durch Dezimalzahlen identifiziert sind, sind virtuelle elektronische Relais. Jedes der Hilfsrelais hat zahllose normalerweise offene Kontakte oder normalerweise geschlossene Kontakte entsprechend virtueller elektronischer Kontakte und kann in dem sequentiellen Programm eines Anwenders verwendet werden. Ein Teil der Hilfsrelais sind spezielle Hilfsrelais, deren Betrieb durch den Hersteller definiert wird. Beispielsweise ist das Hilfsrelais M8000 ein spezielles Hilfsrelais, das auf einen Start eines Betriebs der programmierbaren Steuerung 100A hin automatisch angetrieben wird. Der Anwender kann Kontaktinformation des speziellen Hilfsrelais im sequentiellen Programm verwenden.
  • Zeitgeber T000 bis T255, die durch Dezimalzahlen identifiziert sind, sind virtuelle elektronische Zeitgeber, die jeweils ein 16-Bit-Einstellwertregister, ein Register für einen aktuellen Wert, einen Messzeitausgabekontakt und eine Rücksetzspule enthalten. Wenn der Zeitgeber durch das sequentielle Programm angetrieben wird, gibt der Zeitgeber eine Zeitablaufausgabe mit einem Verstreichen einer Zeit aus. Als Ergebnis können zahllose normalerweise offene Kontakte und normalerweise geschlossene Kontakte entsprechend virtueller elektronischer Ausgangskontakte im sequentiellen Programm eines Anwenders verwendet werden.
  • Zähler C000 bis C255, die durch Dezimalzahlen identifiziert sind, sind virtuelle Zähler, die jeweils ein 16-Bit-Einstellwertregister, ein Register für einen aktuellen Wert, eine Aufwärtszählausgabe und eine Rücksetzspule enthalten. Wenn der Zähler durch das sequentielle Programm angetrieben/gestoppt wird, wird die Anzahl von angetriebenen Zeiten des Zählers gezählt. Wenn die Anzahl von angetriebenen Zeiten eine Sollanzahl erreicht, gibt der Zähler eine Aufwärtszählausgabe aus. Als Ergebnis können zahllose normalerweise offene Kontakte und normalerweise geschlossene Kontakte entsprechend virtueller elektronischer Ausgangskontakte in dem sequentiellen Programm eines Anwenders verwendet werden. Daher kann der Zähler kein Eingangssignal zählen, das schneller als der Berechnungszyklus der programmierbaren Steuerung arbeitet.
  • Datenregister, die durch Dezimalzahlen D0000 bis D8999 identifiziert sind, sind 16-Bit-Wortvorrichtungen. Die Kombination aus zwei benachbarten Datenregistern lässt zu, dass 32-Bit-Daten gehandhabt werden. Ein Teil der Datenregister sind spezielle Datenregister, deren Anwendung durch den Hersteller definiert ist. Beispielsweise ist eine Batteriespannung in einem Datenregister D8005 gespeichert, während eine Abtastzeit in einem Datenregister D8010 gespeichert ist. Zielorte einer Speicherung von Betriebszuständen oder von Information für einen aktuellen Wert/Einstellwert von mehreren Vorrichtungen wie denjenigen, die oben beschrieben sind, sind dem Vorrichtungsspeicher gemäß Vorrichtungsnummern zugeteilt. Einige der Hilfsrelais, der Zeitgeber, der Zähler und der Datenregister sind durch eine Batterie gespeichert, während es die anderen nicht sind. Die zwei Typen sind basierend auf dem Bereich von Vorrichtungsnummern identifiziert.
  • Als Nächstes wird auf 16 Bezug genommen werden, die eine beispielhafte Struktur einer in 1 gezeigten Zähleranzahl hoher Geschwindigkeit darstellt. In 16 sind die Typen von Hochgeschwindigkeitszählern grob klassifiziert in: 1-Phase-1-Eingabe ohne PS-Eingabe; 1-Phase-1-Eingabe mit PS-Eingabe; 1-Phase-2-Eingabe; und 2-Phase-2-Eingabe mit einer Einzelflankenauswertung, einer Doppelflankenauswertung und einer Vierfachflankenauswertung. Die Hochgeschwindigkeitszähler sind jeweils mit sich nicht überlagernden Erweiterungsnummern bzw. -zahlen bb = 00 bis 96 versehen. Andererseits sind die Eingangsanschlüsse der speziellen Einheit mit Zahlen von X**0 bis X**7 versehen. Die ersten zwei Ziffern der Eingangsnummer entsprechen einer Platzierungsnummer, die durch die Position eines Anschlusses der speziellen Einheit bestimmt ist. Wie es aus 1 offensichtlich ist, ist die Platzierungsnummer ** des Eingangs, der mit dem ersten Port 11 in der speziellen Einheit 130 verbunden ist, 01. Eine Platzierungsnummer wird als eine Oktalzahl für jede Einheit von acht Eingängen in der Größenordnung von Einheiten bestimmt, die näher zu der CPU-Einheit 110A sind. Daher sind die Eingangsnummern für das erste Port 11 der speziellen Einheit 130 X010 bis X017 und dient die letzte Ziffer 0 bis 7 als Kanalzahl.
  • Eine Hochgeschwindigkeitszählernummer wird durch Cbb**n dargestellt. Beispielsweise zeigt eine Hochgeschwindigkeitszählernummer C20010 einen 1-Phasen-2-Eingang-Hochgeschwindigkeitszähler mit einem Eingangsanschluss X010 an, zu welchem ein Aufwärtszählsignal U eingegeben wird, und einem Eingangsanschluss X011, zu welchem ein Abwärtszählsignal D eingegeben wird. Da die Erweiterungsnummern bb zugeteilt sind, um einander nicht zu überlagern, kann der Hochgeschwindigkeitszähler durch die Erweiterungsnummer bb selbst ohne die Kanalnummer n identifiziert werden. Daher ist die Kanalnummer n lediglich eine Referenznotation und ist Cb** eine offizielle Hochgeschwindigkeitsnummer in einem strengen Sinn.
  • Im Fall des 1-Phasen-l-Eingangs-Hochgeschwindigkeitszählers ist die Aufwärts/Abwärts-Zählrichtung durch ein Programm in einer Hochgeschwindigkeitszähleranweisung HSC bestimmt bzw. bezeichnet. Ein Bezugszeichen P in 16 zeigt an, dass der Hochgeschwindigkeitszähler mit einem voreingestellten Befehlseingangsanschluss versehen ist. Beispielsweise ist in dem Fall eines Hochgeschwindigkeitszählers C10010 X010 ein Zähleingangssignalanschluss, während X011 ein Voreinstellbefehlseingangsanschluss ist. Wenn ein mit dem Eingangsanschluss verbundenes EIN/AUS-Schaltsignal auf EIN geschaltet wird, werden vorbestimmte Voreinstelldaten basierend auf dem sequentiellen Programm zu dem Register für einen aktuellen Wert des Hochgeschwindigkeitszählers C10010 transferiert.
  • Ein Bezugszeichen S in 16 zeigt an, dass der Hochgeschwindigkeitszähler mit einem Zählstartbefehlseingangsanschluss versehen ist. Beispielsweise ist in dem Fall eines Hochgeschwindigkeitszählers C11011 X011 ein Zähleingangssignalanschluss, während X010 ein Zählstartbefehlseingangsanschluss ist. Der Hochgeschwindigkeitszähler C11011 hält eine Zähloperation, bis ein mit dem Eingangsanschluss verbundenes EIN/AUS-Schaltsignal auf EIN geschaltet wird. Andererseits startet in dem Fall eines Hochgeschwindigkeitszählers ohne den Zählstartbefehlseingangsanschluss S der Hochgeschwindigkeitszähler eine Zähloperation auf eine Ausführung der Hochgeschwindigkeitszähleranweisung HSC hin. Für die Befehlsanschlüsse P und S wird die obige Beschreibung auf die anderen Hochgeschwindigkeitszähler angewendet.
  • In dem durch die Erweiterungsnummern bb = 40 bis 96 bezeichneten 2-Phasen-2-Eingangs-Hochgeschwindigkeitszähler werden Pulssignale bei zwei Phasen, d. h. der A-Phase und der B-Phase, die eine Phasendifferenz von 90 Grad haben, jeweils an die Zähleingangsanschlüsse angelegt. Beispielsweise dann, wenn der logische Pegel des A-Phasensignals auf einen Übergang des logischen Pegels des B-Phasensignals von "L" zu "H" hin "H" ist, führt der Hochgeschwindigkeitszähler eine Aufwärtszähloperation durch. Andererseits führt dann, wenn der logische Pegel des A-Phasensignals "L" ist, der Hochgeschwindigkeitszähler eine Abwärtszähloperation durch.
  • Auf diese Weise wird der Mode eines Zählens von nur einem Anstiegs-Logikübergang des 2-Phasensignals als Einzelflankenauswertung bezeichnet. Bei einer Doppelflankenauswertung werden sowohl Anstiegs- als auch Abfalllogikübergänge des B-Phasensignals gezählt. Bei einer Vierfachflankenauswertung werden sowohl Anstiegs- als auch Abfalllogikübergänge des A-Phasen- und des B-Phasensignals gezählt. In dem Fall einer Anweisung für ein variables Filter REF, einer Pulsdichtemessungsanweisung FREQ und einer Pulsbreitenmessungsanweisung PWD, die nachfolgend beschrieben werden, ist die Erweiterungsnummer bb nicht nötig. Darüber hinaus kann die Anweisung für ein variables Filter REF für die Eingabe bzw. für den Eingang verwendet werden, für welche bzw. für welchen die Hochgeschwindigkeitszähleranweisung HSC, die Pulsdichtemessungsanweisung FREQ oder die Pulsbreitenmessungsanweisung PWD nicht verwendet wird.
  • Als Nächstes wird auf 17 Bezug genommen, die eine beispielhafte Struktur der in 1 gezeigten Hochgeschwindigkeitsausgabenummern darstellt. In 17 sind Ausgänge, für welche verschiedene Hochgeschwindigkeitsausgabeanweisungen PLS, DRV und ZRN verwendet werden, mit Erweiterungsnummern bb = 00 bis 15 versehen, die einander nicht überlagern. Andererseits sind die Ausgangsanschlüsse der speziellen Einheit mit Nummern im Bereich von Y**0 bis Y**7 versehen. Die ersten zwei Ziffern der Ausgangsnummer bilden eine Platzierungsnummer, die durch die Position einer Verbindung der speziellen Einheit bestimmt ist. Wie es aus 1 offensichtlich ist, ist die Platzierungsnummer ** des mit dem zweiten Port 12 in der speziellen Einheit 140 verbundenen Ausgangs 02. Als die Platzierungsnummer wird eine Oktalzahl für jede Einheit von acht Ausgängen bestimmt, und zwar in der Größenordnung von Ausgabeeinheiten, die näher zu der CPU-Einheit 110A sind.
  • Daher sind die Ausgangsnummern für das zweite Port 12 der speziellen Einheit 140 Y020 bis Y027. Die letzte Ziffer der Ausgangsnummer entspricht einer Kanalzahl. Die Hochgeschwindigkeitsausgangsnummer ist mit Ybb**n bezeichnet. Beispielsweise wird eine Hochgeschwindigkeitsausgangsnummer Y02022 für eine erste Pulsausgabeanweisung PLS verwendet. Die Vorwärtsdrehpulsausgabe FP wird zu einem Ausgangsanschluss Y022 ausgegeben, während die Rückwärtsdrehpulsausgabe RP zu einem Ausgangsanschluss Y023 ausgegeben wird. Da die Erweiterungsnummern bb zugeteilt sind, um einander nicht zu überlagern, kann der Hochgeschwindigkeitsausgang durch die Erweiterungsnummer bb selbst ohne die Kanalzahl n identifiziert werden. Daher ist die Kanalzahl n eine bloße Referenznotation und ist Ybb** eine offizielle Hochgeschwindigkeitsausgangsnummer in einem strengen Sinn.
  • 17 stellt auch eine mit DIR bezeichnete Richtungssignalausgabe und eine mit FRP bezeichnete Vorwärts/Rückwärts-Pulsausgabe dar. Beispielsweise wird in dem Fall der Erweiterungsnummer 01 der Vorwärts/Rückwärts-Puls zu dem Ausgangsanschluss Y021 ausgegeben. Ob der ausgegebene Vorwärts/Rückwärts-Puls als ein Vorwärtsdrehpuls oder ein Rückwärtsdrehpuls behandelt wird, wird basierend auf dem logischen Pegel des von dem Ausgangsanschluss Y020 ausgegebenen Richtungssignals bestimmt. 17 stellt auch eine Löschsignalausgabe CLR dar, die dem Servoverstärker, der den Servomotor antreibt, befiehlt, eine Initialisierung durchzuführen. In 17 ist ein Ausgangsanschluss, der eine Pulsbreitenmodulationssignalausgabe erzeugt, mit PWM bezeichnet. Die Ausgangsanschlüsse wie diejenigen, die oben beschrieben sind, können nicht auf eine überlagernde Weise verwendet werden. Der Ausgang, der nicht durch die Hochgeschwindigkeitsausgabeanweisung besetzt ist, kann als Ausgang für allgemeine Zwecke verwendet werden. Für die PWM-Ausgaben und die Ausgaben für allgemeine Zwecke ist die Erweiterungsnummer bb nicht erforderlich.
  • (2) Detaillierte Beschreibung der Funktionen und der Operation
  • In Bezug auf die programmierbare Steuerung, die konfiguriert ist, wie es oben beschrieben ist, werden ihre Funktionen und ihre Operation zuerst detailliert basierend auf den 18 und 19 beschrieben werden, die Ablaufdiagramme zum Darstellen einer Grundoperation sind. In 18 wird die programmierbare Steuerung 100A in einen Schritt 900 EIN geschaltet. Als Ergebnis wird eine Energieaktivierung in der programmierbaren Steuerung 100A erfasst, um jede der Einheiten zu initialisieren. Darauffolgend beginnt der Mikroprozessor 111 in einem Schritt 901 ein Arbeiten. In einem darauffolgenden Schritt 902 wird bestimmt, ob ein RUN- bzw. LAUF-Schalter für einen Betrieb/Stopp-Befehl (nicht gezeigt) EIN-geschaltet ist oder nicht. Wenn der RUN-Schalter derart EIN-geschaltet ist, um in einem Betriebszustand zu sein, wird es als JA bestimmt, und geht der Prozess weiter zu einem Schritt 905 (ein Mittel für ein Einstellen einer Anormalitätserfassung). Wenn der RUN-Schalter AUS ist, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 903.
  • Im Schritt 903 wird bestimmt, ob das externe Werkzeug 108 angeschlossen und ein Programmmode eingestellt ist oder nicht. Wenn der Programmmode eingestellt ist, wird es als JA bestimmt, und geht der Prozess weiter zu einem Schritt 904. Wenn das externe Werkzeug nicht angeschlossen ist oder ein Überwachungsmode eingestellt ist, selbst wenn das externe Werkzeug angeschlossen ist, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 910 entsprechend einem Betriebsbeendigungsschritt (der hierin nachfolgend einfach Schritt 910 genannt wird). Im Schritt 904 geht der Prozess, nachdem das sequentielle Programm durch das externe Werkzeug 108 zu dem Programmspeicher 113A gesendet ist, weiter zum Schritt 910. Im Schritt 910 springt der Prozess, nachdem die anderen Steueroperationen durchgeführt sind, zurück zu dem Schritt 901, wo die Operation gestartet wird. Dann wird die oben beschriebene Operation wiederholt. Daher arbeitet der Mikroprozessor 111 dann, wenn es in beiden Schritten 902 und 903 als NEIN bestimmt wird, zyklisch durch die Schritte 901, 902, 903, 910 und wieder 901, um auf das NEIN-Schalten des RUN-Schalters im Schritt 902 oder das Einstellen des Programmmodes im Schritt 903 zu warten.
  • Dann, wenn der RUN-Schalter EIN-geschaltet ist, werden im Schritt 905 zuerst Programme im Programmspeicher 113A geprüft. Eine der Programmprüfungen ist die Bestimmung von Typen der I/O-Schnittstellenschaltungen, die an das erste und das zweite Port angeschlossen sind, basierend auf der in dem Karteninformationsspeicherungsspeicher 9000 gespeicherten Karteninformation, um zu bestimmen, ob die Typen der I/O-Schnittstellenschaltungen und der Inhalt der Anweisung entsprechend der speziellen Einheit, die im Programmspeicher 113A gespeichert ist, einander entsprechen. Darüber hinaus werden die I/Os der in 16 und 17 dargestellten speziellen Einheit geprüft, um nicht auf eine überlagernde Weise verwendet zu werden. Wenn beispielsweise die Hochgeschwindigkeitszähler mit den Erweiterungsnummern 01 und 10 verwendet werden, wird der Eingang X011 auf eine überlagernde Weise verwendet. Daher wird ein Fehler erfasst. Im darauffolgenden Schritt 906 wird dann, wenn eine Anormalität bei der im Schritt 905 durchgeführten Programmprüfung erfasst wird, es als JA bestimmt und geht der Prozess weiter zum Schritt 907. Wenn keine Anormalität erfasst wird, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 908 (einem Organisationsverarbeitungsmittel). Im Schritt 907 wird ein Anormalitätsbenachrichtigungsbefehl für die Anzeigeeinheit 117 erzeugt. Gleichzeitig wird die Operation gestoppt, um zu dem Schritt 910 weiter zu gehen (Betriebs- bzw. Operationsbeendigungsschritt).
  • Im Schritt 908 wird Schaltungsorganisationsinformation zu dem Parameterspeicher 8000n der speziellen Einheit basierend auf dem Inhalt des Programmspeichers 113A gesendet. Gleichzeitig wird die Organisation einer Zuteilung des Pufferspeichers 114, der Kommunikationsdaten für die spezielle Einheit speichert, durchgeführt. In der speziellen Einheit, die die Schaltungsorganisationsinformation empfangen hat, wird die Schaltung von jeder der Logikschaltungseinheiten 1000n basierend auf den empfangenen Parametern spezifisch organisiert. In einem Schritt 909 wird wieder geprüft, ob der RUN-Schalter EIN ist oder nicht. Wenn der RUN-Schalter AUS ist, wird es als NEIN bestimmt und geht der Prozess weiter zum Schritt 910. Wenn der RUN-Schalter EIN ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 911 (einem Eingabeverarbeitungsmittel) in 19 über einen Relaisanschluss A.
  • In 19 werden in einem Schritt 911 Zugriffe sequentiell auf die Datenselektoren 124, 134 und 144 durchgeführt, die jeweils für die I/O-Einheiten 120, 130 und 140 vorgesehen sind, um den EIN/AUS-Zustand des EIN/AUS-Schaltsignals, das mit jedem der Eingangsanschlüsse verbunden ist, zu dem Eingangsbildspeicher zu transferieren und zu schreiben, der in dem Vorrichtungsspeicher 114a zugeteilt ist. In einem darauffolgenden Schritt 912 wird das im Programmspeicher 113A gespeicherte sequentielle Programm in Reaktion auf eine jeweilige Anweisung sequentiell gelesen und ausgeführt. In einem darauffolgenden Schritt 913 wird bestimmt, ob die im Schritt 912 gelesene Anweisung zum Ausführen einer speziellen Anweisung für die spezielle Einheit dient oder nicht. Wenn die Anweisung nicht zum Ausführen der speziellen Anweisung dient, wird sie als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 922. Im Schritt 922 wird bestimmt, ob die Anweisung eine ENDE-Anweisung für die Beendigung des sequentiellen Programms ist oder nicht. Wenn die Anweisung nicht die ENDE-Anweisung ist, wird sie als NEIN bestimmt und springt der Prozess zum Schritt 912 zurück. Daher wird dann, wenn die spezielle Anweisung nicht verwendet wird, ein zyklischer Betrieb durch die Schritte 912, 913, 922 und wieder 912 durchgeführt, um sequentiell allgemeine sequentielle Anweisungen auszuführen.
  • Wenn es jedoch im Schritt 913 als JA bestimmt wird, die spezielle Anweisung zu lesen, geht der Prozess weiter zu einem Schritt 914. Im Schritt 914 wird bestimmt, ob die gelesene spezielle Anweisung die Anweisung für ein Zurückkehren zu Null ZRN ist oder nicht. Wenn die spezielle Anweisung die Anweisung für ein Zurückkehren zu Null ZRN ist, wird sie als JA bestimmt und geht der Prozess weiter zu einem Schritt 915z. Wenn nicht, wird sie als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 915d. Im Schritt 915z wird bestimmt, ob in einem darauffolgenden Schritt 916 bereits ein Flag Z gesetzt worden ist oder nicht. Wenn das Flag Z bereits gesetzt worden ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 919a. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zum Schritt 916.
  • Im Schritt 916 werden die Schaltungsorganisationsdaten zum Organisieren der modifizierten Pulsausgangsschaltung 1080·0 oder 1080·4, die in 14 dargestellt ist, zu dem Parameterspeicher 8000n gesendet, um das Schaltungsorganisationsbeendigungs-Flag Z zu setzen. Gleichzeitig geht nach einem Rücksetzen des Flags D, welches in einem darauffolgenden Schritt 917 gesetzt wird, der Prozess weiter zu einem Schritt 919a. Im Schritt 915d wird in dem darauffolgenden Schritt 917 bestimmt, ob das Flag D bereits gesetzt worden ist oder nicht. Wenn das Flag D bereits gesetzt worden ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 919a. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zu dem Schritt 917. Im Schritt 917 werden die Schaltungsorganisationsdaten zum Organisieren der zweiten Pulsausgangsschaltung 1070·0 oder 1070·4, die in 13 dargestellt ist, zu dem Parameterspeicher 8000n gesendet, um das Schaltungsorganisationsbeendigungs-Flag D zu setzen. Gleichzeitig geht nach einem Rücksetzen des Flags Z, das im oben beschriebenen Schritt 916 gesetzt ist, der Prozess weiter zu einem Schritt 919a.
  • Im Schritt 919a wird bestimmt, ob die im Schritt 912 gelesene spezielle Anweisung eine spezielle Anweisung zum Durchführen einer Operationsbeendigungsbenachrichtigung ist oder nicht. Wenn die spezielle Anweisung zum Durchführen der Operationsbeendigungsbenachrichtigung ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 919b. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 921. Im Schritt 919b wird bestimmt, ob die Operationsbeendigungsbenachrichtigung für die ausgeführte spezielle Anweisung erhalten worden ist oder nicht. Wenn die Beendigungsbenachrichtigung erhalten worden ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 921. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 922. Im Schritt 921 geht, nachdem weitere Einstelldaten für die gelesene spezielle Anweisung gesendet sind, der Prozess weiter zum Schritt 922. Im Schritt 921 werden, nachdem die durch die spezielle Anweisung bestimmten Einstelldaten in Daten umgewandelt sind, die in der speziellen Einheit auf einfache Weise gehandhabt werden, die umgewandelten Daten zum Pufferspeicher 114b transferiert. Dann werden die Daten vom Pufferspeicher 114b zur entsprechenden speziellen Einheit gesendet.
  • Beispielsweise dann, wenn die spezielle Anweisung die erste Pulsausgangsanweisung PLS für die erste Pulsausgangsschaltung 1060m ist, die oben unter Bezugnahme auf 12 beschrieben ist, und die spezielle Anweisung die Pulsfrequenz und die Anzahl erzeugter Pulse bestimmt, wird die Pulsfrequenz in einen Pulszyklus entsprechend einem inversen der Pulsfrequenz im Schritt 921 umgewandelt. Dann werden der erhaltene Pulszyklus und die Anzahl erzeugter Pulse zu der speziellen Einheit gesendet. Da die spezielle Einheit konfiguriert ist, um eine Beendigungsbenachrichtigung als das Benachrichtigungssignal 7060m bei der Beendigung einer Erzeugung der bestimmten Anzahl von Pulsen durchzuführen, geht der Prozess nicht weiter zu einem Schritt 921, und zwar basierend auf der Bestimmung im Schritt 919b, bis zu der Beendigung der Erzeugung von Pulsen. Als Ergebnis werden neue Einstelldaten nicht gesendet.
  • Auf die oben beschriebene Weise wird das im Programmspeicher 113A gespeicherte sequentielle Programm sequentiell ausgeführt. Dann, wenn die ENDE-Anweisung für die Beendigung des Programms gelesen ist, es im Schritt 922 als JA bestimmt und geht der Prozess weiter zu einem Schritt 923. Im Schritt 923 werden Zugriffe sequentiell zu den Latch-Speichern 125, 135 und 145 durchgeführt, die jeweils die I/O-Einheiten 120, 130 und 140 vorgesehen sind, um sequentiell den Inhalt des Ausgangsbildspeichers, der im Vorrichtungsspeicher 114a zugeteilt ist, zu den jeweiligen Latch-Speichern zu transferieren und zu schreiben. Jedoch ist es für die Ausgabe in der speziellen Einheit, an welche die spezielle Anweisung angelegt wird, erforderlich, dass der Inhalt des Ausgangsbildspeichers im AUS-Zustand ist.
  • Bei der Beendigung der Ausgabeverarbeitung im Schritt 923 geht der Prozess weiter zu einem Schritt 924. Nach der Verifizierung, dass der RUN-Schalter wieder auf EIN geschaltet ist, springt der Prozess zurück zu dem Schritt 911, um die Eingabeverarbeitung, die sequentielle Verarbeitung und die Ausgabeverarbeitung auf die oben beschriebene Weise zyklisch auszuführen. Einige programmierbare Steuerungen für eine Stapelverarbeitung der Eingabeverarbeitung und der Ausgabeverarbeitung vor oder nach der sequentiellen Verarbeitung durch, und die anderen programmierbaren Steuerungen lesen die Eingabeinformation direkt oder führen direkt die Ausgabeverarbeitung zu einer geeigneten Zeitgabe während der sequentiellen Verarbeitung durch. Obwohl das Stapelverarbeitungsverfahren hierin der Annehmlichkeit beschrieben wird, kann auch das direkte Verarbeitungsverfahren verwendet werden. Der oben beschriebene Betriebsablauf enthält einen Schritt 905 entsprechend dem Mittel für ein Einstellen einer Anormalitätserfassung, den Schritt 908 entsprechend dem Organisationsverarbeitungsmittel, einem Schritt 911 entsprechend der Eingabeverarbeitungseinrichtung, einen Schrittblock 918, der aus den Schritten 914 bis 917 aufgebaut ist, entsprechend dem Parameterbenachrichtigungsmittel, einen Schrittblock 920, der aus den Schritten 919a und 919b aufgebaut ist, entsprechend einem Transferverhinderungsmittel, einem Schritt 921 entsprechend einem Daten-Umwandlungs/Transfer-Mittel und einen Schritt 92 entsprechend dem Ausgabeverarbeitungsmittel.
  • Als Nächstes ist 20 ein allgemeines sequentielles Steuerschaltungsdiagramm der 1. In 20, entsprechen die 20(A) und 20(J) jeweils den Schritten 911 und 923 in 19. Diese I/O-Verarbeitungen werden durch das Steuerprogramm in den Systemspeicher 112A ausgeführt, und daher ist es für den Anwender nicht erforderlich, das Programm auszuführen. Die 20(B) bis 20(H) entsprechen der sequentiellen Verarbeitung im Schritt 912 in 19 und 20(H) stellt die ENDE-Anweisung für die Beendigung des sequentiellen Programms dar.
  • 20(B) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M0000 dar, wenn die Eingaberelais X000 und X001 beide in dem EIN-Zustand sind. Eine Berechnungsstartanweisung LD und eine Anweisung für einen seriellen Kontakt UND für den normalerweise offenen Kontakt und eine Spulenantriebsanweisung OUT werden verwendet. 20(C) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M0001 und zum Antreiben des Hilfsrelais M0002 auf eine selbsthaltende Weise dar, wenn das Eingangsrelais X002 nicht arbeitet oder das Hilfsrelais M0000 arbeitet und das Eingangsrelais X003 nicht arbeitet. Eine Berechnungsstartanweisung LDI für den normalerweise geschlossenen Kontakt und eine Anweisung für einen parallelen Kontakt ODER und eine Anweisung für einen seriellen Kontakt ANI für den normalerweise geschlossenen Kontakt, die Spulenantriebsanweisung OUT und eine Selbsthalte-Antriebsanweisung SET verwendet. In dem Fall der Spulenantriebsanweisung OUT wird dann, wenn ein Kontakt zum Antreiben der Spule geschlossen wird, die Spule aktiviert, um angetrieben zu werden. Wenn andererseits der Kontakt offen ist, wird die Spule deaktiviert. In dem Fall der Selbsthalte-Antriebsanweisung SET wird jedoch dann, wenn das Hilfsrelais einmal angetrieben wird, der Betriebszustand selbst dann gehalten, wenn die Antriebsschaltung geschlossen wird.
  • 20(D) stellt einen Schaltungsblock zum Antreiben des Zeitgebers T000 und zum Löschen des Selbsthaltezustands des Hilfsrelais M0002 dar, wenn das Hilfsrelais M0001 angetrieben wird oder das Eingangsrelais X004 arbeitet. Die Berechnungsstartanweisung LD für den normalerweise offenen Kontakt und die Anweisung für einen parallelen Kontakt ORI für den normalerweise geschlossenen Kontakt, die Spulenantriebsanweisung OUT und eine Selbsthalte-Löschanweisung RST werden verwendet. Die Antriebsanweisung OUT für den Zeitgeber hat einen Operanden zum Einstellen einer Verzögerungsbetriebszeit. Beispielsweise zeigt der Operand K100 eine Verzögerungsbetriebszeit von 1000 Sekunden an. Jedoch wird in einem Bereich von Zeitgeberzahlen eine andere Zeiteinheit verwendet. Beispielsweise werden einige Zeitgeber in msek eingestellt.
  • 20(E) stellt einen Schaltungsblock zum Antreiben des Ausgangsrelais Y0000 dar, wenn ein Verzögerungsbetriebskontakt T000 nach dem Verstreichen einer vorbestimmten Zeit ab dem Start eines Antreibens des Zeitgebers T000 geschlossen wird. Die LD-Anweisung und die OUT-Anweisung werden in diesen Schaltungsblock verwendet. 20(F) stellt einen Schaltungsblock zum Antreiben eines Zählers C000 durch das Eingangsrelais X000 dar. Die LD-Anweisung und die OUT-Anweisung werden in diesem Schaltungsblock verwendet. Die Antriebsanweisung OUT für den Zähler hat eine Sollanzahl K von Operationszeiten als Operanden.
  • Der in dem Schaltungsblock in 20(F) dargestellte Zähler C000 zeigt an, dass der Ausgangskontakt C000 geschlossen ist, wenn die Anzahl von Schaltoperationen des Eingangsrelais X000 eine Sollanzahl, d. h. 10, erreicht. Wenn daher das Eingangsrelais X000 eine Schaltoperation in einem Zyklus durchführt, der kürzer als der Berechnungszyklus der programmierbaren Steuerung 100A ist, wird die Zähloperation nicht durchgeführt. 20(G) stellt einen Schaltungsblock zum Rücksetzen des Zählers C000 dar, wenn das Eingangsrelais X001 ein Arbeiten beginnt. Die LD-Anweisung und die RST-Anweisung werden in dem Schaltungsblock verwendet. Die RST-Anweisung für den Zähler löscht die Operation des Ausgangskontakts des Zählers und setzt den aktuellen Zählwert des Zählers zurück.
  • Der Berechnungszyklus zum sequentiellen Ausführen des in dem Programmspeicher 113A gespeicherten sequentiellen Programms, um die zyklische Operation durchzuführen, wird in Abhängigkeit von dem Inhalt der Anweisung und von der Anzahl von zu verwendenden Anweisungen variiert. Im Allgemeinen ist der Berechnungszyklus beispielsweise 10 bis 100 msek. Um eine fehlerhafte Operation aufgrund von Rauschen zu vermeiden, ist eine Ansprechverzögerungszeit von beispielsweise etwa 10 msek durch ein Rauschfilter für den Eingangssignalanschluss vorgesehen. Daher kann in dem Fall des in 20(F) dargestellten Zählers C000 beispielsweise selbst dann, wenn der Berechnungszyklus 10 msek ist, eine richtige Zähloperation nicht ohne eine EIN-Zeitbreite und eine AUS-Zeitbreite durchgeführt werden, wobei jede 20 msek oder länger ist. Daher ist eine zählbare Frequenz 25 Hz oder kleiner. Darüber hinaus kann dann, wenn das Pulssignal durch das sequentielle Programm auszugeben ist, ein Hochgeschwindigkeitspuls von 50 Hz oder höher nicht ausgegeben werden, wenn der Berechnungszyklus 10 msek ist. Andererseits berücksichtigt der Hochgeschwindigkeitszähler oder der nachfolgend beschriebene Hochgeschwindigkeitspulsausgang die Handhabung eines Pulssignals von beispielsweise 100 kHz oder geringer.
  • Als Nächstes wird auf die 21 und 22 Bezug genommen werden, die eine beispielhafte Verwendung der Anweisung für ein variables Filter REF, der Pulsdichtemessungs-Anweisung FREQ und der Flankenerfassungsanweisung EDG darstellen. 21(A) stellt einen Schaltungsblock zum Anlegen der Anweisung für ein variables Filter REF an den Eingang X010 der speziellen Einheit 130 dar, um die Filterkonstante auf K5 (5 msek) einzustellen, um das Hilfsrelais M0010 anzutreiben, wenn das spezielle Hilfsrelais M8000 geschlossen ist. Das spezielle Hilfsrelais M8000 wird automatisch aktiviert, wenn der RUN-Schalter der programmierbaren Steuerung 100A im EIN-Zustand ist. Daher wird dann, wenn der EIN/AUS-Schaltsensor X010, der mit der speziellen Einheit 130 verbunden ist, eine EIN/AUS-Operation durchführt, wie es in 21(B) dargestellt ist, eine Ansprechverzögerung von 5 msek erzeugt, wie es in 21(C) dargestellt ist, und zwar für das in den Benachrichtigungsbitspeicher 7000n (in diesen Fall gilt n = 0) in 5 gespeicherte Eingangssignal. Als Ergebnis wird dann, wenn der EIN/AUS-Schaltsensor X010 die EIN-Operation für eine kurze Zeit durchführt, das Benachrichtigungssignal M0010 nicht erkannt.
  • Das Benachrichtigungssignal 7010n basierend auf dem Benachrichtigungsbitspeicher 7000n wird zu dem Hilfsrelais M0010 des Vorrichtungsspeichers 114a auf eine Ausführung der REF-Anweisung hin transferiert. Für einen zweiten Operanden der REF-Anweisung kann beispielsweise eine Zeit von 1 bis 63 msek als eine Sollansprechverzögerungszeit eingestellt werden. Der Zyklus τ des von der in 5 dargestellten gemeinsamen Taktschaltung 9001 erzeugten Taktsignals ist beispielsweise 1 μsek. Der Einstellwert einer oberen Grenze des Vorwärts/Rückwärts-Zählers 2000n zum Erhalten von 1 msek als die Ansprechverzögerungszeit ist 1000. Daher transferiert der Mikroprozessor 111 einen numerischen Wert von 5000, der durch Multiplizieren der Ansprechverzögerungszeit 5 msek mit 1000 erhalten ist, zu dem Pufferspeicher 114b, um die Ansprechverzögerungszeit von 5 msek zu erhalten. Der transferierte numerische Wert wird dann als die Einstelldaten 3010n zum ersten Einstellregister 3001n transferiert.
  • 21(D) stellt einen Schaltungsblock zum Messen einer Pulsdichte des Eingangssignals X011 der speziellen Einheit 130 dar, um die erhaltene Pulsdichte zu dem Datenregister D0100 zu senden, wenn das Eingangsrelais X001 ein Arbeiten beginnt. 21(E) stellt eine Pulskette des Eingangssignals X011 dar. 21(F) stellt eine Variation bezüglich des aktuellen Zählerwerts des Registers für einen aktuellen Wert 4001n des Vorwärts/Rückwärts-Zählers 2000n in der Pulsdichtemessungs-Schaltung 1020n (in diesem Fall gilt n = 1), die in 6 dargestellt ist, dar. 21(G) stellt eine Ausgangskennlinie der gemeinsamen Triggerschaltung 9002 dar. Nachdem der aktuelle Zählerwert des Vorwärts/Rückwärts-Zählers 2000n zu dem Spitzenhalteregister 4002n für jeden Zyklus T0 transferiert ist, wird das Register für einen aktuellen Wert 4001n rückgesetzt.
  • Daher zeigt ein Wert des Spitzenhalteregisters 4002n, der zu dem Datenregister D0100 durch Verwenden der Berechnungsdaten 4020n transferiert ist, die Anzahl von Operationen des Eingangssignals X011 innerhalb des Zyklus T0 an. Wenn der Zyklus T0 des Triggersignals beispielsweise 10 msek ist, wird jedoch der Wert des Spitzenhalteregisters 4002n, der zu dem Pufferspeicher 114b transferiert worden ist, mit 1000 multipliziert und dann zu dem Datenregister D0100 transferiert. Letztlich wird eine EIN/AUS-Schaltfrequenz (in Hz) des Eingangssignals X011 pro Sekunde erhalten.
  • In 22 stellt 22(A) einen Schaltungsblock zum Antreiben der Flankenerfassungsanweisung EDG dar, wenn das Eingangsrelais X002 ein Arbeiten beginnt. Für einen ersten Operanden der Flankenerfassungsanweisung EDGE wird der Eingang X012 der speziellen Einheit 130 als ein Solleingang bezeichnet. Für einen zweiten Operanden wird eine Anzahl des Anfangs-Hilfsrelais zum Speichern des Ergebnisses einer Erfassung bezeichnet. Bei diesem Beispiel wird das Ergebnis einer Erfassung einer Anstiegsflanke des Eingangs X012, spezifisch ein Übergang der Eingabe X012 von AUS zu EIN, im Hilfsrelais M0030 gespeichert. Das Ergebnis einer Erfassung einer Abfallflanke der Eingabe X012, spezifisch ein Übergang der Eingabe X012 von EIN zu AUS, wird im Hilfsrelais M0031 gespeichert. 22(B) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M0040 auf eine selbsthaltende Weise durch das Hilfsrelais M0030 dar, welches auf eine Erfassung der Anstiegsflanke hin arbeitet. 22(C) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M0041 auf eine selbsthaltende Weise durch das Hilfsrelais M0031 dar, welches auf eine Erfassung der Abfallflanke hin arbeitet. 22(D) stellt einen Schaltungsblock zum Rücksetzen des Hilfsrelais M0030 durch das Hilfsrelais M0040 dar, um die Anstiegsflankenerfassung zu löschen. 22(E) stellt einen Schaltungsblock zum Rücksetzen des Hilfsrelais M0031 durch das Hilfsrelais M0041 dar, um die Abfallflankenerfassung zu löschen. Die Flankenerfassungsanweisung EDGE ist zum Erfassen des Vorhandenseins einer Pulseingabe geeignet, die kürzer als der Berechnungszyklus des Mikroprozessors 111 ist.
  • Als Nächstes wird auf 23 Bezug genommen werden, die eine beispielhafte Verwendung einer Hochgeschwindigkeitszähleranweisung HSC, der Hochgeschwindigkeitsvergleichsanweisung HCMP und der Pulsbreitenmessungsanweisung PWD darstellt. In 23 stellt 23(A) einen Schaltungsblock zum Betreiben eines Hochgeschwindigkeitszählers C24014 durch die Hochgeschwindigkeitszähleranweisung HSC auf einen Start einer Operation des Eingangsrelais X005 dar, um eine Hochgeschwindigkeits-Vergleichsübereinstimmungsausgabe durch die Hochgeschwindigkeitsvergleichsanweisung HCMP zu erhalten. Basierend auf der Erweiterungsnummer bb = 24 in 16 ist der Hochgeschwindigkeitszähler C24014, der durch einen ersten Operanden der HSC-Anweisung oder der HCMP-Anweisung, die hierin verwendet ist, bezeichnet ist, ein Hochgeschwindigkeitszähler, der eine Aufwärtszähloperation in Reaktion auf das Eingangssignal X014 zu der speziellen Einheit 130 und eine Abwärtszähloperation in Reaktion auf das Eingangssignal X015 durchführt.
  • Für einen zweiten Operanden der HSC-Anweisung wird ein oberer Grenzwert, der in dem ersten Einstellregister 3001m des Vorwärts/Rückwärts-Zählers 2000m (bei diesem Beispiel gilt m = 4), der in 10 dargestellt ist, zu speichern ist, direkt als K3000 bezeichnet. Der obere Grenzwert kann auch durch Verwenden des Datenregisters indirekt eingestellt werden. In diesem Fall wird eine Nummer des Datenregisters, in welches der obere Grenzwert geschrieben wird, durch den zweiten Operanden bezeichnet.
  • Wenn die durch den ersten Operanden bezeichnete Hochgeschwindigkeitszählernummer anzeigt, dass der Hochgeschwindigkeitszähler ein 1-Phase-1-Eingang-Zähler mit der Erweiterungsnummer bb von 00 bis 19 in 16 ist, hat die HSC-Anweisung einen dritten Operanden. Der dritte Operand bezeichnet eine Hilfsrelaisnummer, durch welche die Zählrichtung, spezifisch ein Aufwärtszählen oder ein Abwärtszählen, geführt wird. Bei dem dargestellten Beispiel wird dann, wenn das Hilfsrelais M8910 auf EIN geschaltet wird, eine Aufwärtszähloperation durchgeführt. Wenn das Hilfsrelais auf AUS geschaltet wird, wird eine Abwärtszähloperation durchgeführt.
  • Als zweiter Operand der HCMP-Anweisung wird ein mittlerer Einstellwert, der zu dem zweiten Einstellregister 3002m in 10 zu transferieren ist, gespeichert. Bei dem dargestellten Beispiel wird der mittlere Einstellwert indirekt durch eine Datenregisternummer D0150 eingestellt, die den mittleren Einstellwert speichert. Wenn der aktuelle Zählerwert des Hochgeschwindigkeitszählers C24014 sich erhöht, um den mittleren Einstellwert zu übersteigen, arbeitet die Vergleichsübereinstimmungsausgabe Y014. Gleichzeitig führt das durch den dritten Operanden bezeichnete Hilfsrelais M8920 die EIN-Operation durch.
  • 23(B) stellt einen Schaltungsblock zum Antreiben des Ausgangsrelais Y000 in Reaktion auf die Aufwärtszählausgabe von dem Hochgeschwindigkeitszähler C24014 dar. 23(C) stellt einen Schaltungsblock zum Rücksetzen des Hochgeschwindigkeitszählers C24014 auf einen Start einer Operation des Hilfsrelais M0021 dar, welches durch eine weitere Sequenz (die nicht gezeigt ist) gesteuert wird. Als Ergebnis wird der Wert des Registers für einen aktuellen Wert 4001m des Vorwärts/Rückwärts-Zählers 2000m in 10 Null, während der Ausgangskontakt C24014 auf AUS geschaltet wird.
  • 23(D) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M0020 auf eine selbsthaltende Weise durch das Hilfsrelais M8920 dar, welches auf einem Start einer Operation der Aufwärtsvergleichs-Übereinstimmungsausgabe P von dem Hochgeschwindigkeitszähler C24014 in Reaktion auf die HCMP-Anweisung hin arbeitet. 23(E) stellt einen Schaltungsblock zum Löschen des Selbsthaltezustands des Hilfsrelais M8920 dar, das durch die Aufwärtszählvergleichs-Übereinstimmungsausgabe P mit der Operation des Hilfsrelais M0020 angetrieben wird. Wenn der Selbsthaltezustand gelöscht wird, wird das Hilfsrelais M8920 deaktiviert. Gleichzeitig wird die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückgesetzt.
  • 23(F1) stellt einen Schaltungsblock dar, der die durch ein spezielles Hilfsrelais M8000 angetriebene Pulsbreitenmessungsanweisung PWD anzeigt, das während der Operation konstant angetrieben wird. Ein erster Operand der PWD-Anweisung bezeichnet eine Eingangsanschlussnummer entsprechend einem Ziel der Pulsbreitenmessung. Bei diesem beispielhaften Fall wird ein Eingang X013 der I/O-Einheit 130 bezeichnet. Ein zweiter Operand bezeichnet eine Nummer des Datenregisters, das eine gemessene Zeitbreite speichert, während ein dritter Operand eine Nummer des Hilfsrelais bezeichnet, das durch ein Messungsbeendigungsbenachrichtigungssignal betrieben wird.
  • Bei diesem beispielhaften Fall zählt dann, wenn der logische Pegel des Eingangssignals X013, das mit dem Kanalanschluss 11n verbunden ist, sich zu "H" in der Pulsbreitenmessungsschaltung 1022n (bei diesem beispielhaften Fall gilt n = 3), die in 7 dargestellt ist, ändert, der Vorwärts/Rückwärts-Zähler 2000n die Taktsignale, die jeweils den Zyklus τ von 1 μsek haben. Eine gemessene Zeit bei dem Übergang des logischen Pegels des Eingangssignals X013 zu "L" wird im Spitzenhalteregister 4002n gespeichert. Das Ergebnis einer Messung wird zu dem Mikroprozessor 111 als die in dem Datenregister D0260 zu speichernde Berechnungsdaten 4022n gesendet. Messungsbeendigungsinformation wird durch Verwenden des Benachrichtigungssignals 7022n gesendet, um das Hilfsrelais M8950 anzutreiben. In 23(F2) wird ein durch Multiplizieren des Ergebnisses einer reziproken Berechnung des Werts des Datenregisters D0260 mit 1000 in Reaktion auf eine Teilungsanweisung DIV erhaltener Wert im Datenregister D0261 gespeichert.
  • In 23(F3) wird dann, wenn das Hilfsrelais M8950 durch seinen eigenen Kontakt M8950 rückgesetzt wird, das Befehlssignal 6022n zu dem Befehls-Latch-Speicher 6000n gesendet, um die Speicherschaltung 63 rückzusetzen, um dadurch die Messung der Pulsbreite erneut zu starten. Die Datenkommunikation zwischen der Logikschaltungseinheit und dem Mikroprozessor wird durchgeführt, wenn die spezielle Anweisung ausgeführt wird. Daher wird dann, wenn die zu messende Pulsbreite länger als der Berechnungszyklus des Mikroprozessors ist, die Pulsbreite durch die Operation des Mikroprozessors in einer Vielzahl von Zyklen gemessen. Wenn andererseits die zu messende Pulsbreite kürzer als der Berechnungszyklus des Mikroprozessors ist, wird die Pulsbreite für jeden Berechnungszyklus des Mikroprozessors gemessen und aktualisiert.
  • Als Nächstes wird auf 24 Bezug genommen werden, die eine beispielhafte Verwendung der ersten Pulsausgangsanweisung PLS darstellt. In 24 stellt 24(F) einen Schaltungsblock der ersten Pulsausgangsanweisung PLS dar, die dann angetrieben wird, wenn das durch eine weitere Sequenz (die nicht gezeigt ist) betriebene Hilfsrelais M0000 arbeitet. Die Hochgeschwindigkeitsausgabe Y06026, die durch einen ersten Operanden der PLS-Anweisung bezeichnet ist, enthält die Erweiterungsnummer bb = 06, die in 17 dargestellt ist, in ihrer Zahl, die Vorwärtsdrehpulsausgabe FP wird von dem Ausgangsanschluss Y026 erzeugt, während der Rückwärtsdrehpuls RP von dem benachbarten Ausgangsanschluss Y027 erzeugt wird.
  • Die Nummer des Datenregisters D0200, die durch einen zweiten Operanden der Anweisung PLS bezeichnet ist, entspricht einer Nummer eines Anfangs-Datenregisters für verschiedene Einstelldaten. Ein Paar von Datenregistern (D0201 und D0200) bezeichnen eine 32-Bit-Sollanzahl von zu erzeugenden Pulsen. Ein darauffolgendes Datenregister D0202 bezeichnet die Anzahl von zu erzeugenden Pulsen bei dem Betrieb niedriger Geschwindigkeit, ein darauffolgendes Datenregister D0203 bezeichnet einen Zyklus des erzeugten Pulses bei dem Betrieb hoher Geschwindigkeit in μsek und ein darauffolgendes Datenregister D0204 bezeichnet einen Zyklus des erzeugten Pulses bei dem Betrieb niedriger Geschwindigkeit in μsek.
  • Die Einstellwerte wie diejenigen, die oben beschrieben sind, werden zu dem ersten Einstellregister 3001·7 (ein halber Wert der Sollanzahl von zu erzeugenden Schrittpulsen) und dem zweiten Einstellregister 3002·7 (der Anzahl von Schrittpulsen niedriger Geschwindigkeit) und dem ersten Einstellregister 3001·6 (dem Zyklus des Pulses niedriger Geschwindigkeit) und dem zweiten Einstellregister 3002·6 (dem Zyklus des Pulses hoher Geschwindigkeit) als die Einstelldaten 3060m (bei diesem beispielhaften Fall gilt m = 6) in 12 gesendet. Ein Drehrichtungsbefehl wird als das Befehlssignal 6060·6 gesendet.
  • Jedoch werden die halben Werte der Sollzyklen, die jeweils durch die Datenregister D0203 und D0204 bezeichnet sind, durch den Pufferspeicher 114b zu dem ersten Einstellregister 3001·6 und dem zweiten Einstellregister 3002·6, und zwar jeweils, gesendet. Darüber hinaus wird ein halber Wert der Sollanzahl von Schrittpulsen, die durch die Datenregister (D0201 und D0200) bestimmt sind, durch den Pufferspeicher 114b zu dem ersten Einstellregister 3201·7 gesendet. Als Ergebnis ist der Zyklus des Ausgangspulses von der alternativen Ausgangsschaltung 84 in 12 gleich dem Sollzyklus, der durch das Datenregister D0203 oder D0204 bestimmt ist. Wenn der Inhalt der Datenregister (D0201 und D0200) einen positiven Wert hat, wird der Vorwärts/Vorwärts-Drehpuls erzeugt. Andererseits wird dann, wenn der Inhalt einen negativen Wert hat, der Rückwärts/Rückwärts-Drehpuls erzeugt. Jedoch ist es immer ein Absolutwert, der zu dem ersten Einstellregister 3001·7 gesendet wird. Die Drehrichtung wird durch das Befehlssignal 6060·6 geführt bzw. geleitet.
  • Die Nummer des Hilfsregisters M8920, die durch einen dritten Operanden der Anweisung PLS bezeichnet bzw. bestimmt ist, ist eine Nummer eines Anfangs-Hilfsrelais für verschiedene Befehlssignale und Benachrichtigungssignale. Da Hilfsrelais M8920 dient für einen Befehl eines erzwungenen Stopps, das nächste Hilfsrelais M8921 dient für einen Stoppbefehl für eine Vorwärtsdrehungsbegrenzung, das nächste Hilfsrelais M8922 dient für einen Stoppbefehl für eine Rückwärtsdrehungsbegrenzung und das darauffolgende Hilfsrelais M8923 dient für eine Pulsausgangsbeendigungsbenachrichtigung. Eine Einheitenumwandlungskonstante ist in dem Datenregister D0205 nachfolgend zu dem Datenregister D0204 gespeichert. Alternativ dazu ist in den Datenregistern (D0201 und D0200) ein Sollausmaß einer Bewegung (beispielsweise in mm) anstelle der Sollanzahl von zu erzeugenden Pulsen bestimmt bzw. bezeichnet. In diesem Fall ist es möglich, die Sollanzahl von zu erzeugenden Pulsen durch Multiplizieren des Sollausmaßes einer Bewegung mit der Einheitenumwandlungskonstanten zu erhalten.
  • In 24 stellt 24(A) einen Schaltungsblock zum Antreiben einer 32-Bit-Transferanweisung DMOV und einer 16-Bit-Transferanweisung MOV dar, die durch das spezielle Hilfsrelais M8002 angetrieben werden, das nur für einen Berechnungszyklus bei dem Start einer Operation auf EIN geschaltet wird, und das Hilfsrelais M8923, das als das Pulsausgangsbeendigungssignal dient, und das Hilfsrelais M8010 für eine Transferverifizierung. In dem Fall der DMOV-Anweisung wird eine durch einen ersten Operanden davon bestimmte Konstante K40000 zu dem Paar von Datenregistern (D0201 und D0200) gesendet, für welche das durch einen zweiten Operanden bestimmte Datenregister ein unteres Datenregister ist.
  • Bei der MOV-Anweisung wird eine durch einen ersten Operanden davon bestimmte Konstante K5000 zu dem Datenregister D0202 transferiert, das durch einen zweiten Operanden bestimmt ist. Bei der nächsten MOV-Anweisung wird eine durch einen ersten Operanden davon bestimmte Konstante K50 zu dem Datenregister D0203 transferiert, das durch einen zweiten Operanden bestimmt ist. Bei der darauffolgenden MOV-Anweisung wird eine durch einen ersten Operanden davon bestimmte Konstante K100 zu dem Datenregister D0204 transferiert, das durch einen zweiten Operanden bestimmt ist. Daher werden ein Puls mit einem Hochgeschwindigkeitszyklus von 50 μs (20 kHz in Bezug auf die Pulsfrequenz) und ein Puls mit einem Zyklus niedriger Geschwindigkeit von 100 μs (10 kHz in Bezug auf die Pulsfrequenz) erzeugt. Die Anzahl von Pulsen niedriger Geschwindigkeit ist 5000 und eine Gesamtanzahl erzeugter Pulse ist 40000. Wenn ein indirektes Einstellverfahren zum Bestimmen der Datenregisternummer anstelle des direkten Einstellverfahrens unter Verwendung der Konstanten K verwendet wird, können die Einstellwerte wie diejenigen, die oben beschrieben sind, während der Operation geändert werden.
  • 24(B) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8920 dar, das als der Befehl für einen erzwungenen Stopp auf eine Operation des Eingangsrelais X000 hin dient. 24(C) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8921 dar, das als der Stoppbefehl für eine Vorwärtsdrehungsbegrenzung dient, und zum Antreiben der 32-Bit-Transferanweisung DMOV zum Transferieren und Schreiben einer Konstanten K80000 zu dem Paar von Datenregistern (D0221 und D0220) auf eine Operation des Eingangsrelais X001 hin. 24(D) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8922 dar, das als der Stoppbefehl für eine Rückwärtsdrehungsbegrenzung dient, und die 32-Bit-Transferanweisung DMOV zum Transferieren und Schreiben einer Konstanten K200 zu dem Paar von Datenregistern (D0221 und D0220) auf eine Operation des Eingangsrelais X002 hin dient.
  • 24(E) stellt einen Schaltungsblock zum Rücksetzen eines Hilfsrelais M8923 dar, das als Ergebnis der Beendigung von Pulsausgaben gearbeitet hat, durch das Hilfsrelais M8010, das durch den in 24(A) dargestellten Schaltungsblock angetrieben wird. Daher wird dann, wenn das Hilfsrelais M0000 in 24(F) geschlossen ist, die erste Pulsanweisung PLS ausgeführt, um die Einstelldaten 3060·6 oder das Befehlssignal 6060·6, die in 11 gezeigt sind, zu der ersten Pulsausgangsschaltung 1060·6 zu senden. Als Ergebnis wird das Pulsausgabebeendigungssignal rückgesetzt, um Konstanten jeweils für die ersten Einstellregister 3001·6 und 3001·7 und die zweiten Einstellregister 3002·6 und 3002·7 einzustellen.
  • 24(G) stellt einen Schaltungsblock zum Antreiben einer Leseanweisung für eine aktuelle Position DCVRD durch das Hilfsrelais M0001 dar, das durch eine Ablauffolgenschaltung bzw. Sequenzschaltung (nicht gezeigt) angetrieben wird. Ein erster Operand der DCVRD-Anweisung bestimmt eine Hochgeschwindigkeitspulsausgabennummer Y06026 und ein zweiter Operand bestimmt eine untere Datenregisternummer für das Paar der Datenregister (D0221 und D0220), die die 32-Bit-Daten handhaben. Auf eine Ausführung der DCVRD-Anweisung hin wird ein Wert des Registers für einen aktuellen Wert 4001·7 in 12 in den Pufferspeicher 114b gelesen. Dann wird der gelesene Wert in die Anzahl erzeugter Schrittpulse gemäß einer Bewegungsrichtung, einem Betriebszustand der Aufwärtszählvergleichs-Übereinstimmungsausgabe P, einem Betriebszustand der Aufwärtszählausgabe Q, einem Betriebszustand der Abwärtszählvergleichs-Übereinstimmungsausgabe P, und einem Betriebszustand der Rücksprungausgabe Q umgewandelt und wird dann algebraisch zu den Datenregistern (D0221 und D0220) addiert. Wie es in 24(C) oder 24(D) dargestellt ist, wird die vorbestimmte aktuelle Position zu den Datenregistern (D0221 und D0220) bei der Vorwärtsdrehungsbegrenzungsposition oder der Rückwärtsdrehungsbegrenzungsposition transferiert und geschrieben. Daher werden Absolutpositionsinformationen basierend auf den Referenzpositionen wie denjenigen, die oben beschrieben sind, erhalten.
  • Als Nächstes wird auf 25 Bezug genommen werden, die eine beispielhafte Verwendung der zweiten Pulsausgabeanweisung DRV darstellt, und auf 26, die ein Kennliniendiagramm ist, das ein Beschleunigungs/Abbrems-Muster darstellt. In 25 stellt 25(F) einen Schaltungsblock der zweiten Pulsausgabeanweisung DRV dar, die auf eine Operation des Hilfsrelais M0000 angetrieben wird, das durch eine andere Sequenz (nicht gezeigt) betrieben wird. Da eine Nummer der Hochgeschwindigkeitsausgabe Y10020, die durch einen ersten Operanden der DRV-Anweisung bestimmt ist, eine Erweiterungsnummer bb = 10 enthält, die in 17 dargestellt ist, wird die Vorwärtspulsausgabe FP von dem Ausgangsanschluss Y020 erzeugt, während der Rückwärtsdrehpuls RP von dem benachbarten Ausgangsanschluss Y021 erzeugt wird.
  • Auf die Verwendung der Anweisung für ein Zurückkehren zu Null ZRN, die nachfolgend beschrieben wird, hin, wird das Löschsignal CLR von dem benachbarten Ausgangsanschluss Y022 erzeugt.
  • Das Datenregister D0300 mit der Nummer, die durch einen zweiten Operanden der DRV-Anweisung bestimmt ist, zeigt an, dass das Datenregister das Anfangsdatenregister für verschiedene Einstelldaten ist. Der Inhalt zum Einstellen wird unter Bezugnahme auf die 24(A1) bis 24(A4) beschrieben werden. Das Hilfsrelais M8940 mit der Nummer, die durch einen dritten Operanden der DRV-Anweisung bestimmt ist, entspricht dem Anfangshilfsrelais von verschiedenen Befehlssignalen und Benachrichtigungssignalen. Das Hilfsrelais M8940 dient für den Befehl für einen erzwungenen Stopp, das nächste Hilfsrelais M8941 dient für den Stoppbefehl für eine Vorwärtsdrehungsbegrenzung, das nächste Hilfsrelais M8942 dient für den Stoppbefehl für eine Rückwärtsdrehungsbegrenzung und das nachfolgende Hilfsrelais M8943 dient für die Pulsausgabenbeendigungsbenachrichtigung.
  • In 25 stellen die 25(A1) bis 25(A5) einen Schaltungsblock zum Antreiben verschiedener Transferanweisungen dar, die durch das spezielle Hilfsrelais M8002 angetrieben werden, das nur für einen Berechnungszyklus bei dem Start einer Operation auf EIN geschaltet bleibt, und das Hilfsrelais M8943, das als das Pulsausgabenbeendigungssignal dient, und das Hilfsrelais M8040 für eine Transferverifizierung. Die erste Transferanweisung DMOV dient zum Schreiben einer Solloperationsgeschwindigkeit zum einem Paar von Datenregistern (D0301 und D0300) in einer Pulsfrequenz Hz. In diesem Fall ist eine Pulsfrequenz von 50 kHz durch eine Konstante K50000 bestimmt. Die nächste Transferanweisung MOV dient zum Schreiben einer Anfangsoperationsgeschwindigkeit zu dem Datenregister D0302 in einer Pulsfrequenz Hz. In diesem Fall ist eine Pulsfrequenz von 10 kHz durch eine Konstante K10000 bestimmt. Die darauffolgende Transferanweisung MOV dient zum Schreiben einer Beschleunigungs/Abbrems-Zeit Δt (μsek) zu dem Datenregister D0303, wenn ein Inkrement der Frequenz Δf, das in 26 dargestellt ist, 1024 Hz ist. In diesem Fall ist 10 msek durch eine Konstante K1000 eingestellt.
  • Daher ist eine Zeit, die für die Geschwindigkeit erforderlich ist, um die Solloperationsgeschwindigkeit von der Anfangsgeschwindigkeit aus zu erreichen, folgende: 10 × (50 – 10)/1024 = 390,6 msek. Die nächste Transferanweisung DMOV dient zum Schreiben eines Sollausmaßes einer Bewegung zu einem Paar von Datenregistern (D0305 und D0304) in einer Anzahl erzeugter Pulse. Das eingestellte Sollausmaß einer Bewegung hat einen positiven oder negativen Wert in Abhängigkeit von einer Bewegungsrichtung. In diesem Fall wird durch eine positive Konstante K200,00 eine Vorwärtsdrehungsoperation für 200,000 Pulse durchgeführt. Das darauffolgende Hilfsrelais M8040 verifiziert den Transfer.
  • 25(B) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8940 dar, das als der Befehl für einen erzwungenen Stopp auf eine Operation des Eingangsrelais X000 hin dient. 25(C) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8941 dar, das auf eine Operation des Eingangsrelais X001 hin als der Vorwärtsdrehungsstoppbefehl dient. 25(D) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8942 dar, das auf eine Operation des Eingangsrelais X002 hin als der Rückwärtsdrehungsstoppbefehl dient. 25(E) stellt einen Schaltungsblock zum Rücksetzen des Hilfsrelais M8943 dar, das als Ergebnis der Pulsausgabenbeendigung gearbeitet hat, durch das Hilfsrelais M8040, das durch den in 25(A5) dargestellten Schaltungsblock angetrieben wird. Die Einstellwerte in den 25(A1) bis 25(A4) und die Befehle in den 25(B) bis 25(E) werden zu jeder der Einheiten der in 13 dargestellten zweiten Pulsausgangsschaltung 1070·0 durch den Pufferspeicher 114b transferiert, wenn die zweite Pulsausgabeanweisung DRV in 25(F) ausgeführt wird.
  • Für die zu der zweiten Pulsausgabeschaltung 1070·0 zu transferierenden Daten wird eine Abbremsstartposition im Voraus durch den Mikroprozessor 111 gemäß dem in 26 dargestellten Operationsgeschwindigkeitsmuster berechnet. In diesem beispielhaften Fall ist eine Zeit, die für die Beendigung eines Abbremsens ab der Operationsgeschwindigkeit von 50 kHz erforderlich ist, folgende: 50 × 10 msek = 0,5 sek. Daher ist die Anzahl von Pulsen, die während dieser Zeitperiode erzeugt sind folgende: ΔN = 50 × 103 × 0,5/2 = 12500. Daher ist die Anzahl von Pulsen, die bis zu der Abbremsstartstelle erzeugt werden, folgende: 200.000 – 12.500 = 187.500.
  • Ein halber Wert der Beschleunigungs/Abbrems-Zeit, nämlich 10.000 μsek, der im Datenregister D0303 gespeichert ist, spezifisch 5000, ist in dem ersten Einstellregister 3001·0 des ersten Vorwärts/Rückwärts-Zählers 2000·0 in 13 gespeichert. Als Ergebnis ist ein Zyklus des Ausgangssignals von der alternativen Ausgangsschaltung 97 der Sollzyklus, d. h. 10000 μsek = 10 msek. Die Solloperationsgeschwindigkeit von 50.000, die in den Datenregistern (D0301 und D0300) gespeichert ist, wird in das erste Einstellregister 3001·1 des nächsten Vorwärts/Rückwärts-Zählers 2000·1 geschrieben. Die Anfangsgeschwindigkeit 10000, die in dem Datenregister D0302 gespeichert ist, wird in das Datenregister 3002·1 und das Register für einen aktuellen Wert 4001·1 geschrieben. Die inkrementelle/dekrementelle Frequenz Δf = 1024 in 26 wird in das Variations-Einstellregister 4003·1 geschrieben.
  • Als Ergebnis erhöht sich als das Operationsgeschwindigkeitsmuster die Operationsgeschwindigkeit von der Anfangsgeschwindigkeit von 10 kHz mit der Rate von etwa 1 kHz pro 10 msek zu der Solloperationsgeschwindigkeit von 50 kHz. Wenn die Operationsgeschwindigkeit die Solloperationsgeschwindigkeit erreicht, arbeitet die Aufwärtszählausgabe Q, um ein Erhöhen des Werts des Registers für einen aktuellen Wert 4001·1 zu stoppen. Die inkrementelle/dekrementelle Frequenz Δf wird auf 1024 eingestellt, weil dieser Wert eine binäre Addition für das Register für einen aktuellen Wert 4101·1 erleichtert. Daher entsteht selbst dann kein Problem, wenn die inkrementelle/dekrementelle Frequenz Δf auf 1000 eingestellt wird. Beispielsweise wird ein Koeffizient von 500.000 entsprechend einem Quintupel der maximalen Operationsgeschwindigkeit von 100 kHz in dem ersten Einstellregister 3001·2 des dritten Vorwärts/Rückwärts-Zählers 2000·2 gespeichert. Als Ergebnis ist es dann, wenn das Variations-Einstellregister 4003·2 50.000 entsprechend der Solloperationsgeschwindigkeit von 50 kHz speichert, nötig, zehn vor der Operation der Aufwärtszählausgabe Q zu zählen.
  • Da der Zyklus τ des Zähleingangssignals des Vorwärts/Rückwärts-Zählers 2000·2 1 μsek ist, ist der Zyklus des Ausgangspulses von der alternativen Ausgabeschaltung 47 20 μsek, was der Frequenz der Solloperationsgeschwindigkeit, nämlich 50 kHz, entspricht. Die Anzahl N erzeugter Pulse entsprechend dem Sollausmaß an Bewegung, die in den Datenregistern (D0305 und D0304) gespeichert ist, nämlich N = 200.000, wird zu dem ersten Einstellregister 3001·3 des letzten Vorwärts/Rückwärts-Zählers 2000·3 geschrieben. Die Anzahl von Pulsen, die bis zu der Abbremsstartstelle erzeugt werden, d. h. 187.500, wird zu dem zweiten Einstellregister 3002·3 geschrieben. Die Drehrichtung wird zu dem Befehls-Latch-Speicher 6000·0 durch Verwenden des Befehlssignals 6070·0 gesendet.
  • Als Ergebnis arbeitet dann, wenn der aktuelle Zählerwert des Referenzzählers 2000·3, der die Anzahl erzeugter Ausgangspulse zählt, die Anzahl erzeugter Pulse bis zu der Abbremsstartstelle erreicht, die Aufwärtszählvergleichs-Übereinstimmungsausgabe P, um einen Subtraktionsstartbefehl durch das ODER-Element 95a und das Gatterelement 95b zu dem Vorwärts/Rückwärts-Zähler 2000·1 zuzuführen. Der Vorwärts/Rückwärts-Zähler 2000·1 beginnt eine Subtraktion mit der Rate von etwa 1 kHz pro 10 msek. Wenn der Wert die in dem zweiten Einstellregister 3002·1 gespeicherte Anfangsgeschwindigkeit erreicht, arbeitet die Abwärtszählvergleichs-Übereinstimmungsausgabe P (bei dem logischen Pegel "H"), um die Subtraktionsoperation durch das Gatterelement 95b zu stoppen. Als das Geschwindigkeitsmuster wird die Anfangsgeschwindigkeit beibehalten.
  • Wenn der aktuelle Zählerwert des Vorwärts/Rückwärts-Zählers 2000·3 das Sollausmaß aus einer Bewegung erreicht, arbeitet die Aufwärtszählausgabe Q, um ein Beendigungsbenachrichtigungssignal zu senden. Gleichzeitig wird die Operation von jedem der Vorwärts/Rückwärts-Zähler gestoppt. In den 25(A1) bis 25(A4) können dann, wenn das indirekte Einstellverfahren zum Bestimmen bzw. Bezeichnen der Datenregisternummer ohne Verwenden der Konstanten K anstelle des direkten Einstellverfahrens verwendet wird, die Einstellwerte wie diejenigen, die oben beschrieben sind, während der Operation geändert werden. Während der Operation von jedem der Vorwärts/Rückwärts-Zähler wird jedoch der Transfer zu der Logikschaltungseinheit nicht durchgeführt. Die nächste Einstellung wird nur nach der Beendigung der Operation freigegeben. Die Stoppbefehle durch die Hilfsrelais M8940, M8941 und M8942 werden selbst dann freigegeben, wenn die DRV-Anweisung ausgeführt wird. Die Stoppbefehle werden als das Befehlssignal 6070·0 zu dem Befehls-Latch-Speicher 6000·0 gesendet, um die Operation von jedem der Vorwärts/Rückwärts-Zähler zu stoppen. Wenn das Antreiben der Hilfsrelais M8940, M8941 und M8942 gelöscht wird, wird der Stoppbefehl auf eine Ausführung der DRV-Anweisung hin gelöscht. Die Stoppbefehlslöschung wird durch Verwenden des Befehlssignals 6070·0 zu dem Befehls-Latch-Speicher 6000·0 gesendet, um die Operation von jedem der Vorwärts/Rückwärts-Zähler zu starten.
  • 25(G) stellt einen Schaltungsblock zum Antreiben der Leseanweisung für eine aktuelle Position DCVRD durch das Hilfsrelais M0001 dar, das durch eine Sequenzschaltung (nicht dargestellt) angetrieben wird. Ein erster Operand der DCVRD-Anweisung bestimmt eine Hochgeschwindigkeitspulsausgabenummer Y10020, während ein zweiter Operand eine untere Datenregisternummer für ein Paar von Datenregistern (D0321 und D0320) bestimmt, die 32-Bit-Daten handhaben. Auf eine Ausführung der DCVRD-Anweisung hin wird der Wert des Registers für einen aktuellen Wert 4001·3, das in 13 dargestellt ist, in den Pufferspeicher 114b gelesen, um algebraisch zu den Registern (D0321 und D0320) gemäß der Bewegungsrichtung addiert zu werden. Ein Koordinatenwert der Position der Nullstelle wird zu den Datenregistern (D0321 und D0320) transferiert und geschrieben, wie es in 27(F) dargestellt, auf das nachfolgend Bezug genommen wird. Daher wird Absolutpositionsinformation basierend auf der Referenzposition erhalten.
  • 25(H) stellt einen Schaltungsblock dar, wenn eine dritte Pulsausgabeanweisung ABS durch das Hilfsrelais M0000 angetrieben wird, das durch eine Sequenzschaltung (nicht gezeigt) angetrieben wird. Da die Nummer des Hochgeschwindigkeitsausgangs Y10020, die durch einen ersten Operanden der ABS-Anweisung bestimmt ist, die Erweiterungsnummer bb = 10 enthält, die in 17 dargestellt ist, wird die Vorwärtsdrehpulsausgabe FP von dem Ausgangsanschluss Y020 ausgegeben, während der Rückwärtsdrehpuls RP von dem benachbarten Ausgangsanschluss Y021 erzeugt wird. Wenn die Anweisung für ein Zurückkehren zu Null ZRN, die nachfolgend beschrieben wird, verwendet wird, wird das Löschsignal CLR von dem benachbarten Ausgangsanschluss Y022 erzeugt. Die Datenregisternummer D0300, die durch einen zweiten Operanden der ABS-Anweisung bestimmt ist, entspricht einer Nummer des Anfangs-Datenregisters für verschiedene Einstelldaten. Der eingestellte Inhalt ist so, wie es oben unter Bezugnahme auf die 25(A1) bis 25(A4) beschrieben ist. In dem Fall der ABS-Anweisung wird jedoch eine Soll-Bewegungsposition anstelle des Sollausmaßes einer Bewegung, das in 25(A4) eingestellt ist, bestimmt. Für das Einstellregister 3001·3 des in 13 dargestellten Vorwärts/Rückwärts-Zählers 2000·3 wird das Soll-Bewegungsausmaß basierend auf einer Differenz zwischen der Soll-Bewegungsposition und der in den Datenregistern (D0321 und D0320) gespeicherten aktuellen Position eingestellt. Der Drehrichtungsbefehl wird als das Befehlssignal zu dem ersten Einstellregister 3001·3 gesendet.
  • Das durch einen dritten Operanden der ABS-Anweisung bestimmte Hilfsrelais M8940 entspricht einer Nummer des Anfangs-Hilfsrelais für verschiedene Befehlssignale und Benachrichtigungssignale. Das Hilfsrelais M8940 dient für einen Befehl für einen erzwungenen Stopp, das nachfolgende Hilfsrelais M8941 dient für das Stoppbefehl für verschiedene Befehlssignale und Benachrichtigungssignale. Das Hilfsrelais M8940 dient für einen Befehl für einen erzwungenen Stopp, das nachfolgende Hilfsrelais M8941 dient für einen Stoppbefehl für eine Vorwärtsdrehungsbegrenzung, das nächste Hilfsrelais M8942 dient für einen Stoppbefehl für eine Rückwärtsdrehungsbegrenzung und das darauffolgende Hilfsrelais M8943 dient für eine Pulsausgabenbeendigungsbenachrichtigung. Wenn ein erster Operand der ABS-Anweisung die Erweiterungsnummern von 00 bis 07 in 17 ist, ist die ABS-Anweisung eines Substitutionsanweisung für die erste Pulsausgabenanweisung PLS. Selbst in diesem Fall wird eine Sollbewegungsposition anstelle des Sollbewegungsausmaßes eingestellt.
  • Als Nächstes stellt 27 eine beispielhafte Verwendung der Anweisung für ein Zurückkehren zu Null ZRN dar und ist 28 ein Kennliniendiagramm, das eine Operation für ein Zurückkehren zu Null darstellt. 27(H) stellt einen Schaltungsblock einer Anweisung für ein Zurückkehren zu Null ZRN dar, die durch das Hilfsrelais M8041 angetrieben wird, das auf eine Operation des Eingangsrelais X003 in 27(A5) angetrieben wird. Der Hochgeschwindigkeitsausgang Y10020, der durch einen ersten Operanden der ZRN-Anweisung bestimmt ist, enthält die in 17 dargestellte Erweiterungsnummer bb = 10. Daher wird die Vorwärtsdrehpulsausgabe FP von dem Ausgangsanschluss Y020 erzeugt, während die Rückwärtsdrehpulsausgabe RP von dem benachbarten Ausgangsanschluss Y021 erzeugt wird. Das Löschsignal CLR wird von dem benachbarten Ausgangsanschluss Y022 erzeugt. Das durch einen zweiten Operanden der ZRN-Anweisung bestimmte Datenregistern D0400 entspricht der Anfangs-Datenregisternummer für verschiedene Einstelldaten. Der Inhalt zum Einstellen wird unter Bezugnahme auf die 27(A1) bis 27(A4) nachfolgend beschrieben werden. Das durch einen dritten Operanden der ZRN-Anweisung bestimmte Hilfsrelais M8940 entspricht einer Nummer des Anfangs-Hilfsrelais für verschiedene Befehlssignale und Benachrichtigungssignale. Das Hilfsrelais M8940 dient für einen Befehl für einen erzwungenen Stopp, das Hilfsrelais M8941 dient für eine Stoppanweisung für eine Vorwärtsdrehungsbegrenzung das Hilfsrelais M8942 dient für eine Stoppanweisung für eine Rückwärtsdrehungsbegrenzung, das Hilfsrelais M8943 dient für eine Beendigungsbenachrichtigung für ein Zurückkehren zu Null und das Hilfsrelais M8944 dient für ein Richtungsbefehlssignal für ein Zurückkehren zu Null.
  • Die 27(A1) bis 27(A5) stellen einen Schaltungsblock zum Antreiben verschiedener Transferanweisungen dar, die durch das Eingangsrelais X003 und das Hilfsrelais M8041 für eine Transferverifizierung angetrieben werden. Eine erste Transferanweisung DMOV dient zum Schreiben einer Solloperationsgeschwindigkeit in einer Pulsfrequenz Hz zu einem Paar von Datenregistern (D0401 und D0400). In diesem Fall wird 20 kHz durch eine Konstante K20000 bestimmt. Die nächste Transferanweisung MOV dient zum Schreiben einer Kriechoperationsgeschwindigkeit in einer Pulsfrequenz Hz zu dem Datenregister D0402. In diesem Fall wird 1 kHz durch eine Konstante K1000 bestimmt.
  • Die nächste Transferanweisung MOV die zum Schreiben der Beschleunigungs/Abbrems-Zeit Δt (μsek) zu dem Datenregister D0403, wenn das Inkrement Δf der in 28 dargestellten Frequenz auf 1024 Hz eingestellt ist. In diesem Fall wird 20 msek durch eine Konstante K20000 eingestellt. Daher ist eine Zeit, die für eine Operationsgeschwindigkeit zum Erreichen der Solloperationsgeschwindigkeit von 20 kHz erforderlich ist folgende: 20 × 20/1,024 = 390,6 msek. Die nächste Transferanweisung MOV dient zum Schreiben der Anzahl von Nullstellensignalen, die nachfolgend beschrieben werden, zu dem Datenregister D0404. Die Anzahl von Pulsen, nämlich 3, wird durch K3 eingestellt. Das nachfolgende Hilfsrelais M8041 dient für eine Transferverifizierung. Wenn das Hilfsrelais M8943 für eine Beendigung für ein Zurückkehren zu Null arbeitet, wird das Hilfsrelais M8041 nicht angetrieben.
  • 27(B) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8940 dar, das als Befehl für einen erzwungenen Stopp auf eine Operation des Eingangsrelais X000 hin dient. 27(C) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8941 dar, das als Vorwärtsdrehungsbegrenzungs-Stoppbefehl auf eine Operation des Eingangsrelais X001 hin dient. 27(D) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8942 dar, das als Rückwärtsdrehungsbegrenzungs-Stoppbefehl auf eine Operation des Eingangsrelais X002 hin dient. 27(E) stellt einen Schaltungsblock zum Antreiben des Hilfsrelais M8944 dar, das als Befehl zur Führung für ein Zurückkehren zu Null darstellt, um eine Vorwärtsoperation auf eine Operation des Eingangsrelais X005 hin durchzuführen. 27(F) stellt einen Schaltungsblock zum Transferieren eines Koordinatenwerts K2000 der Position der Nullstelle zu einem Paar der Datenregister (D0321 und D0320) auf eine Operation des Hilfsrelais M8943 hin dar. 27(G) stellt einen Schaltungsblock zum Rücksetzen des Hilfsrelais M8943 dar, das als Ergebnis einer Beendigung eines Zurückkehrens zu Null betrieben worden ist, wenn das Eingangsrelais X003 deaktiviert wird.
  • Die Einstellwerte in den 27(A) bis 27(A4) und die Befehle in den 27(B) bis 27(E) werden zu den jeweiligen Einheiten der modifizierten Pulsausgabeschaltung 1080·0, die in 14 dargestellt ist, durch den Pufferspeicher 114b auf eine Ausführung der Anweisung für ein Zurückkehren zu Null ZRN in 27(H) hin transferiert. Wenn jedoch die Anweisung für ein Zurückkehren zu Null ZRN angetrieben wird, werden die Parameter zuerst gemäß einem Schritt 916 in 19 modifiziert und eingestellt, um dann eine Kommunikation mit jeder der Einheiten durchzuführen.
  • Im ersten Einstellregister 3001·0 des ersten Vorwärts/Rückwärts-Zählers 2000·0 in 14 wird ein halber Wert der Beschleunigungs/Abbrems-Zeit von 20000 μsek, die im Datenregister D0403 gespeichert ist, d. h. 10000, gespeichert. Als Ergebnis wird der Zyklus des Ausgangssignals von der alternativen Ausgangsschaltung 97 als Sollwert erhalten, nämlich 20000 μsek = 20 msek. Die Sollbetriebsgeschwindigkeit von 20.000, die in den Datenregistern (D0401 und D0400) gespeichert ist, wird zu dem ersten Einstellregister 3001·1 des zweiten Vorwärts/Rückwärts-Zählers 2000·1 geschrieben, während eine Kriechgeschwindigkeit von K1000, die in dem Datenregister D0402 gespeichert ist, zu dem zweiten Einstellregister 3002·1 geschrieben wird. Die inkrementelle/dekrementelle Frequenz Δf = 1024, die in 28 dargestellt ist, wird zu dem Variations-Einstellregister 4003·1 geschrieben.
  • Als Ergebnis erhöht sich die Betriebsgeschwindigkeit von der Anfangsgeschwindigkeit von 0 kHz mit der Rate von etwa 1 kHz pro 20 msek zu der Sollbetriebsgeschwindigkeit von 20 kHz als ein Betriebsgeschwindigkeitsmuster. Wenn die Betriebsgeschwindigkeit die Sollbetriebsgeschwindigkeit erreicht, beginnt die Aufwärtszählausgabe Q ein Arbeiten, um ein Erhöhen des Werts des Registers für einen aktuellen Wert 4001·1 zu stoppen. Im ersten Einstellregister 3001·2 des dritten Vorwärts/Rückwärts-Zählers 2000·2 ist beispielsweise ein Koeffizient entsprechend einem Quintupel der maximalen Betriebsgeschwindigkeit von 100 kHz, das heißt 500.000, gespeichert. Als Ergebnis ist es dann, wenn 20.000 entsprechend der Sollbetriebsgeschwindigkeit von 20 kHz in dem Variationseinstellregister 4003·2 gespeichert ist, nötig, fünfundzwanzig vor dem Start eines Betriebs der Aufwärtszählausgabe Q zu zählen.
  • Da der Zyklus τ des Zähleingangssignals des Vorwärts/Rückwärts-Zählers 2000·2 gleich 1 μsek ist, ist der Zyklus des Ausgangspulses von der alternativen Ausgabeschaltung 47 50 μsek, was der Frequenz der Sollbetriebsgeschwindigkeit entspricht, d. h. 20 kHz. Durch Antreiben der ZRN-Anweisung wird eine Rückwärtsoperation von der aktuellen Position durchgeführt, wie es in 28 dargestellt ist. Dann erhöht sich die Geschwindigkeit, um eine Sollgeschwindigkeit ➀ zu erreichen. Dann wird das Nahstellen-Klemmzapfensignal DOG auf EIN geschaltet, um das Eingangsrelais X020 zu betreiben. Als Ergebnis wird eine Subtraktionsstartanweisung zu dem Vorwärts/Rückwärts-Zähler 2000·1 durch das ODER-Element 95a und das Gatterelement 95b zugeführt. Der Vorwärts/Rückwärts-Zähler 2000·1 beginnt eine Subtraktion mit der Rate von etwa 1 kHz pro 20 msek. Dann wird, wenn die Betriebsgeschwindigkeit, die im zweiten Einstellregister 3002·1 gespeicherte Kriechgeschwindigkeit erreicht, die Abwärtszählvergleichs-Übereinstimmungsausgabe P betrieben (bei dem logischen Pegel "H"), um die Subtraktionsoperation zu stoppe. Dann wird die Kriechbetriebsgeschwindigkeit als das Geschwindigkeitsmuster gehalten.
  • Das Nahstellenklemmzapfensignal DOG wird direkt vor der Beendigung eines Abbremsens auf AUS geschaltet, um das Eingangsrelais X020 zu deaktivieren. Nach der Deaktivierung des Eingangsrelais X020 wird die Operation des Eingangsrelais X021, das in Reaktion auf ein Z-Phasensignal des Servomotors arbeitet, zu dem Zähleingangsanschluss IN des letzten Vorwärts/Rückwärts-Zählers 2000·3 durch das UND-Element 95e eingegeben. Der Wert des Datenregisters D0404, der durch den Schaltungsblock in 27(A4) eingestellt ist, wird im Voraus zu dem ersten Einstellregister 3001·3 des Vorwärts/Rückwärts-Zählers 2000·3 transferiert. In diesem beispielhaften Fall wird dann, wenn drei Z-Phasensignale gezählt werden, die Aufwärtszählausgabe Q erzeugt, um die Operation von jedem der Vorwärts/Rückwärts-Zähler zu stoppen. Gleichzeitig wird das Löschsignal CLR zu Y0200 ausgegeben, um den Servoverstärker zu initialisieren. Dann wird eine Beendigungsbenachrichtigung für ein Zurückkehren zu Null durchgeführt, um das Hilfsrelais M8943 zu betreiben. Als Ergebnis werden die Koordinatendaten der Position der Nullstelle zu den Datenregistern (D0321 und D0320) durch den Schaltungsblock in 27(F) geschrieben. Wenn das Eingangsrelais X003 als Ergebnis einer Beendigung eines Zurückkehrens zu Null gelöscht wird, wird das Hilfsrelais M8943, das die Beendigung für ein Zurückkehren zu Null anzeigt, durch den Schaltungsblock in 27(G) rückgesetzt. Dann wird das in 27(H) dargestellte Hilfsrelais M8041 deaktiviert, um ein Antreiben der Anweisung für ein Zurückkehren zu Null ZRN zu stoppen.
  • In den 27(A1) bis 27(A4) können dann, wenn ein indirektes Einstellverfahren zum Bestimmen der Datenregisternummer ohne Verwenden der Konstanten K anstelle des direkten Einstellverfahrens verwendet wird, die Einstellwerte wie diejenigen, die oben beschrieben sind, während des Betriebs geändert werden. Während des Betriebs von jedem der Vorwärts/Rückwärts-Zähler wird jedoch der Transfer zu der Logikschaltungseinheit nicht durchgeführt. Die nächste Einstellung wird nur nach der Beendigung des Betriebs freigegeben. Die Befehle durch die Hilfsrelais M8940, M8941 und M8942 werden freigegeben, wenn die ZRN-Anweisung ausgeführt wird. Die Befehle werden durch Verwenden des Befehlssignals 6080·0 zu dem Befehls-Latch-Speicher 6200·0 gesendet, um den Betrieb von jedem der Vorwärts/Rückwärts-Zähler zu stoppen. Wenn das Antreiben der Hilfsrelais M8940, M8941 und M8942 gelöscht wird, wird der Stoppbefehl auf eine Ausführung der ZRN-Anweisung hin gelöscht. Die Stoppbefehlslöschung wird als Befehlssignal 6080·0 zu dem Befehls-Latch-Speicher 6000·0 gesendet, um den Betrieb von jedem der Vorwärts/Rückwärts-Zähler zu starten.
  • Als Nächstes wird eine Beschreibung für 29 durchgeführt werden, die eine beispielhafte Verwendung der PWM-Ausgabeanweisung darstellt, und zwar unter Bezugnahme auf 11. 29(A) stellt einen Schaltungsblock der PWM-Ausgabeanweisung dar, die durch das Hilfsrelais M0400 angetrieben wird, das durch eine Sequenzschaltung (nicht gezeigt) angetrieben wird. Für ein Datenregister D0500, das durch einen ersten Operanden der PWM-Anweisung bestimmt ist, wird ein Pulszyklus des Pulsbreitenmodulationssignals in μsek eingestellt. Für ein Datenregister D0501, das durch einen zweiten Operanden bestimmt ist, wird eine EIN-Zeit des Pulsbreitenmodulationssignals in μsek eingestellt. Eine Ausgangsnummer der speziellen Einheit, die die Pulsbreitenmodulationssignal-(PWM-)Ausgabe erzeugt, wird durch einen dritten Operanden bestimmt. Bei diesem beispielhaften Fall wird das Pulsbreitenmodulationssignal von dem Ausgangsanschluss Y025 der speziellen Einheit 140 ausgegeben. Auf eine Ausführung der PWM-Anweisung hin wird der Zyklus (μsek) des Pulsbreitenmodulationssignals, der durch das Datenregister D0500 eingestellt ist, für das erste Einstellregister 3001n des Vorwärts/Rückwärts-Zählers 2000n (bei diesem beispielhaften Fall gilt n = 5), der in 11 dargestellt ist, eingestellt. Im zweiten Einstellregister 3002n wird eine AUS-Zeit eingestellt, die durch Subtrahieren der in dem Datenregister D0501 eingestellten EIN-Zeit von dem Einstellzyklus erhalten ist.
  • Als Ergebnis erzeugt dann, wenn der Zählerwert des Vorwärts/Rückwärts-Zählers 2000n zum Zählen der Taktsignale, die jeweils den Zyklus τ von 1 μsek haben, erzeugt von der gemeinsamen Taktschaltung 9001, die eingestellte AUS-Zeit erreicht, der Vorwärts/Rückwärts-Zähler 2000n die Aufwärtszählvergleichs-Übereinstimmungsausgabe P. Wenn der Zählerwert den eingestellten Zyklus erreicht, wird die Aufwärtszählausgabe Q erzeugt. Zu dieser Zeit werden der Vorwärts/Rückwärts-Zähler 2000n sowie die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückgesetzt. Daher wird, wie es in 29(C) dargestellt ist, das Pulsbreitenmodulationssignal mit dem Zyklus (D0500) und der EIN-Zeitbreite (D0501) zu dem Ausgang Y025 ausgegeben. Wenn ein Inversionslogikelement zwischen dem Kanalanschluss 12n und der in 11 dargestellten Aufwärtszählvergleichs-Übereinstimmungsausgabe P angeordnet ist, sind EIN und AUS invertiert. Daher wird die EIN-Zeit in diesem Fall im zweiten Einstellregister 3002n eingestellt.
  • 29(B) stellt eine Struktur von Operanden der PWM-Ausgabeanweisung gemäß einem weiteren Ausführungsbeispiel dar. Bei diesem beispielhaften Fall entspricht das Datenregister D0500, das durch einen ersten Operanden der PWM-Anweisung bestimmt ist, einer Nummer des einzustellenden Anfangs-Datenregisters. Eine Anweisungsform wird durch die Konstante K definiert, die durch einen zweiten Operanden bestimmt ist. Eine Ausgangsnummer der speziellen Einheit, die die Pulsbreitenmodulationssignal-(PWM-)Ausgabe erzeugt, wird durch einen dritten Operanden bestimmt. In Abhängigkeit von dem Wert der Konstanten K wird die Einstellung auf die folgende Weise durchgeführt. Mit K0 wird der Zyklus für D0500 eingestellt, während die EIN-Zeit für D0501 eingestellt wird. Mit K1 wird der Zyklus für D0500 eingestellt, während die AUS-Zeit für D0501 eingestellt wird. Mit K2 wird der Zyklus für D0500 eingestellt, während ein Wert, der durch ein Tastverhältnis (EIN-Zeit/Zyklus) × 1000 erhalten ist, für D0501 eingestellt wird. Selbst wenn die ursprünglichen Daten in irgendeiner Form sind, werden die in den Zyklus und die AUS-Zeit umgewandelten Daten zu dem Vorwärts/Rückwärts-Zähler 2000n in 11 gesendet. Die Einstelldaten 3050n vom Mikroprozessor 111 werden auf eine Ausführung der PWM-Anweisung hin zu dem Standby-Pufferspeicher 4004n transferiert und in diesem temporär gespeichert. Darauffolgend werden zu der Zeit, zu welcher die Aufwärtszählausgabe Q arbeitet, um das Register für einen aktuellen Wert 4001n und die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückzusetzen, die Einstelldaten 3050n zu dem ersten und dem zweiten Einstellregister 3001n und 3002n transferiert.
  • (4) Zusammenfassung und Charakteristiken des ersten Ausführungsbeispiels
  • Wie es aus der obigen Beschreibung offensichtlich ist, enthält die programmierbare Steuerung 100A gemäß dem ersten Ausführungsbeispiel der vorliegenden Erfindung die CPU-Einheit 110A, die den Mikroprozessor 111, den Systemspeicher 112A, der in Zusammenarbeit mit dem Mikroprozessor 111 arbeitet, den Programmspeicher 113A, zu welchem das durch den Anwender erzeugte sequentielle Programm transferiert und von dem externen Werkzeug 108 geschrieben wird, und den Vorrichtungsspeicher 114a mit den I/O-Abbildungsspeichern X und Y zum Speichern der I/O-Information und der Steuerinformation enthält, das Hilfsrelais M und das Datenregister D und eine oder eine Vielzahl der I/O-Einheiten 120 bis 140, die über den Bus mit der CPU-Einheit 110A verbunden sind. Ein Teil von oder alle der I/O-Einheiten dienen als die spezielle Einheiten 130 und 140, die jeweils die integrierten Schaltungselemente 10 enthalten, die die speziellen I/O-Verarbeitungsfunktionen gemeinsam nutzen, um die Steuerfunktion des Mikroprozessors 111 zu komplementieren bzw. zu vervollständigen. Die spezielle Einheit 130 enthält das elektronische Substrat 19xy, auf welchem die externen Verbindungsanschlüsse 130X und 130Y die mit wenigstens einem von oder beiden der Vielzahl von externen Sensoren und der Vielzahl von externen Lasten verbunden sind, die Mehrkanal-Eingangsschnittstellenschaltung 139X oder die Ausgangsschnittstellenschaltung 139Y, die mit dem externen Verbindungsanschluss verbunden ist, das integrierte Schaltungselement 10, das für eine I/O-Steuerung verwendet wird, deren Steuerungsspezifikationen teilweise variabel eingestellt werden können, und den Busverbindungsanschluss 1302 zur Verbindung mit dem Mikroprozessor 111 montiert bzw. angebracht sind. Auf dieselbe Weise enthält die spezielle Einheit 140 das elektronische Substrat 19xy, auf welchem die externen Verbindungsanschlüsse 140X und 140Y, die Mehrkanal-Eingangsschnittstellenschaltung 149X oder die Ausgangsschnittstellenschaltung 149Y, das integrierte Schaltungselement 10 und der Busverbindungsanschluss 140Z montiert bzw. angebracht sind. Das integrierte Schaltungselement 10 enthält das erste Port 11, zu welchem das logische Signal, das die EIN/AUS-Operation durchführt, von der Eingangsschnittstellenschaltung 139X oder 149X eingegeben wird, das zweite Port 12 zum Ausgeben des logischen Signals zum Durchführen der EIN/AUS-Operation zu der Ausgangsschnittstellenschaltung 139Y oder 149Y, den Parameterspeicher 8000n entsprechend jeder Kanalzahl n und die Logikschaltungseinheit 1000n, deren Operationsspezifikationen für die I/O-Verarbeitung durch die von dem Mikroprozessor 111 zu dem Parameterspeicher gesendeten Schaltungsorganisationsdaten bestimmt werden.
  • Die Logikschaltungseinheit 1000n enthält weiterhin den Benachrichtigungsbitspeicher 7000n zum Zählen des durch die Eingangsschnittstellenschaltung 139X erhaltenen logischen Eingangssignals mit hoher Geschwindigkeit, um die Aufwärtszählausgabe oder die Zähldaten als das Benachrichtigungssignal oder die Berechnungsdaten zu dem Mikroprozessor 111, dem Berechnungsregister 4000n und dem Vorwärts/Rückwärts-Zähler 2000n zu senden, der die Einstelldaten oder das Befehlssignal, empfangen von dem Mikroprozessor 111, in dem Einstellregister 3000n und dem Befehls-Latch-Speicher 6000n speichert, um die Hochgeschwindigkeits-Pulsausgabe basierend auf den Inhalten des Einstellregisters und des Befehls-Latch-Speichers zu der Ausgangsschnittstellenschaltung 149X zuzuführen. Der Vorwärts/Rückwärts-Zähler 2000n enthält das Register für einen aktuellen Wert 4001n, das einen Teil des Berechnungsregisters 400n bildet. Ob die Hochgeschwindigkeits-Zählerschaltung für das von der Eingangsschnittstellenschaltung 139X zugeführte Eingangssignal zu bilden ist, um die Hochgeschwindigkeits-Eingabeverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit 110A durchzuführen, oder die Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit 110A empfangenen Einstelldaten zu bilden ist, um die Hochgeschwindigkeitsausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung 149Y durchzuführen, wird für jeden Kanal gemäß dem Inhalt der speziellen Anweisung bestimmt, die in dem Steuerprogramm enthalten ist, das im Programmspeicher 113A gespeichert ist. Wenn die zu dem Parameterspeicher 8000n gesendeten Schaltungsorganisationsdaten veranlassen, dass eine Vielzahl von Hochgeschwindigkeits-Eingangsverarbeitungen und eine Vielzahl von Hochgeschwindigkeits-Ausgabeverarbeitungen durchgeführt werden, und das Eingangssignal von dem externen Sensor ein analoges Signal ist, führt die Eingangsschnittstellenschaltung einen Puls mit einer Frequenz proportional zu derjenigen des Eingangssignals zu dem integrierten Schaltungselement 10 zu. Wenn die externe Last eine analoge Last ist, erzeugt das integrierte Schaltungselement 10 eine Pulsausgabe mit einem EIN/AUS-Verhältnis als befohlenes Ausgangssignal. Die Ausgangsschnittstellenschaltung glättet das empfangene Pulsausgabesignal und führt dann das geglättete Signal zu der externen Last zu.
  • Die CPU-Einheit 110A enthält den Pufferspeicher 114b für eine Datenkommunikation mit der speziellen Einheit 130 oder 140. Der Systemspeicher 112A enthält die Steuerprogramme, die als das Organisationsverarbeitungsmittel 908 und das Datenumwandlungs/Transfer-Mittel 921 fungieren. Direkt nach dem Start des Betriebs der programmierbaren Steuerung 100A sucht das Organisationsverarbeitungsmittel 908 durch den Inhalt des Programmspeichers 113A, um die spezielle Anweisung entsprechend der speziellen Einheit 130 oder 140 zu extrahieren, und sendet den Typ der Logikschaltungseinheit 100n, der in der speziellen Einheit verwendet wird, gemäß dem Inhalt der speziellen Anweisung und den Schaltungsorganisationsdaten entsprechend dem Betriebsmode zu dem Parameterspeicher 8000n. Gleichzeitig führt das Organisationsverarbeitungsmittel 908 die Adressenorganisation des Pufferspeichers 114b für die Kommunikation mit jeder Logikschaltungseinheit 100n durch, deren Schaltungsorganisation durch den Parameter spezifiziert ist. Das Daten-Umwandlungs/Transfer-Mittel 921 wandelt die Daten in die Einstelldaten in einer Einheit um, die für den Betrieb der Logikschaltungseinheit 1000n geeignet ist, und das Befehlssignals basierend auf dem Inhalt des Vorrichtungsspeichers 114, der durch die spezielle Anweisung bestimmt ist, um die Einstelldaten und das Befehlssignal zu dem Einstellregister 3000n und dem Befehls-Latch-Speicher 6000n durch den Pufferspeicher 114b zu senden. Gleichzeitig transferiert das Daten-Umwandlungs/Transfer-Mittel 921 die Berechnungsdaten oder das Benachrichtigungssignal, erhalten von der Logikschaltungseinheit 1000n, zu dem Vorrichtungsspeicher 114a, der durch die spezielle Anweisung bestimmt ist, durch den Pufferspeicher 114b.
  • Die spezielle Anweisung ist aus einem Anweisungswort, das den Typ einer Anweisung anzeigt, einem ersten Operanden und wenigstens einem eines zweiten Operanden und eines dritten Operanden, wobei die ersten bis dritten Operanden in keiner besonderen Reihenfolge sind, zusammengesetzt. Der erste Operand bestimmt eine Identifikationsnummer zum Spezifizieren einer Soll-I/O-Nummer der speziellen Einheit. Der zweite Operand bestimmt eine Nummer des Datenregisters, das die Berechnungsdaten speichert, die von dem Berechnungsregister erhalten sind, oder eine Nummer des Datenregisters, das die Einstelldaten speichert, die zu dem Einstellregister gesendet sind, oder bestimmt direkt eine Einstellkonstante. Der dritte Operand bestimmt eine Nummer des Hilfsrelais, das das Benachrichtigungssignal speichert, das von dem Benachrichtigungsbitspeicher erhalten ist, oder eine Nummer des Hilfsrelais, das das zu dem Befehls-Latch-Speicher zu sendende Befehlssignal speichert. Demgemäß führt das Organisationsverarbeitungsmittel eine anfängliche Organisation der Parameter durch und führt eine Umwandlung/einen Transfer für Daten zwischen dem Mikroprozessor und der Logikschaltungseinheit durch den Pufferspeicher während des Betriebs durch. Daher führt der Mikroprozessor eine komplizierte Berechnungsverarbeitung (beispielsweise eine Multiplikation oder eine reziproke Berechnung für eine Einheitenumwandlung) durch, die keine Verarbeitung hoher Geschwindigkeit erfordert, während die Logikschaltungseinheit einen Hochgeschwindigkeitsbetrieb basierend auf den Einstelldaten und dem Befehlssignal durchführt, die den Betrieb der Logikschaltungseinheit erleichtern. Als Ergebnis ist die Konfiguration der Logikschaltungseinheit vereinfacht, um ein billiges integriertes Schaltungselement für spezielle Zwecke zu erhalten.
  • Darüber hinaus enthält jeder von einigen oder alle der Vorwärts/Rückwärts-Zähler 2000n, die in den Logikschaltungseinheiten 1000n vorgesehen sind, das Register für einen aktuellen Wert 4001n, das erste Einstellregister 3001n, das zweite Einstellregister 3002n, die erste Vergleichsschaltung 5001n und die zweite Vergleichsschaltung 5002n. Das Register für einen aktuellen Wert 4001n erhöht oder erniedrigt die Anzahl von Operationen der Zähleingabe zu dem Vorwärts/Rückwärts-Zähler 2000n gemäß der Zählrichtung und dient als Speicher zum Speichern eines kumulativen Gesamtwerts von einem Anfangswert bei dem Start der Operation des Vorwärts/Rückwärts-Zählers an. Die erste Vergleichsschaltung 4001n ist eine Wertvergleichsschaltung, die eine erste Vergleichsübereinstimmungsausgabe erzeugt, wenn der im ersten Einstellregister 3001n gespeicherte Wert und der im Register für einen aktuellen Wert 4001n gespeicherte Wert identisch zueinander sind. Die zweite Vergleichsschaltung 5002n ist eine Wertvergleichsschaltung, die eine zweite Vergleichsübereinstimmungsausgabe erzeugt, wenn der im zweiten Einstellregister 3002n gespeicherte Wert und der im Register für einen aktuellen Wert 4001n gespeicherte Wert identisch zueinander sind. Ein Wert wird für das Register für einen aktuellen Wert oder jedes des ersten und des zweiten Einstellregisters von dem Mikroprozessor 111 durch den Pufferspeicher 114b eingestellt, wenn die spezielle Anweisung ausgeführt wird. Spezifisch enthält der Vorwärts/Rückwärts-Zähler, der die Logikschaltungseinheit bildet, eine Vielzahl von Einstellregistern und Vergleichsschaltungen. Daher ist es durch Durchführen einer Einstellverarbeitung für eine Vielzahl von Einstellregistern vor dem Start eines Betriebs des Vorwärts/Rückwärts-Zählers nicht erforderlich, dass ein neuer Einstellwert während der Hochgeschwindigkeitszähloperation gesendet wird. Daher kann die Belastung einer Kommunikationssteuerung am Mikroprozessor für die Logikschaltungseinheit reduziert werden. Gleichzeitig ermöglichen die Vielzahl von Einstellregistern und die Vielzahl von Vergleichsschaltungen die Steueroperation auf einer höheren Ebene.
  • Die Logikschaltungseinheit 1000n, die an der speziellen Einheit 130 oder 140 angebracht ist, enthält die Eingabeschaltung für allgemeine Zwecke 1091 oder die Ausgabeschaltung für allgemeine Zwecke 1092 für alle Kanäle. Die Eingangsschaltung für allgemeine Zwecke 1091 ist eine Eingangssignal-Relaisschaltung zum Senden des Eingangssignals, das mit dem ersten Port 11 verbunden ist, zu dem Eingangsabbildungsspeicher, der in dem Vorrichtungsspeicher 114a zugeteilt ist, durch den Datenselektor 134 oder 144 für eine Eingabeverarbeitung. Der Transfer von dem Datenselektor zu dem Eingangsabbildungsspeicher wird durch das Eingabeverarbeitungsmittel 911 ausgeführt, das ein Steuerprogramm ist, das im Systemspeicher 112A gespeichert ist. Die Ausgabeschaltung für allgemeine Zwecke 1092 ist eine Ausgangssignal-Relaisschaltung, die das Signal von dem Ausgangsabbildungsspeicherbereich, der in dem Vorrichtungsspeicher 114a zugeteilt ist, durch den Ausgangs-Latch-Speicher 135 oder 145, der in der Logikschaltungseinheit 1000n vorgesehen ist, zu der Ausgangsschaltung ausgibt, die mit dem zweiten Port 12 verbunden ist. Der Transfer von dem Ausgangsabbildungsspeicher zu dem Ausgangs-Latch-Speicher wird durch das Ausgabeverarbeitungsmittel 923 ausgeführt, das ein Steuerprogramm ist, das im Systemspeicher 112A gespeichert ist. Die I/O-Schaltung für allgemeine Zwecke 1091 oder 1092 wird freigegeben, wenn die Logikschaltungseinheit 1000n weder als Hochgeschwindigkeits-I/O-Schaltung noch als analoge I/O-Schaltung verwendet wird. Spezifisch enthält das in der speziellen Einheit enthaltene integrierte Schaltungselement die I/O-Schaltung für allgemeine Zwecke zusätzlich zu der Hochgeschwindigkeits-I/O-Verarbeitungsschaltung. Daher werden für die Anwendung, die die Hochgeschwindigkeitsausgabe oder die analoge Ausgabe erfordert, aber nicht die Hochgeschwindigkeitseingabe oder die analoge Eingabe, oder für die Anwendung, die die Hochgeschwindigkeitseingabe oder die analoge Eingabe erfordert, aber nicht die Hochgeschwindigkeitsausgabe oder die analoge Ausgabe, unnötige I/O-Anschlüsse effizient verwendet. Als Ergebnis kann die spezielle Einheit ökonomisch und effektiv verwendet werden.
  • Die spezielle Einheit 130 oder 140 enthält sowohl die Mehrkanal-Eingangsschnittstellenschaltung 139X oder 149X als auch die Mehrkanal-Ausgangsschnittstellenschaltung 139Y oder 149Y, die jeweils mit den externen Verbindungsanschlüssen 130X und 130Y oder 140X und 140Y verbunden sind. Die Eingangsschnittstellenschaltung 139X oder 149X ist als irgendeine der Eingangsschnittstellenschaltung 139X oder 149X für einen EIN/AUS-Schaltsensor klassifiziert, der das Eingangsfilter mit einer kleinen Zeitkonstanten für den Hochgeschwindigkeitseingabepuls oder das Eingangsfilter mit einer großen Zeitkonstanten, zu welchem der Hochgeschwindigkeitseingangspuls nicht eingegeben wird, enthält, und der Eingangsschnittstellenschaltung für einen analogen Sensor, der den Spannungs/Frequenz-Wandler enthält. Die Ausgangsschnittstellenschaltung 139Y oder 149Y ist als irgendeine der Ausgangsschnittstellenschaltung 149Y oder 139Y, die einen Transistor zum Durchführen einer Hochgeschwindigkeits-EIN/AUS-Schaltoperation für einen Hochgeschwindigkeitsausgangspuls als Ausgabeelement oder einen Transistor als Ausgabeelement zum Durchführen einer EIN/AUS-Schaltoperation niedriger Geschwindigkeit enthält, das keinen Hochgeschwindigkeitsausgangspuls ausgibt, und der Ausgangsschnittstellenschaltung für die analoge Last, die eine Glättungsschaltung für die von der Logikschaltungseinheit 1000n erzeugte Pulsbreitenmodulationssignalausgabe enthält. Jeder einer Vielzahl von Typen der speziellen Einheit 130 oder 140 ist anwendbar aus einer beliebigen Kombination von irgendeiner der Hochgeschwindigkeits-Logikeingabe, der Logikeingabe niedriger Geschwindigkeit und der analogen Eingabe und irgendeiner der Logikausgabe hoher Geschwindigkeit, der Logikausgabe niedriger Geschwindigkeit und der analogen Ausgabe zusammengesetzt, ausschließlich der Kombination der Logikeingabe niedriger Geschwindigkeit und der Logikausgabe niedriger Geschwindigkeit. Spezifisch enthält die spezielle Einheit sowohl die Eingangsschnittstellenschaltung als auch die Ausgangsschnittstellenschaltung. Die Eingangsschnittstellenschaltung und die Ausgangsschnittstellenschaltung, die jeweils verschiedene Spezifikationen haben, können verwendet werden. Daher wird der für jeden Kanal vorgesehene Vorwärts/Rückwärts-Zähler für verschiedene spezielle Zwecke verwendet, um vollständig verwendet zu werden, um dadurch die ökonomischen Effekte zu verstärken.
  • Die Logikschaltungseinheit 1000n enthält die variable Filterschaltung 1010n, die in Reaktion auf die variable Filteranweisung REF arbeitet, die im Programmspeicher 113A gespeichert ist. Die variable Filterschaltung 1010n enthält den Vorwärts/Rückwärts-Zähler 2000n zum Aufwärts/Abwärts-Zählen eines vorbestimmten Taktsignals gemäß dem logischen Pegel des Eingangssignals, d. h. "H" oder "L", und den Benachrichtigungsbitspeicher 7000n, der als Eingangsbestimmungsschaltung dient. Das erste Einstellregister 3001n speichert die Filterkonstante, die als die Einstelldaten 3010n empfangen ist. Wenn der Wert des Registers für einen aktuellen Wert 4001n sich erhöht, um den Einstellwert im ersten Einstellregister 3001n zu erreichen, erzeugt das erste Einstellregister 3001n die Aufwärtszählausgabe Q, um die Aufwärtszähloperation zu stoppen. Wenn der aktuelle Wert des Registers für einen aktuellen Wert 4001n sich auf Null erniedrigt, erzeugt das erste Einstellregister 3001n die Rücksprungausgabe Q anstelle der Aufwärtszählausgabe Q, um die Abwärtszähloperation zu stoppen. Die Eingangsbestimmungsschaltung wird durch die Aufwärtszählausgabe Q eingestellt und durch die Rücksprungausgabe Q rückgesetzt. Die Ausgabe von der Eingangsbestimmungsschaltung wird als Benachrichtigungssignal 7010n gesendet.
  • Die variable Filteranweisung REF ist eine spezielle Anweisung mit der Solleingangsrelaisnummer X, der Nummer D des Datenregisters, das die erforderliche Eingangsfilterkonstante oder die direkt eingestellte Konstante K speichert, und die Nummer M des Hilfsrelais, das das Benachrichtigungssignal 7010n speichert. Auf eine Ausführung der speziellen Anweisung hin wird die Eingangsfilterkonstante zu dem ersten Einstellregister 3001n des Vorwärts/Rückwärts-Zählers 2000n entsprechend der Eingangsrelaisnummer X als die Einstelldaten 3010n gesendet. Gleichzeitig wird das Hilfsrelais M durch das Benachrichtigungssignal 7010n betrieben. Spezifisch wird der Hochgeschwindigkeits-Eingangsanschluss der speziellen Einheit als ein allgemeiner Eingang verwendet und kann das Eingangsfilter davon variabel eingestellt werden. Daher kann durch Einstellen der Filterkonstanten des Eingangsfilters auf größer als diejenige des für eine allgemeine Eingangsschaltung vorgesehenen Filters das Eingangssignal, das ein großes überlagertes Rauschen enthält, ausreichend geglättet werden, um in die CPU-Einheit geholt zu werden. Andererseits kann durch Einstellen der Filterkonstanten des Eingangsfilters auf kleiner als diejenige des für eine allgemeine Eingangsschaltung vorgesehenen Filters das Eingangssignal, das ein kleines überlagertes Rauschen enthält, schnell in die CPU-Einheit geholt werden. Auf diese Weise kann die Eingabeverarbeitung gemäß dem aktuellen Typ der Eingangssignalschaltung durchgeführt werden. Die variable Filterschaltung ist unter Verwendung des Vorwärts/Rückwärts-Zählers konfiguriert, der zu jedem der Eingangskanäle zugeteilt ist. Daher kann in dem Eingangskanal, der die Hochgeschwindigkeits-I/O-Verarbeitung nicht durchführt, der zu jedem Kanal zugeteilte Vorwärts/Rückwärts-Zähler effektiv verwendet werden. Als Ergebnis können die variablen Filterschaltungen in einem weiten Bereich auf einfache Weise erhalten werden.
  • Das integrierte Schaltungselement 10 oder die spezielle Einheit 130 oder 140, die das integrierte Schaltungselement enthält, enthält den Karteninformationsspeicherungsspeicher 9000. Der Systemspeicher 112A enthält ein Steuerprogramm, das als das Einstellanormalitäts-Detektionsmittel 905 dient. Der Karteninformationsspeicherungsspeicher 9000 speichert die erste und die zweite Identifikationsanschlussinformation 14a und 14b zum Identifizieren, ob die Schnittstellenschaltung für ein logisches Signal oder die Schnittstellenschaltung für ein analoges Signal an einen jeweiligen des ersten Ports 11 und des zweiten Ports 12 angeschlossen ist, und die erste und die zweite Signalanschlussinformation 16a und 16b zum Identifizieren, ob die Schnittstellenschaltung für das logische Signal niedriger Geschwindigkeit oder für das logische Signal hoher Geschwindigkeit dient, wenn die angeschlossene Schnittstellenschaltung für das logische Signal dient. Das Einstellanormalitäts-Detektionsmittel 905 erfasst, dass die Typen der I/O-Schnittstellenschaltungen, die an den ersten Port 11 und den zweiten Port 12 angeschlossen sind, und der Inhalt der im Programmspeicher 113A gespeicherten Anweisung einander nicht entsprechen, um die Operation zu stoppen und die Anormalität mitzuteilen. Spezifisch werden zum Starten der Operation die Karteninformation für den Typ der I/O-Schnittstellenschaltung der speziellen Einheit und der Inhalt der Anweisung im Programmspeicher verglichen. Wenn eine geeignete Anweisung verwendet wird, stoppt das Einstellanormalitäts-Detektionsmittel 905 die Operation und teilt die Anormalität mit. Daher ist es möglich, das Vorhandensein eines fehlerhaften Steuerprogramms zu finden, um einen Austestprozess bzw. Diagnoseprozess durchzuführen. Zusätzlich kann ein gefährlicher Betrieb vermieden werden. Demgemäß wird die Sicherheit verbessert.
  • Jeder von einigen oder alle der Vorwärts/Rückwärts-Zähler 2000n, die in den Logikschaltungseinheiten 1000n vorgesehen sind, enthält das Standby-Pufferregister 4004n. Das Standby-Pufferregister 4004n speichert temporär die vom Pufferspeicher 114b gesendeten numerischen Daten. Der Inhalt des Standby-Pufferregisters wird zu dem ersten Einstellregister 3001n oder dem zweiten Einstellregister 3002n basierend auf dem von der Logikschaltungseinheit 1000n erzeugten Zeitgabesignal gesendet. Ob die vom Pufferspeicher 114b gesendeten numerischen Daten zu dem ersten und dem zweiten Einstellregister durch das Standby-Pufferregister mit einer Zeitdifferenz gesendet werden oder direkt zu dem ersten und dem zweiten Einstellregister ohne durch das Standby-Pufferregister gesendet werden, wird basierend auf dem Inhalt der speziellen Anweisung bestimmt. Spezifisch enthält der Vorwärts/Rückwärts-Zähler 2000n das Standby-Pufferregister zum Steuern der Zeitgabe eines Transfers der Einstelldaten zu den Einstellregistern durch die Logikschaltungseinheit. Daher kann eine Vielzahl einer Einstellverarbeitung vor der Operation der Logikschaltungseinheit durchgeführt werden. Darüber hinaus können die Einstelldaten zu der Zeit aktualisiert werden, zu welcher das Zeitgabesignal von der Logikschaltungseinheit während der Operation der Logikschaltungseinheit erzeugt wird. Daher kann die Belastung einer Kommunikationssteuerung an dem Mikroprozessor für die Logikschaltungseinheit reduziert werden, um eine komplizierte Steuerungsoperation zu ermöglichen.
  • Der Systemspeicher 112A enthält das Steuerprogramm, das als das Transferverhinderungsmittel 920 dient, das während der Operation der programmierbaren Steuerung 100A ausgeführt wird. Das Transferverhinderungsmittel 920 ist die spezielle Anweisung, die für die spezielle Einheit 130 oder 140 verwendet wird, und ist eine Anweisung zum Erzeugen des Betriebsbeendigungssignals. Ab dem Start der Ausführung der speziellen Anweisung bis zu der Erfassung des Betriebsbeendigungssignals verhindert das Transferverhinderungsmittel 920 das Senden der Einstelldaten wenigstens zu dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n. Das Betriebsbeendigungssignal wird durch Lesen des Inhalts des Benachrichtigungsbitspeichers 7000n erhalten, wenn die Anzahl der zu dem ersten Port 11 eingegebenen Pulssignale oder der von dem zweiten Port erzeugten Pulssignale eine voreingestellte Sollanzahl von Pulsen erreicht oder die Erzeugung/das Zählen der Pulse durch das Befehlssignal beendet wird. Spezifisch enthält der Systemspeicher 112A ein Betriebsbeendigungsverifizierungsmittel zum Verhindern, dass die Steuerkonstante geändert wird, während die spezielle Einheit die I/O-Steuerung hoher Geschwindigkeit durchführt, um die Steuerkonstante, wie beispielsweise einen neuen Einstellwert, basierend auf dem Betriebsbeendigungssignal zu senden. Daher können deshalb, weil der Mikroprozessor managt, nicht fehlerhaft die Steuerkonstante für einen nächsten Betrieb während des Betriebs der speziellen Einheit zu empfangen, um einen fehlerhaften Steuerbetrieb zu verhindern, die Speicherkapazität von der speziellen Einheit und ihre Steuerbelastung reduziert werden.
  • Jeder von einigen oder allen der Vorwärts/Rückwärts-Zähler 2000n, die in den Logikschaltungseinheiten 1000n vorgesehen sind, enthält das Variations-Einstellregister 4003n. Das Variations-Einstellregister 4003n wird aktiviert, wenn eine Aufwärts/Abwärts-Zähleingabe zu dem Vorwärts/Rückwärts-Zähler 2000n zugeführt wird. Der im Variations-Einstellregister 4003n gespeicherte Wert wird zu dem aktuellen Wert des Registers für einen aktuellen Wert 4001n addiert oder von diesem subtrahiert. Spezifisch kann der inkrementelle/dekrementelle Wert durch eine einzige Zähloperation des Vorwärts/Rückwärts-Zählers durch den Inhalt des Variations-Einstellregisters geändert werden. Daher ist eine Aufwärtszählzeit, die zum Erreichen des oberen Grenzwerts als Ergebnis einer Addition erforderlich ist, umgekehrt proportional zu dem Inhalt des Variations-Einstellregisters. Die reziproke Berechnung unter Verwendung des Vorwärts/Rückwärts-Zählers wird durchgeführt, um eine Pulsausgabe in einem Zyklus entsprechend beispielsweise einer Sollfrequenz zu erzeugen. Darüber hinaus kann ein Erhöhungs/Erniedrigungs-Gradient des aktuellen Werts variabel eingestellt werden.
  • Die Logikschaltungseinheit 1000n enthält die Hochgeschwindigkeits-Zählerschaltung 1030n oder 1040m, die in Reaktion auf die im Programmspeicher 113A gespeicherte Hochgeschwindigkeits-Zähleranweisung HSC arbeitet. Die Hochgeschwindigkeits-Zählerschaltung 1030n oder 1040m ist irgendeiner eines 1-Phase-1-Eingang-Vorwärts/Rückwärts-Zählers, dessen Zählrichtung durch ein Befehlssignal 6030n bestimmt wird, eines 1-Phase-2-Eingangs-Vorwärts/Rückwärts-Zählers, zu welchem eine Aufwärts/Abwärts-Zähleingabe individuell zugeführt wird, und eines 2-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, in welchem eine Aufwärts/Abwärts-Zählrichtung basierend auf einer Phasendifferenz zwischen Eingaben bei zwei Phasen bestimmt wird. Weiterhin gibt es als die Hochgeschwindigkeits-Zählerschaltung 1030n oder 1040m, die den Betriebsmode der Hochgeschwindigkeits-Zählerschaltung bestimmt, die Hochgeschwindigkeits-Zählerschaltung, die ein Zählen auf eine Ausführung der Hochgeschwindigkeits-Zähleranweisung HSC hin beginnt, die Hochgeschwindigkeits-Zählerschaltung, die mit einer Zählstart-Befehlseingabe versehen ist, und die Hochgeschwindigkeits-Zählerschaltung, die mit der Voreinstellbefehlseingabe zum Transferieren der Anfangswertdaten zu dem Register für einen aktuellen Wert versehen ist. Die 2-Phasen-2-Eingang-Hochgeschwindigkeits-Zählerschaltung hat irgendeinen eines Einzelflanken-Auswertungsmodes, eines Doppelflanken-Auswertungsmodes und eines Vierfachflanken-Auswertungsmodes in Abhängigkeit davon, ob das Zählen bei einer Anstiegsflanke oder einer Abfallflanke des Pulssignals bei jeder Phase durchgeführt wird. Jede der Hochgeschwindigkeits-Zählerschaltungen ist mit einer eindeutigen Identifikationsnummer versehen.
  • Die Identifikationsnummer ist eine mehrziffrige Nummer entsprechend der Kombination der Platzierungsnummer, die die Position eines Anschlusses der speziellen Einheit, einschließlich der Hochgeschwindigkeits-Zählerschaltung, anzeigt, und der Erweiterungsnummer bb, die die Identifikation der Kanalnummer n oder m zulässt, die die Eingangsanschlussnummer der speziellen Einheit anzeigt, und die einem jeweiligen Betriebsmode entspricht. Die Hochgeschwindigkeits-Zähleranweisung HSC ist eine spezielle Anweisung mit den Operanden zum Bestimmen der Identifikationsnummer des Soll-Hochgeschwindigkeitszählers, der Nummer D des Datenregisters, das den Soll-Zählwert zum Erzeugen der Aufwärtszählausgabe oder die direkt eingestellte Konstante K speichert, der Nummer M des Hilfsrelais zum Bestimmen der Zählrichtung in dem Fall des 1-Phasen-1-Eingangs-Zählers und der Nummer C des Zählers, der die Aufwärtszählausgabe speichert. Auf eine Ausführung der speziellen Anweisung hin werden die Einstelldaten und das Zählrichtungs-Befehlssignal zu dem ersten Einstellregister 3001n oder 3001m und dem Befehls-Latch-Speicher 6000n oder 6000m entsprechend der Identifikationsnummer gesendet, um die Aufwärtszählausgabe Q von dem Benachrichtigungsbitspeicher 7000n oder 7000m zu den Vorrichtungsspeicher 114a mit der durch den Benachrichtigungsbitspeicher 7000n oder 7000m bestimmten Zählernummer als das Zählbeendigungs-Benachrichtigungssignal 7030n oder 7040m zu senden. Spezifisch ist jede der verschiedenen Hochgeschwindigkeits-Zählerschaltungen mit der Identifikationsnummer zum Vermeiden der Verwendung des Eingangskanals auf eine überlagernde Weise versehen. Gleichzeitig wird der Startbefehl oder der Voreinstellbefehl von dem Mikroprozessor geführt bzw. gelenkt, ohne den Eingangsanschluss der speziellen Einheit zu verwenden, wenn die Hochgeschwindigkeitsverarbeitung nicht erforderlich ist. Daher kann irgendeiner der verschiedenen Soll-Hochgeschwindigkeitszähler für jeden Kanal durch Verwenden eines einzigen Vorwärts/Rückwärts-Zählers erzeugt werden, der einem jeweiligen der Eingangskanäle zugeteilt ist. Darüber hinaus wird deshalb, weil der Startbefehl oder der Voreinstellbefehl, der die Hochgeschwindigkeitsverarbeitung nicht erfordert, den Eingangsanschluss der speziellen Einheit nicht verwendet, der Eingangsanschluss mit einer speziellen Funktion nicht nutzlos verwendet.
  • Die Hochgeschwindigkeits-Zählerschaltung 1030n oder 1040m hat die Hochgeschwindigkeits-Ausgabefunktion, die in Reaktion auf die Hochgeschwindigkeits-Vergleichsanweisung HCMP arbeitet, die im Programmspeicher 113A gespeichert ist. Die Hochgeschwindigkeits-Vergleichsanweisung HCMP ist eine spezielle Anweisung, die die Identifikationsnummer der Soll-Hochgeschwindigkeits-Zählerschaltung, die Nummer D des Datenregisters, das den Soll-Vergleichswert oder die direkt eingestellte Konstante K speichert, und die Nummer M des Hilfsrelais, das die Vergleichsübereinstimmungsausgabe speichert, als Operanden hat. Die spezielle Anweisung wird freigegeben, wenn das erste Port 11 als das Hochgeschwindigkeits-Eingangsport verwendet wird und das zweite Port 12 als das logische Ausgangsport verwendet wird. Auf eine Ausführung der speziellen Anweisung hin wird der Soll-Vergleichswert als die Einstelldaten 3030n oder 3040m zu dem zweiten Einstellregister 3002n oder 3002m des Vorwärts/Rückwärts-Zählers 2000n oder 2000m entsprechend der Identifikationsnummer gesendet. Die Aufwärtszählvergleichs-Übereinstimmungsausgabe P entsprechend einem gespeicherten Vergleichsübereinstimmungssignal bei dem Aufwärtszählbetrieb der zweiten Vergleichsschaltung 5002n oder 5002m wird zu dem Ausgangsanschluss mit der Kanalnummer n (m) entsprechend der Kanalnummer n (m) der Zähleingabe der Hochgeschwindigkeits-Zählerschaltung 1030n (1040m) gesendet. Gleichzeitig fungiert die Aufwärtszählvergleichs-Übereinstimmungsausgabe P als das Benachrichtigungssignal 7030m (7040m), um das bestimmte Hilfsrelais M anzutreiben. Das Hilfsrelais M wird angetrieben, um rückgesetzt zu werden, um die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückzusetzen. Spezifisch wird dann, wenn der aktuelle Wert des Hochgeschwindigkeitszählers identisch zu dem Soll-Vergleichswert wird, der Mikroprozessor über diese Übereinstimmung durch das Benachrichtigungssignal benachrichtigt. Gleichzeitig kann die Vergleichsübereinstimmungsausgabe von dem entsprechenden Ausgangskanal des zweiten Ports entsprechend dem Eingangskanal des ersten Ports erhalten werden. Daher kann das Vergleichsübereinstimmungssignal durch den Datenbus in den Mikroprozessor geholt werden, um im Mikroprozessor verwendet zu werden. Gleichzeitig kann das Steuersignal entsprechend der externen Last schnell gesendet werden.
  • Die Logikschaltungseinheit 1000n enthält die erste Pulsausgabeschaltung 1060m, die jedem geradzahligen Kanal m zugeteilt ist. Die Pulsausgabeschaltung arbeitet in Reaktion auf die im Programmspeicher 113A gespeicherte erste Pulsausgabenanweisung PLS. Die erste Pulsausgabeschaltung 1060m arbeitet in irgendeinem des Modes, in welchem die erste Pulsausgabeschaltung als ein Paar von Pulsausgaben zum Erzeugen von irgendeiner der Vorwärtspulsausgabe FP und der Rückwärtspulsausgabe RP arbeitet, und des Pulsausgabemodes, in welchem die Drehrichtungsbefehlsausgabe DIR zu der Vorwärts/Rückwärts-Pulsausgabe FRP hinzugefügt ist. Die Pulsausgabeschaltung in jedem der Ausgabemoden hat eine eindeutige Identifikationsnummer zum Besetzen von zwei Vorwärts/Rückwärts-Zählern 2000m und 2000m+1 in den benachbarten Kanälen. Einer der Vorwärts/Rückwärts-Zähler enthält das erste Einstellregister 3001m und das zweite Einstellregister 3002m, zu welchen die Konstanten proportional zu dem Pulszyklus niedriger Geschwindigkeit und dem Pulszyklus hoher Geschwindigkeit geschrieben werden, während der andere Vorwärts/Rückwärts-Zähler das erste Einstellregister 3001m+1 und das zweite Einstellregister 3002m+1 enthält, zu welchen die Konstanten geschrieben werden, die zu der Anzahl von bei dem Hochgeschwindigkeitsbetrieb erzeugten Pulsen und der Anzahl von bei dem Betrieb niedriger Geschwindigkeit erzeugten Pulsen gehören.
  • Die Identifikationsnummer ist eine mehrziffrige Nummer entsprechend der Kombination aus der Platzierungsnummer **, die die Position eines Anschlusses der speziellen Einheit einschließlich der Pulsausgabeschaltung 1060m anzeigt, und der Erweiterungsnummer bb, die die Identifikation der Kanalnummer n zulässt, die die Eingangsanschlussnummer der speziellen Einheit anzeigt, und die einem jeweiligen Betriebsmode entspricht. Die erste Pulsausgabeanweisung PLS ist eine spezielle Anweisung mit der Identifikationsnummer der Soll-Pulsausgabeschaltung 1060m, dem Operanden zum Spezifizieren der Nummer des Datenregisters, das die Sollanzahl von zu erzeugenden Pulsen speichert, die entsprechend der Drehrichtung positiv oder negativ ist, der Anzahl von Pulsen bei dem Betrieb niedriger Geschwindigkeit, dem Hochgeschwindigkeitsbetriebs-Pulszyklus und dem Pulszyklus eines Betriebs niedriger Geschwindigkeit und dem Operanden zum Spezifizieren der Nummer des Hilfsrelais, das den Befehl für einen erzwungenen Stopp, den Vorwärtsdrehungsbegrenzungs-Stoppbefehl oder den Rückwärtsdrehungsbegrenzungs-Stoppbefehl und das Pulserzeugungs-Beendigungssignal speichert. Auf eine Ausführung der speziellen Anweisung hin werden die Sollanzahl von zu erzeugenden Pulsen, die Anzahl von Pulsen eines Betriebs niedriger Geschwindigkeit, der Hochgeschwindigkeits-Pulszyklus und der Pulszyklus niedriger Geschwindigkeit als die Einstelldaten gesendet und werden der Drehrichtungsbefehl, der Befehl für einen erzwungenen Stopp und der Vorwärtsdrehungsbegrenzungs-Stoppbefehl oder der Rückwärtsdrehungsbegrenzungs-Stoppbefehl als das Befehlssignal gesendet, und zwar zu dem ersten und dem zweiten Einstellregister 3001m und 3002m oder 3001m+1 und 3002m+1 und dem Befehls-Latch-Speicher 6000m entsprechend der Identifikationsnummer. Das Pulserzeugungs-Beendigungssignal wird als das Benachrichtigungssignal 7060m zu dem Hilfsrelais M gesendet, das durch den Benachrichtigungsbitspeicher 7000m+1 bestimmt ist. Spezifisch enthält die in der speziellen Einheit enthaltene Logikschaltungseinheit die erste Pulsausgabeschaltung, die in Reaktion auf die erste Pulsausgabeanweisung arbeitet. Die erste Pulsausgabeschaltung besetzt die zwei Ausgänge, die durch die Identifikationsnummern identifiziert sind, um die Pulsausgaben von zwei Geschwindigkeiten auszugeben. Daher können durch Verwenden der zwei Vorwärts/Rückwärts-Zähler, die jeweils den Ausgangskanälen zugeteilt sind, verschiedene beabsichtigte Pulsausgaben für jede Pulsausgabeschaltung erzeugt werden. Selbst ohne eine Beschleunigungs/Abbrems-Verhinderungsfunktion zum linearen Erhöhen/Erniedrigen der Betriebsgeschwindigkeit kann die Logikschaltungseinheit auf einfache Weise für eine einfache Positionierungssteuerung zum Stoppen des Startbetriebs unter einer Selbststartfrequenz des Schrittmotors und zum Durchführen eines Hochgeschwindigkeitsbetriebs bei einer Frequenz, die gleich der Selbststartfrequenz oder höher als diese ist, verwendet werden.
  • Die Logikschaltungseinheit 1000n enthält die zweite Pulsausgabenschaltung 1070·0 (1070·4), die in Reaktion auf die zweite Pulsausgabeanweisung DRV arbeitet, die im Programmspeicher 113A gespeichert ist. Die zweite Pulsausgabeschaltung 1070·0 (1070·4) hat irgendeinen der zwei Betriebsmoden. In einem der Moden ist ein Paar von Pulsausgaben zum Erzeugen von irgendeiner der Vorwärtspulsausgabe FP und der Rückwärtspulsausgabe RP vorgesehen. Im anderen Mode wird der Puls ausgegeben, der durch Addieren der Drehrichtungs-Befehlsausgabe DIR zu der Vorwärts/Rückwärts-Pulsausgabe FRP erhalten ist. Die Pulsausgabeschaltung, die in jedem der Moden arbeitet, enthält wenigstens das Einstellregister für die Anzahl erzeugter Pulse, das Einstellregister für die Pulsfrequenz und das Einstellregister für die Beschleunigungs/das Abbremsen. Zusätzlich ist die Pulsausgabeschaltung mit einer eindeutigen Identifikationsnummer zum Besetzen von vier Vorwärts/Rückwärts-Zählern entsprechend zwei Eingängen und drei Ausgängen versehen. Die zweite Pulsausgabeschaltung enthält weiterhin den Vorwärts/Rückwärts-Zähler 2000·2 (2000·6) mit einer Addierfunktion zum Addieren eines in dem Variations-Einstellregister 4003·2 (4006·6) gespeicherten numerischen Werts zu dem Wert des Registers für einen aktuellen Wert 4001·2 (4001·6), wenn eine Addiererzähleingabe geliefert wird. Der vorbestimmte Koeffizient K ist in dem ersten Einstellregister 3001·2 (3001·6) des Vorwärts/Rückwärts-Zählers gespeichert, während die Soll-Pulsfrequenz im Variations-Einstellregister 4003·2 (4006·6) gespeichert ist. Als Ergebnis wird die Aufwärtszählausgabe Q in dem Zyklus, der umgekehrt proportional zu der Pulsfrequenz ist, erhalten. Mit der Erzeugung der Aufwärtszählausgabe Q wird das Register für einen aktuellen Wert 4001·2 (4001·6) rückgesetzt, um die Aufwärtszählausgabe Q entsprechend dem Soll-Pulszyklus zu erhalten. Die Identifikationsnummer ist eine mehrziffrige Nummer, die aus der Kombination aus der Platzierungsnummer, die die Position eines Anschlusses der speziellen Einheit einschließlich der Pulsausgabeschaltung 1070·0 (1070·4) anzeigt, und der Erweiterungsnummer bb, die die Identifikation der Kanalnummer n zulässt, die die Ausgangsanschlussnummer der speziellen Einheit anzeigt, und die einem jeweiligen der Betriebsmoden entspricht, zusammengesetzt ist.
  • Die zweite Pulsausgabeanweisung DRV ist eine spezielle Anweisung mit der Identifikationsnummer der Soll-Pulsausgabeschaltung 1070·0 (1070·4), dem Operanden zum Spezifizieren der Nummer D des Datenregisters, das die Sollanzahl von zu erzeugenden Pulsen speichert, die entsprechend der Drehrichtung positiv oder negativ ist, und der Nummer D des Datenregisters, das den Pulszyklus oder die Pulsfrequenz und die Daten zum Einstellen der Beschleunigungs/Abbrems-Rate speichert, und dem Operanden zum Spezifizieren der Nummer M des Hilfsrelais, das den Befehl für einen erzwungenen Stopp, den Vorwärtsdrehungsbegrenzungs-Stoppbefehl oder den Rückwärtsdrehungsbegrenzungs-Stoppbefehl und das Pulserzeugungs-Beendigungssignal speichert. Auf eine Ausführung der speziellen Anweisung hin werden die Sollanzahl von zu erzeugenden Pulsen, die Beschleunigungs/Abbrems-Ratendaten, die Soll-Pulsfrequenz und die Abbremsstartpositionsdaten als die Einstelldaten 3070·0 (3070·4) gesendet und werden der Drehrichtungsbefehl, der Befehl für einen erzwungenen Stopp und der Vorwärtsdrehungsbegrenzungs-Stoppbefehl oder der Rückwärtsdrehungsbegrenzungs-Stoppbefehl als das Befehlssignal 6070·0 (6070·4) gesendet, und zwar zu dem ersten und dem zweiten Einstellregister 3001n und 3002n von jedem Vorwärts/Rückwärts-Zähler entsprechend der Identifikationsnummer und dem Befehls-Latch-Speicher 6000n. Das Pulserzeugungs-Beendigungssignal wird als das Benachrichtigungssignal 7070·0 (7070·4) zu dem Hilfsrelais M gesendet, das durch den Benachrichtigungsbitspeicher 7000n bestimmt ist. Spezifisch enthält die in der speziellen Einheit enthaltene Logikschaltungseinheit die zweite Pulsausgabeschaltung, die in Reaktion auf die im Programmspeicher gespeicherte zweite Pulsausgabeanweisung arbeitet. Die zweite Pulsausgabeschaltung besetzt vier Vorwärts/Rückwärts-Zähler, die durch die Identifikationsnummern identifiziert sind. Daher können durch Verwenden der vier Vorwärts/Rückwärts-Zähler, die jeweils den I/O-Kanälen zugeteilt sind, verschiedene beabsichtigte Pulsausgaben von den jeweiligen Pulsausgabeschaltungen erzeugt werden. Darüber hinaus ist die zweite Pulsausgabeschaltung zusätzlich mit der Beschleunigungs/Abbrems-Steuerfunktion zum schrittweisen Erhöhen oder Erniedrigen der Sollgeschwindigkeit für jede Logikschaltungseinheit durch einfaches Empfangen eines vorbestimmten Beschleunigungs/Abbrems-Befehls vom Mikroprozessor versehen. Daher wird deshalb, weil der Mikroprozessor nicht erforderlich ist, um die Einstelldaten momentan zu aktualisieren, die Steuerungsbelastung am Mikroprozessor reduziert, um eine ruhige Beschleunigungs/Abbrems-Steuerung durchzuführen.
  • Die Logikschaltungseinheit 1000n enthält die modifizierte Pulsausgabeschaltung 1080·0 (1080·4), die durch teilweises Modifizieren der zweiten Pulsausgabeschaltung 1070·0 (1070·4) erhalten ist. Die modifizierte Pulsausgabeschaltung ist zusätzlich mit dem Positionierungs-I/O-Signal zum Arbeiten in Reaktion auf die Anweisung für ein Zurückkehren zu Null ZRN versehen, die im Programmspeicher 113A gespeichert ist. Der Systemspeicher 112A enthält das Steuerprogramm, das als das Parameteränderungsmittel 918 zum Erhalten der modifizierten Pulsausgabeschaltung 1080·0 (1080·4) dient. Das Positionierungseingangssignal ist aus dem Nahstellen-Klemmzapfensignal DOG, das in der Nähe der Nullstelle arbeitet, und dem Nullstellensignal ZERO, das in dem Servomotor vorgesehen ist, der durch die Pulsausgabe angetrieben wird, zusammengesetzt, zu welchem das Z-Phasensignal, das eine Pulsausgabe für eine Umdrehung des Servomotors erzeugt, eingegeben wird. Das Positionierungsausgangssignal enthält das Löschsignal CLR zum Rücksetzen des Restpulses der Positionierungsabweichung des Servoverstärkers zum Antreiben des Servomotors bei der Beendigung eines Zurückkehrens zu Null. Die Anweisung für ein Zurückkehren zu Null ZRN ist eine spezielle Anweisung mit der Identifikationsnummer der modifizierten Soll-Pulsausgabeschaltung 1080·0 (1080·4), dem Operanden zum Spezifizieren der Nummer D des Datenregisters, das wenigstens die Hochgeschwindigkeits-Pulsfrequenz oder den Pulszyklus für ein Zurückkehren zu Null, die Pulsfrequenz niedriger Geschwindigkeit oder die Pulsfrequenz für den Kriechbetrieb in der Nähe der Nullstelle, die Daten zum Einstellen der Beschleunigungs/Abbrems-Rate und die Anzahl von Nullstellensignalen speichert, und dem Operanden zum Spezifizieren der Nummer M des Hilfsrelais, das den Richtungsbefehl für ein Zurückkehren zu Null, den Befehl für einen erzwungenen Stopp, den Vorwärtsdrehungsbegrenzungs-Stoppbefehl oder den Rückwärtsdrehungsbegrenzungs-Stoppbefehl und das Beendigungssignal für ein Zurückkehren zu Null speichert.
  • Auf eine Ausführung der speziellen Anweisung hin werden die Pulsfrequenz für den Betrieb hoher Geschwindigkeit, die Pulsfrequenz für den Kriechbetrieb niedriger Geschwindigkeit, die Beschleunigungs/Abbrems-Rateneinstelldaten und die Anzahl von Nullstellensignalen als die Einstelldaten 3080·0 (3080·4) gesendet und werden der Richtungsbefehl für ein Zurückkehren zu Null, der Befehl für einen erzwungenen Stopp und der Vorwärtsdrehungsbegrenzungs-Stoppbefehl oder der Rückwärtsdrehungsbegrenzungs-Stoppbefehl als das Befehlssignal 6080·0 (6080·4) gesendet, und zwar zu dem ersten und dem zweiten Einstellregister 3001n und 3002n des Vorwärts/Rückwärts-Zählers entsprechend der Identifikationsnummer und dem Befehls-Latch-Speicher 6000n. Dann wird das Beendigungssignal für ein Zurückkehren zu Null als das Benachrichtigungssignal 7080·0 (7080·4) von dem Benachrichtigungsbitspeicher 7000n zu dem bestimmten Hilfsrelais M gesendet. Das Parameteränderungsmittel 918 dient zum Ändern der I/O-Schaltung des letzten Vorwärts/Rückwärts-Zählers, der die Anzahl erzeugter Pulse gezählt hat, in Reaktion auf die zweite Pulsausgabeanweisung DRV, um den Vorwärts/Rückwärts-Zähler als den letzten Vorwärts/Rückwärts-Zähler zum Zählen der Anzahl von Nullstellensignalen in Reaktion auf die Anweisung für ein Zurückkehren zu Null zu verwenden. Die Änderung bezüglich eines Anschlusses wird für eine begrenzte Zeitperiode ab dem Start einer Ausführung der Anweisung für ein Zurückkehren zu Null ZRN bis zu der Beendigung davon freigegeben. Die I/O-Schaltung ist normalerweise reproduzierbar als die Schaltung für die zweite Pulsausgabeanweisung DRV eingestellt. Spezifisch ist die zweite Pulsausgabeschaltung mit zwei Positionierungseingangssignalen und einem Positionierungsausgangssignal versehen. Durch Ändern der Parameter kann die Anweisung für ein Zurückkehren zu Null ohne ein Erhöhen der Anzahl besetzter Vorwärts/Rückwärts-Zähler verwendet werden. Daher kann durch Verwenden der besetzten fünf I/Os und der vier Vorwärts/Rückwärts-Zähler für die zweite Pulsausgabeanweisung der Betrieb für ein Zurückkehren zu Null auf einfache Weise durchgeführt werden. Insbesondere sind die zweite Pulsausgabeanweisung und die Anweisung für ein Zurückkehren zu Null in derselben Logikschaltung konfiguriert, außer für den letzten Vorwärts/Rückwärts-Zähler, und unterscheiden sich voneinander nur bezüglich des Inhalts des Steuerbefehls. Daher kann die Parametereinstellung für die Logikschaltungseinheit auf einfache Weise geändert werden.
  • Jede der ersten und der zweiten Pulsausgabeschaltung 1060m und 1070·0 (1070·4) ist zusätzlich mit dem Überwachungsmittel versehen, das in Reaktion auf die Leseanweisung für eine aktuelle Position DCVRD arbeitet, die im Programmspeicher 113A gespeichert ist. Diese Leseanweisung für eine aktuelle Position DCVRD hat den Operanden zum Spezifizieren der Identifikationsnummer der Soll-Pulsausgabeschaltung 1060m oder 1070·0 (1070·4) und der Nummer D des Datenregisters, das die aktuelle Positionsinformation in Bezug auf die Vorwärtsdrehungsbegrenzungsposition, die Rückwärtsdrehungsbegrenzungsposition oder die Nullstellenposition speichert. Auf eine Ausführung der speziellen Anweisung hin wird der Inhalt des aktuellen Registers 4001m+1 oder 4001·3 (4001·7), das die Pulsausgabeinformation der Pulsausgabeschaltung 1060m oder 1070·0 (1070·4) entsprechend der Identifikationsnummer nach der Beendigung einer Bewegung speichert, als die Berechnungsdaten 4060m oder 4070·0 (4070·7) gesendet. Als Ergebnis werden die Berechnungsdaten sequentiell algebraisch zu dem Datenregister D gemäß der Bewegungsrichtung addiert. Die vorbestimmten Anfangspositionsdaten werden im Voraus bei der Referenzposition einschließlich der Nullstelle oder der Vorwärts/Rückwärts-Drehungsbegrenzungsposition durch das sequentielle Programm geschrieben. Spezifisch wird das Ausmaß einer Bewegung, die in Reaktion auf die Pulsausgabeanweisung veranlasst ist, durch die Leseanweisung für eine aktuelle Position gelesen, um algebraisch zu dem Datenregister addiert zu werden, in welchem die vorbestimmten Anfangspositionsdaten bei der Referenzposition einschließlich der Nullstelle oder der Vorwärts/Rückwärts-Drehungsbegrenzungsposition durch das sequentielle Programm geschrieben sind. Daher kann deshalb, weil die Pulsausgabeschaltung nur das Ausmaß einer Bewegung für jede Zeit mitteilen muss, um zuzulassen, dass der Mikroprozessor die aktuelle Position kennt, und zwar als das Ergebnis des Vorwärts/Rückwärts-Betriebs bei verschiedenen Ausmaßen einer Bewegung, die Pulsausgabeschaltung mit niedrigen Kosten konfiguriert werden. Wenn das Sollausmaß einer Bewegung, das durch die Pulsausgabeanweisung bestimmt ist, kumulativ zu dem zweiten Datenregister addiert wird, in welchem die vorbestimmten Anfangspositionsdaten bei der Nullstellenposition oder der Vorwärts/Rückwärts-Drehungsbegrenzungsposition durch das sequentielle Programm geschrieben sind, kann durch das sequentielle Programm eines Anwenders bestimmt werden, ob eine normale Positionierungssteuerung durchgeführt wird oder nicht, in dem verglichen und bestimmt wird, ob die durch die kumulative Addition erhaltene aktuelle Sollposition und die durch die Leseanweisung für eine aktuelle Position erhaltene geschätzte aktuelle Position identisch zueinander sind.
  • Die dritte Pulsausgabeanweisung ABS, die anstelle der ersten Pulsausgabeanweisung PLS und der zweiten Pulsausgabeanweisung DRV verwendet wird, die in dem Programmspeicher 113A gespeichert sind, wird an die erste und die zweite Pulsausgabeschaltung 1060m und 1070·0 (1070·4) angelegt. Die dritte Pulsausgabeanweisung ABS bestimmt die Sollposition einer Bewegung anstelle des Sollausmaßes einer Bewegung, das durch die erste und die zweite Pulsausgabeanweisung PLS und DRV bestimmt ist. Das Daten-Umwandlungs/Transfer-Mittel 921 berechnet das Sollausmaß einer Bewegung basierend auf einer Differenz zwischen der aktuellen Position, die durch die Leseanweisung für eine aktuelle Position DCVRD detektiert bzw. erfasst und gespeichert ist, und der Soll-Bewegungsposition und sendet das Sollausmaß einer Bewegung zu dem ersten und dem zweiten Einstellregister 3001n und 3002n durch den Pufferspeicher 114b. Spezifisch kann die Positionierungssteuerung durch Bestimmen der absoluten Position mit dem Daten-Umwandlungs/Transfer-Mittel, das für den Systemspeicher vorgesehen ist, und der dritten Pulsausgabeanweisung durchgeführt werden. Daher können deshalb, weil ein relatives Ausmaß einer Bewegung für die Pulsausgabeschaltungen immer bestimmt wird, die erste und die zweite Pulsausgabeschaltung ohne irgendeine Modifikation verwendet werden, um einen Betrieb in Reaktion auf die dritte Pulsausgabeanweisung basierend auf der Absicht eines Anwenders durchzuführen.
  • Die Logikschaltungseinheit 1000n enthält die Pulsbreitenmessschaltung 1022n, die in Reaktion auf die im Programmspeicher 113A gespeicherte Pulsbreitenmessanweisung PWD arbeitet. Die Pulsbreitenmessschaltung 1022n ist durch den Vorwärts/Rückwärts-Zähler 2000n zum Arbeiten gemäß einem Übergang der Eingabelogik des Kanalanschlusses 11n konfiguriert, der mit der Eingangsschnittstellenschaltung 139X für ein logisches Signal hoher Geschwindigkeit verbunden ist, um die Anzahl von Taktsignalen zu zählen, die jeweils einen vorbestimmten Zyklus haben. Die Pulsbreitenmessschaltung 1022n speichert den aktuellen Zählerwert ab dem Übergang der Eingabelogik zu dem nächsten Übergang in dem Spitzenhalteregister 4002n, um den aktuellen Zählerwert als die Berechnungsdaten 4022n zu senden. Gleichzeitig sendet die Pulsbreitenmessschaltung 1022n das Messbeendigungssignal als das Benachrichtigungssignal 7022n. Der Mikroprozessor 111, der das Benachrichtigungssignal 7022n empfangen hat, setzt das Messbeendigungssignal in Reaktion auf das Befehlssignal 6022n zurück, um die Messung der Pulsbreite erneut zu starten. Die Pulsbreitenmessanweisung PWD wird für die spezielle Einheit 130 verwendet, mit welcher die Eingangsschnittstellenschaltung 139X für das logische Signal hoher Geschwindigkeit verbunden ist. Die Pulsbreitenmessanweisung PWD hat die Soll-Eingangsnummer X, die Nummer D des Datenregisters, das das Ergebnis einer Messung speichert, und die Nummer M des Hilfsregisters, das das Messbeendigungssignal speichert, als die Operanden. Auf eine Ausführung der speziellen Anweisung hin wird der Inhalt des Spitzenhalteregisters 4002n zu dem Datenregister D als die Berechnungsdaten 4022n transferiert und darin gespeichert. Gleichzeitig treibt das Messbeendigungssignal das Hilfsrelais M an, um den Betrieb des Hilfsrelais M rückzusetzen. Als Ergebnis wird der Befehl für ein erneutes Starten einer Messung als das Befehlssignal 6022n zu dem Befehls-Latch-Speicher 6000n gesendet. Spezifisch misst die Pulsbreitenmessschaltung die EIN-Breite oder die AUS-Breite des eingegebenen logischen Signals durch die Taktsignale und teilt diese mit. Daher berechnet der Mikroprozessor reziprok die gemessene Zeitbreite, um eine hochgenaue Erfassung der Drehgeschwindigkeit mit dem Drehpulssignal niedriger Geschwindigkeit zu ermöglichen. Zum einfachen Bestimmen, ob die Drehgeschwindigkeit bzw. Drehzahl niedriger Geschwindigkeit hoch oder niedrig ist, ist die reziproke Berechnung nicht erforderlich. Ob die Drehzahl hoch oder niedrig ist, kann basierend auf der Länge der gemessenen Zeit bestimmt werden.
  • Die Logikschaltungseinheit 1000n enthält die Flankenerfassungsschaltung 1031n, die in Reaktion auf die im Programmspeicher 113A gespeicherte Flankenerfassungsanweisung EDGE arbeitet. Die Flankenerfassungsschaltung 1031n ist durch den 1-Zähl-Vorwärts/Rückwärts-Zähler 2000n konfiguriert, der in Reaktion auf einen Übergang der Eingangslogik des Kanalanschlusses 11n arbeitet, der an die Eingangsschnittstellenschaltung 139X für ein logisches Signal hoher Geschwindigkeit angeschlossen ist, um wenigstens eine der Anstiegsflanke und der Abfallflanke zu erfassen und zu speichern, um die Flanke als das Benachrichtigungssignal 7031n zu senden. Der Mikroprozessor 111, der das Benachrichtigungssignal 7031n empfangen hat, setzt das Erfassungs/Speicherungs-Signal durch das Befehlssignal 6031n zurück, um die nächste Flankenerfassung neu zu starten. Die Flankenerfassungsanweisung EDGE wird an die spezielle Einheit 130 angelegt, an welche die Eingangsschnittstellenschaltung 139X für das logische Signal hoher Geschwindigkeit angeschlossen ist. Die Flankenerfassungsanweisung hat die Soll-Eingangsnummer X und die Nummer M des Hilfsrelais, das das Ergebnis einer Erfassung speichert, al die Operanden. Auf eine Ausführung der speziellen Anweisung hin, wird ein Wert, der 1 übersteigt, im ersten Einstellregister 3001n des Vorwärts/Rückwärts-Zählers 2000n gespeichert, während der Einstellwert von 1 im zweiten Einstellregister 3002n gespeichert wird. Die Anstiegsflanke wird durch die Aufwärtszählvergleichs-Übereinstimmungsausgabe P erfasst, die die Vergleichsübereinstimmung während des Aufwärtszählbetriebs der zweiten Vergleichsschaltung 5002n speichert. Mit der Erzeugung der Aufwärtszählvergleichs-Übereinstimmungsausgabe P werden die Zählrichtung und die Zähleingangslogik invertiert. Dann wird die Abfallflanke durch die Abwärtszählvergleichs-Übereinstimmungsausgabe P erfasst, die die Vergleichsübereinstimmung während des Abwärtszählbetriebs der zweiten Vergleichsschaltung 5002n speichert. Die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und die Abwärtszählvergleichs-Übereinstimmungsausgabe P werden als das Benachrichtigungssignal 7031n zu dem Hilfsrelais M gesendet. Durch Rücksetzen des Betriebs des Hilfsrelais M wird der Erfassungsneustartbefehl durch das Befehlssignal 6031n zu dem Befehls-Latch-Speicher 6000n gesendet. Spezifisch lassen die Aufwärtszählvergleichs-Übereinstimmungsausgabe und Abwärtszählvergleichs-Übereinstimmungsausgabe von dem Vorwärts/Rückwärts-Zähler die Erfassung der Anstiegsflanke oder der Abfallflanke des Eingangssignal zu. Daher kann der Vorwärts/Rückwärts-Zähler effektiv verwendet werden, um einen logischen Übergang des Eingangssignals schnell zu erfassen oder um den ankommenden Eingangssignalpuls mit einem kürzeren Zyklus als dem sequentiellen Berechnungszyklus zu erfassen und zu speichern.
  • Die Logikschaltungseinheit 1000n enthält die Pulsdichtemessschaltung 1020n, die in Reaktion auf die Pulsdichtemessanweisung FREQ arbeitet, die im Programmspeicher 113A gespeichert ist. Die Pulsdichtemessschaltung 1020n ist ein Zähler hoher Geschwindigkeit, dessen aktueller Zählerwert für jede vorbestimmte Zeit rückgesetzt wird. Durch Speichern des maximalen Zählwerts direkt vor dem Rücksetzen wird der digitale Wert erhalten, der proportional zu der Frequenz des eingegebenen Pulssignals ist. Die gemessene Frequenz wird im Spitzenhalteregister 4002n gespeichert. Die Pulsdichtemessanweisung FREQ wird an die spezielle Einheit 130 angelegt, an welche die Eingangsschnittstellenschaltung 139X für das logische Signal hoher Geschwindigkeit angeschlossen ist. Die Pulsdichtemessanweisung FREQ hat die Soll-Eingangsnummer X und die Nummer D des Datenregisters, das das Ergebnis einer Messung speichert, als die Operanden. Auf eine Ausführung der speziellen Anweisung hin wird der Inhalt des Spitzenhalteregisters 4002n zu dem Datenregister D als die Berechnungsdaten 4020n transferiert und darin gespeichert. Spezifisch enthält die in der speziellen Einheit enthaltene Logikschaltungseinheit die Pulsdichtemessschaltung, die in Reaktion auf die im Programmspeicher gespeicherte Pulsdichtemessanweisung arbeitet. Daher kann dann, wenn die Pulsdichtemessschaltung, die durch Verwenden von einem Vorwärts/Rückwärts-Zähler konfiguriert ist, der einem jeweiligen Eingangskanal zugeteilt ist, für die Eingangsschnittstellenschaltung für ein logisches Signal verwendet wird, die Pulsdichtemessschaltung verwendet werden, um beispielsweise die Pulsdichte des Drehpulssignals des Motors zu messen, um die Drehzahl des Motors zu messen.
  • Weiterhin enthält die Logikschaltungseinheit 1000n die PWM-Ausgabeschaltung 1050n, die in Reaktion auf die im Programmspeicher 113A gespeicherte PWM-Ausgabeanweisung PWM arbeitet. Die PWM-Ausgabeschaltung 1050n erzeugt ein Pulsbreitenmodulationssignal mit einem variablen Tastgradverhältnis (einem Verhältnis der EIN-Zeit zu dem EIN/AUS-Zyklus) in dem vorbestimmten Zyklus basierend auf den Inhalten des ersten und des zweiten Einstellregisters 3001n und 3002n. Die PWM-Ausgabeanweisung PWM wird an die spezielle Einheit 140 angelegt, an welche die Ausgangsschnittstellenschaltung 149Y für logische Signale angeschlossen ist. Die PWM-Ausgabeanweisung hat die Soll-Ausgangsnummer und die Nummer D des Datenregisters, das die Daten zum Bestimmen des Zyklus des Ausgangspulses und der EIN-Breite speichert, als die Operanden. Auf eine Ausführung der speziellen Anweisung hin werden zwei Datenelemente, die zu dem Zyklus des Ausgangspulses und der EIN-Breite oder der AUS-Breite gehören, temporär in dem Standby-Pufferregister 4004n als die Einstelldaten 3050n gespeichert. Die temporär gespeicherten Daten werden wieder zu dem ersten und dem zweiten Einstellregister 3001n und 3002n bei der Beendigung einer Erzeugung von einem Puls transferiert. Spezifisch enthält die in der speziellen Einheit enthaltene Logikschaltungseinheit die PWM-Ausgabeschaltung, die in Reaktion auf die im Programmspeicher gespeicherte PWM-Ausgabeanweisung arbeitet. Daher kann dann, wenn die PWM-Ausgabeschaltung, die durch Verwenden von einem Vorwärts/Rückwärts-Zähler konfiguriert ist, der zu jedem Kanal zugeteilt ist, für die Ausgangsschnittstellenschaltung für logische Signale verwendet wird, beispielsweise die PWM-Ausgabeschaltung für eine EIN/AUS-Steuerung einer elektrischen Last, wie beispielsweise eine Temperatursteuerung mit einem elektrischen Heizer oder eine Dimmersteuerung bei einer Glühlampe verwendet werden.
  • Zweites Ausführungsbeispiel
  • (1) Detaillierte Beschreibung einer Konfiguration
  • Hierin nachfolgend wird auf 30 hauptsächlich für die Beschreibung von Unterschieden gegenüber der in 1 dargestellte Konfiguration gemäß dem ersten Ausführungsbeispiel Bezug genommen, welche eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem zweiten Ausführungsbeispiel der vorliegenden Erfindung darstellt. In 30 sind dieselben oder äquivalente Komponenten, die in 1 dargestellt sind, mit denselben Bezugszeichen bezeichnet. In 30 enthält eine programmierbare Steuerung 100B eine CPU-Einheit 110B, die I/O-Einheit 120, I/O-Einheiten 150 bis 180 und einen Anschlussblock 190.
  • Elektrische Energie wird zu der CPU-Einheit 110B von einer externen Energieversorgung 109 zugeführt, die beispielsweise eine kommerzielle Energieversorgung für 100 V bis 240 V AC ist. Die CPU-Einheit 110B ist auch mit einem externen Werkzeug 108 durch ein entfernbares Anschlussstück (nicht gezeigt) verbunden, um zum Schreiben eines I/O-Steuerprogramms und zum Überwachen eines Betriebszustands fähig zu sein. Die CPU-Einheit 110B enthält einen Mikroprozessor 111, einen Systemspeicher 112B, einen Programmspeicher 113B, einen Vorrichtungsspeicher 114a, einen Pufferspeicher (114b mit nachfolgend beschriebenen Funktionen, eine Batterie 115, eine Bus-Schnittstellenschaltung 116, eine Warnungs-Anzeigeeinheit 117, eine serielle Schnittstelle 118 und eine Steuerungsenergieversorgung 119. Der Systemspeicher 112B ist beispielsweise ein Masken-ROM-Speicher oder ein nichtflüchtiger Flash-Speicher. Der Programmspeicher 113B ist beispielsweise ein nichtflüchtiger Flash-Speicher und speichert I/O-Steuerprogramme, die durch einen Anwender erzeugt sind. Der Vorrichtungsspeicher 114a ist beispielsweise ein RAM-Speicher und enthält I/O-Abbildungsspeicher X und Y, ein Hilfsrelais M und ein nachfolgend beschriebenes Datenregister D. Die Batterie 115 dient zum Sichern eines Teils des Vorrichtungsspeichers 114a. Die Bus-Schnittstellenschaltung 116 dient für eine Datenkommunikation mit jeder der I/O-Einheiten. Die serielle Schnittstelle 118 verbindet das externe Werkzeug 108 und den Mikroprozessor 111 miteinander. Unter den oben beschriebenen Komponenten sind der Mikroprozessor 111, der Systemspeicher 112B, der Programmspeicher 113B, der Vorrichtungsspeicher 114a, der Pufferspeicher 114b, die Bus-Schnittstelle 116 und die serielle Schnittstelle 118 durch einen Bus miteinander verbunden. Die Steuerungsenergieversorgung 119 kann auch außerhalb der CPU-Einheit 110B vorgesehen sein. Die Energieversorgungseinheit, die CPU-Einheit und eine vorbestimmte Anzahl von I/O-Einheiten bilden eine Basiseinheit.
  • Der Systemspeicher 112B enthält verschiedene Steuerprogramme, die oben unter Bezugnahme auf die 18 und 19 beschrieben sind. Der Systemspeicher 112B wandelt die I/O-Steuerprogramme in einer sequentiellen Sprache, die in dem Programmspeicher 113B gespeichert ist, in eine Maschinensprache um, die kompatibel zu dem Mikroprozessor 111 ist, um den Mikroprozessor 111 zu betreiben. Die Programme werden durch einen Hersteller der programmierbaren Steuerung zur Zeit eines Versendens des hergestellten Produkts gespeichert.
  • Ein sequentielles Programm für eine I/O-Steuerung, das durch den Anwender unter Verwendung des externen Werkzeugs 108 erzeugt ist, das beispielsweise ein Personalcomputer ist, wird zu dem Programmspeicher 113B durch die serielle Schnittstelle 118 geschrieben. Beispiele des sequentiellen Programms sind als die Ablauffolgendiagramme dargestellt, die in den 20 bis 25, 27 und 29 dargestellt sind, auf die oben Bezug genommen ist, und in der 36, auf die nachfolgend Bezug genommen wird. Die Erzeugung des Ablauffolgendiagramms auf dem Bildschirm des Personalcomputers erzeugt automatisch das sequentielle Programm.
  • Die oben beschriebenen I/O-Einheiten 120 und 150 bis 180 sind mit einer Endfläche der CPU-Einheit 110B verbunden. Die I/O-Einheit 120 ist eine oben unter Bezugnahme auf 1 beschriebene I/O-Einheit für allgemeine Zwecke, während die I/O-Einheiten 150 bis 180 spezielle Einheiten für einen EIN/AUS-Schaltsensor oder eine logische Last einer EIN/AUS-Operation oder einen analogen Sensor oder eine analoge Last sind.
  • Hierin nachfolgend wird hauptsächlich für die Beschreibung von Unterschieden zu den in den 2 und 3 dargestellten Konfigurationen auf die 31 bis 33 Bezug genommen werden, die jeweils interne Konfigurationen der in 30 dargestellten speziellen Einheiten 150 bis 170 darstellen. In den 31 bis 33 sind dieselben oder äquivalente Komponenten mit denselben Bezugszeichen bezeichnet. In 31 enthält die spezielle Einheit 150 Eingangsanschlüsse 150X, die mit acht analogen Sensoren 104a verbunden sind, und Ausgangsanschlüsse 150Y, die mit acht elektrischen Lasten 104y verbunden sind, die eine logische Operation hoher Geschwindigkeit durchführen. Eine Eingangsschnittstellenschaltung 159X für eine analoge Schaltung ist zwischen den Eingangsanschlüssen 150X und dem ersten Port 11 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Eingangsschnittstellenschaltung 159X enthält Spannung/Frequenz-Wandler 153n zum Erzeugen eines Pulses mit einer Frequenz proportional zu einer Eingangsspannung und Eingangsisolierschaltungen 151n Die Kombination aus dem Spannung/Frequenz-Wandler 153n, und der Eingangsisolierschaltung 151n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Ausgangsschnittstellenschaltung 159Y für eine EIN/AUS-Operation ist zwischen den Ausgangsanschlüssen 150Y und den zweiten Port vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Ausgangsschnittstellenschaltung 159Y enthält Ausgangselemente 157n, die Leistungstransistoren sind, und Ausgangsisolierschaltungen 156n. Die Kombination aus dem Ausgangselement 157n und der Ausgangsisolierschaltung 156n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen.
  • Die Eingangsanschlüsse 150X und die Eingangsschnittstellenschaltung 159X, die Ausgangsanschlüsse 150Y und die Ausgangsschnittstellenschaltung 159Y, ein Busverbindungsanschlussstück 1502 und das integrierte Schaltungselement 10 sind auf einem elektronischen Substrat 19ay montiert bzw. angebracht, um die spezielle Einheit 150 zu bilden. Der erste Identifikationsanschluss 14a ist mit der Erdungsschaltung GND verbunden, um anzuzeigen, dass die Eingangsschnittstellenschaltung 159X für eine analoge Eingabe verwendet wird, während der zweite Identifikationsanschluss 14b mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden ist, um anzuzeigen, dass die Ausgangsschnittstellenschaltung 159Y für logische Signale verwendet wird. Der erste Signalanschluss 16a ist mit der Erdungsschaltung GND verbunden, wenn die Eingangsschnittstellenschaltung eine Vergleichseingangsschaltung 189X ist, die nachfolgend beschrieben ist, und ist mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden, wenn die Eingangsschnittstellenschaltung den Spannung/Frequenz-Wandler enthält. Ein zweiter Signalanschluss 16b ist mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden, um anzuzeigen, dass die Ausgangsschnittstellenschaltung 159Y für logische Signale hoher Geschwindigkeit verwendet wird.
  • In 32 enthält die spezielle Einheit 160 Eingangsanschlüsse 160X, die mit acht EIN/AUS-Schaltsensoren 105x verbunden sind, und Ausgangsanschlüsse 160Y, die mit acht analogen Lasten 105b verbunden sind. Eine Schnittstellenschaltung 169X für eine Logikschaltung hoher Geschwindigkeit ist zwischen den Eingangsanschlüssen 160X und dem ersten Port 11 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Eingangsschnittstellenschaltung 169X enthält Eingangsisolierschaltungen 161n und Eingangsfilter 162n, die jeweils eine relativ kleine Zeitkonstante von beispielsweise etwa 5 μsek haben. Die Kombination aus der Eingangsisolierschaltung 161n und dem Eingangsfilter 162n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Ausgangsschnittstellenschaltung 169Y für analoge Lasten ist zwischen den Ausgangsanschlüssen 160Y und dem zweiten Port 12 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Ausgangsschnittstellenschaltung 169Y enthält Ausgangsisolierschaltungen 166n und Glättungsschaltungen 168n, wobei jede Glättungsschaltung einen Operationsverstärker enthält, der als Ausgangselement (nicht gezeigt) dient. Die Kombination aus der Ausgangsisolierschaltung 166n und der Glättungsschaltung 168n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Die Glättungsschaltung 168n glättet das von jedem von Kanalanschlüssen 12n des zweiten Ports 12 erzeugte Pulsbreitenmodulationssignal, um eine analoge Spannung proportional zu einem EIN/AUS-Tastgradverhältnis zu erhalten.
  • Die Eingangsanschlüsse 160X und die Eingangsschnittstellenschaltung 169X, die Ausgangsanschlüsse 160Y und die Ausgangsschnittstellenschaltung 169Y, das Busverbindungsanschlussstück 1602 und das integrierte Schaltungselement 10 sind auf einem elektronischen Substrat 19xb angebracht, um die spezielle Einheit 160 zu bilden. Der erste Identifikationsanschluss 14a ist mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden, um anzuzeigen, dass die Eingangsschnittstellenschaltung 169X für logische Signale verwendet, während der zweite Identifikationsanschluss 14b mit der Erdungsschaltung GND verbunden ist, um anzuzeigen, dass die Ausgangsschnittstellenschaltung 169Y für analoge Signale verwendet wird. Der erste Signalanschluss 16a ist mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden, um anzuzeigen, dass die Ausgangsschnittstellenschaltung 169Y für logische Signale hoher Geschwindigkeit verwendet wird, während der logische Pegel des zweiten Signalanschlusses 16b "H" ist, was anzeigt, dass der zweite Signalanschluss 16b nicht für einen nachfolgend beschriebenen analogen Vergleich verwendet wird.
  • In 33 enthält die spezielle Einheit 170 Eingangsanschlüsse 170X, die mit acht analogen Sensoren 106a verbunden sind, und Ausgangsanschlüsse 170Y, die mit acht analogen Lasten 106b verbunden sind. Eine Eingangsschnittstellenschaltung 179X für eine analoge Schaltung ist zwischen Eingangsanschlüssen 170X und dem ersten Port 11 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Eingangsschnittstellenschaltung 179X enthält Spannung/Frequenz-Wandler 173n zum Erzeugen eines Pulses mit einer Frequenz proportional zu einer Eingangsspannung und Eingangsisolierschaltungen 171n. Die Kombination aus dem Spannung/Frequenz-Wandler 173n und der Eingangsisolierschaltung 171n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Ausgangsschnittstellenschaltung 179Y ist zwischen den Ausgangsanschlüssen 170Y und dem zweiten Port 12 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Ausgangsschnittstellenschaltung 179Y enthält Ausgangsisolierschaltungen 176n und Glättungsschaltungen 178n, wobei jede Glättungsschaltung einen Operationsverstärker enthält, der als Ausgangselement (nicht gezeigt) dient. Die Kombination aus der Ausgangsisolierschaltung 176n und der Glättungsschaltung 178n ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Die Glättungsschaltung 178n glättet das von jedem der Kanalanschlüsse 12n des zweiten Ports 12 erzeugte Pulsbreitenmodulationssignal, um eine analoge Spannung proportional zu einem EIN/AUS-Tastgradverhältnis zu erhalten.
  • Die Eingangsanschlüsse 170X und die Eingangsschnittstellenschaltung 179X, die Ausgangsanschlüsse 170Y und die Ausgangsschnittstellenschaltung 179Y, ein Busverbindungsanschlussstück 170Z und das integrierte Schaltungselement 10 sind auf einem elektronischen Substrat 19ab angebracht, um die spezielle Einheit 170 zu bilden. Der erste Identifikationsanschluss 14a und zweite Identifikationsanschluss 14b sind mit der Erdungsschaltung GND verbunden, um anzuzeigen, dass die Identifikationsanschlüsse 14a und 14b für analoge I/O verwendet werden, während die logischen Pegel des ersten Signalanschlusses 16a und des zweiten Signalanschlusses 16b "H" sind, um anzuzeigen, dass die Signalanschlüsse 16a und 16b nicht für einen nachfolgend beschriebenen analogen Vergleich verwendet werden.
  • Hierin nachfolgend wird die Beschreibung unter Bezugnahme auf die 35 und 35 fortgesetzt werden. 34 ist ein Blockdiagramm, das die in 4 dargestellte Logikschaltungseinheit 1000n darstellt, die als Pulsdichtemessschaltung 1021n für analoge Signale verwendet wird (die hierin nachfolgend Analogsignal-Pulsdichtemessschaltung 1021n genannt wird), während 35 ein Blockdiagramm ist, das die als eine PWM-Ausgabeschaltung 1051n für analoge Lasten verwendete Logikschaltungseinheit 1000n darstellt (die hierin nachfolgend Analoglast-PWM-Ausgabeschaltung genannt wird). Die Analogsignal-Pulsdichtemessschaltung 1021n kann anstelle der in 6 dargestellten Pulsdichtemessschaltung 1020n verwendet werden. Obwohl die PWM-Ausgabeschaltung 1051n dieselbe Konfiguration wie diejenige der in 11 dargestellten PWM-Ausgabeschaltung 1050n hat, hat die PWM-Ausgabeschaltung 1051n Einstelldaten entsprechend einer D/A-Umwandlungsanweisung.
  • In 34 führt der Vorwärts/Rückwärts-Zähler 2000n, der die Pulsdichtemessschaltung 1021n (n = 0 bis 7) bildet, eine Aufwärtszähloperation durch, wenn ein Eingangssignal von dem Kanalanschluss 11n zu dem Zähleingangsanschluss IN eingegeben wird. Ein oberer 32-Bit-Grenzwert wird in dem ersten Einstellregister 3001n unter Verwendung der Einstelldaten 3021n gespeichert. Die gemeinsame Triggerschaltung 9002 erzeugt Triggersignale P0 und Q0 für jeden konstanten Zyklus T0. Ein aktueller Zählerwert des Registers für einen aktuellen Wert 4001n wird zu dem Spitzenhalteregister 4002n durch das Triggersignal P0 transferiert. Durch das darauffolgende Triggersignal Q0 wird ein Rücksetzsignal zu dem Rücksetzanschluss RST des Vorwärts/Rückwärts-Zählers 2000n zugeführt. Als Ergebnis wird der Inhalt des Registers für einen aktuellen Wert 4001n auf Null rückgesetzt. Daher wird der maximale Zählwert des Vorwärts/Rückwärts-Zählers 2000n, der für jeden konstanten Zyklus T0 rückgesetzt wird, direkt vor dem Rücksetzen für jede Zeit gespeichert. Der maximale Zählwert dient als Pulsdichte (spezifisch eine Pulsfrequenz) des Spannung/Frequenz-Wandlers, die zu dem Kanalanschluss 11n zugeführt wird, um durch Verwenden von Berechnungsdaten 4021n zu dem Mikroprozessor 111 gesendet zu werden.
  • Der maximale Zählwert wird in dem ersten Einstellregister 3001n eingestellt, während Zwischendaten in dem zweiten Einstellregister 3002n durch Verwenden der Einstelldaten 3021n eingestellt werden. Die Zwischendaten haben einen Wert entsprechend etwa einer Hälfte der Ausgangsfrequenz des Spannung/Frequenz-Wandlers entsprechend der eingegebenen maximalen Analogsignalspannung. Die zweite Vergleichsschaltung 5002n stellt die Bestimmungsspeicherungsschaltung S2 ein, wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4002n gleich den Zwischendaten oder größer als diese wird, die in dem zweiten Einstellregister 3002n gespeichert sind. Eine Ausgabe von der Bestimmungsspeicherungsschaltung S2 wird als die Aufwärtszählvergleichs-Übereinstimmungsausgabe P durch Verwenden eines Benachrichtigungssignals 7021n zum Mikroprozessor 111 gesendet. Jedoch wird die Bestimmungsspeicherungsschaltung S2 durch das Triggersignal PO rückgesetzt und wird durch die zweite Vergleichsschaltung 5002n in einer kurzen Zeitperiode gesetzt, bis der Vorwärts/Rückwärts-Zähler 2000n durch das Triggersignal Q0 rückgesetzt wird (eine Zeitbreite des Triggersignals).
  • Daher ist in dem Fall, in welchem irgendetwas von Null und der maximalen Spannung anstelle der Analogsignalspannung eingegeben wird, der logische Pegel der Ausgabe von der zweiten Vergleichsschaltung 5002n "L", wenn die Eingangsspannung Null ist. Daher ist der logische Pegel der Aufwärtszählvergleichs-Übereinstimmungsausgabe P "L". Wenn die Eingangsspannung die maximale Spannung ist, ist der logische Pegel der Ausgabe von der zweiten Vergleichsschaltung 5002 "H". Daher ist der logische Pegel der Aufwärtszählvergleichs-Übereinstimmungsausgabe P "H". Dies bedeutet folgendes. Jede der speziellen Einheiten 150 und 170 kann acht analoge Eingangssignale handhaben. Für die Anwendung, bei welcher nur ein analoges Eingangssignal zu handhaben ist, können die übrigen sieben Eingaben als logische EIN/AUS-Eingaben verwendet werden. Daher wird im Vergleich mit dem Fall, in welchem der digital umgewandelte Wert der maximalen Eingangsspannung durch Verwenden der Berechnungsdaten 4021n in dem Mikroprozessor 111 gelesen wird, um zu veranlassen, dass der Mikroprozessor 111 den digital gewandelten Wert mit dem Zwischenwert vergleicht, um eine logische Bestimmung durchzuführen, die Verarbeitung des Anwenders vereinfacht.
  • In 35 zählt der Vorwärts/Rückwärts-Zähler 2000n, der die PWM-Ausgabeschaltung 1051n (n = 0 bis 7) bildet, die von der gemeinsamen Taktschaltung 9001 erzeugten Taktsignale aufwärts. Das erste Einstellregister 3001n speichert einen Sollzyklus T des Pulsbreitenmodulationssignals 80, während das zweite Einstellregister 3002n eine Soll-AUS-Zeitbreite des Pulsbreitenmodulationssignals 80 speichert.
  • Der Mikroprozessor 111 sendet die Einstellwerte wie diejenigen, die oben beschrieben sind, durch Verwenden der Einstelldaten 30051n zu dem Standby-Pufferregister 4004n. Der Inhalt des Standby-Pufferregisters 4004n wird zu dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n, am Ende jedes Zyklus des Pulsbreitenmodulationssignals 80 gesendet. Im Vorwärts/Rückwärts-Zähler 2000n arbeitet dann, wenn sich der aktuelle Zählwert des Registers für einen aktuellen Wert 4001n erhöht, um den Einstellwert entsprechend der im zweiten Einstellregister 3002n gespeicherten AUS-Zeit zu erreichen, die Aufwärtszählvergleichs-Übereinstimmungsausgabe P, um von dem Kanalanschluss 12n zu dem entsprechenden Kanal der analogen Last 105b durch die Ausgangsschnittstellenschaltung 169Y und den Ausgangsanschluss 160Y zugeführt zu werden. Dieselbe Operation wird in den speziellen Einheiten 170 und 180 durchgeführt. Im Vorwärts/Rückwärts-Zähler 2000n arbeitet dann, wenn der aktuelle Zählwert des Registers für einen aktuellen Wert 4001n sich weiter erhöht, um den Einstellwert entsprechend dem im ersten Einstellregister 3001n gespeicherten Zyklus zu erreichen, die Aufwärtszählausgabe Q. Als Ergebnis wird der Inhalt des Registers für einen aktuellen Wert 4001n rückgesetzt. Gleichzeitig wird auch die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückgesetzt, um die Ausgabe von dem Kanalanschluss 12n auf AUS zu schalten. Als Ergebnis werden die Einstelldaten im Standby-Pufferregister 4004n zu dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n gesendet.
  • Daher ist der Zyklus T des Pulsbreitenmodulationssignals 80 gleich dem Produkt aus dem Zyklus τ des Taktsignals und dem im ersten Einstellregister 3001n gespeicherten Einstellwert N1: τ × N1. Die AUS-Zeitbreite des Pulsbreitenmodulationssignals 80 ist gleich dem Produkt aus dem Zyklus τ des Taktsignals und dem im zweiten Einstellregister 3002n gespeicherten Einstellwert N2: τ × N2. Daher wird die EIN-Zeitbreite des vom Kanalanschluss 12n ausgegebenen Pulsbreitenmodulationssignals 80 berechnet durch: τ × (N1 – N2). Wenn eine invertierte Logikausgabe der Aufwärtszählvergleichs-Übereinstimmungsausgabe P zum Kanalanschluss 12n zugeführt wird, entspricht das durch τ × N2 erhaltene Ergebnis der EIN-Zeitbreite, weil der EIN/AUS-Begriff invertiert ist. Daher ist in dem Fall der logischen Inversion der im zweiten Einstellregister 3002n gespeicherte Einstellwert N2 ein Einstellwert entsprechend der EIN-Zeitbreite.
  • Jede der speziellen Einheiten 160, 170 und 180 kann acht analoge Ausgaben durchführen. Für die Anwendung, bei welcher nur eine analoge Ausgabe erforderlich ist, können die übrigen sieben Ausgaben zum Reduzieren der Last an dem EIN/AUS-Betrieb verwendet werden. Spezifisch wird für die analogen Ausgangskanäle, an welche die PWM-Anweisung nicht angelegt wird, die PWM-Ausgabe gestoppt. Der Inhalt des Ausgangsabbildungsspeichers in dem Vorrichtungsspeicher 114a wird durch die Ausgabeverarbeitung 923 in 19 zu dem Ausgangs-Latch-Speicher 165, 175 oder 185 gesendet.
  • (2) Detaillierte Beschreibung der Funktionen und des Betriebs
  • In der programmierbaren Steuerung, die konfiguriert ist, wie es oben beschrieben ist, ist die Basisoperation des Mikroprozessors 111 unter Bezugnahme auf die 18 und 19 beschrieben worden, und daher ist die Beschreibung davon hierin weggelassen. Eine beispielhafte Verwendung von analogen I/O-Anweisungen wird nachfolgend unter Bezugnahme auf 36 beschrieben werden. 36(A1) stellt einen Schaltungsblock dar, der eine A/D-Umwandlungsanweisung ANRD anzeigt, die dann arbeitet, wenn ein Hilfsrelais M0100 durch eine Sequenzschaltung (nicht gezeigt) angetrieben wird. Die A/D-Umwandlungsanweisung ANRD ist eine spezielle Anweisung zum Messen einer Dichte eines Pulses von dem Spannung/Frequenz-Wandler 153n, der durch ein Eingangssignal X010 zu der speziellen Einheit 150 erzeugt wird, und zum Transferieren der gemessenen Pulsdichte zu einem Datenregister D0140, um einen A/D-gewandelten Wert zu erhalten. Beispielsweise speichert unter der Annahme, dass eine von dem Spannung/Frequenz-Wandler 153n erzeugte Frequenz 0 bis 100 kHz ist und ein Zyklus T0 des Signals von der gemeinsamen Triggersignalschaltung 9002 10 msek ist, wenn eine Signalspannung des analogen Sensors 104a 0 bis 10 V ist, das Spitzenhalteregister 4002n einen Wert von 1000, wenn die Eingangssignalspannung 10 V ist. Daher wird ein durch Multiplizieren der gemessenen Spannung mit 100 erhaltener Wert im Datenregister D0140 gespeichert.
  • Jedoch deshalb, weil angenommen wird, dass eine Variation bezüglich des Spannung/Frequenz-Wandlers 153n erzeugt wird, wird ein durch digitales Umwandeln einer bekannten Signalspannung erhaltener Wert im Voraus bei sowohl einer großen Frequenz als auch einer kleinen Frequenz gemessen, um einen Kalibrierungsfaktor α und einen Vorspannungskorrekturwert β zu berechnen. Als Ergebnis wird, wie es in den 36(A2) und 36(A3) dargestellt ist, eine durch eine Multiplikationsanweisung MUL und eine Additionsanweisung ADD kalibrierte erfasste Spannung in einem Datenregister D0142 erhalten. Wenn eine Hilfsrelaisnummer durch einen zweiten Operanden der A/D-Umwandlungsanweisung ANRD bestimmt wird, wie es in 36(A4) dargestellt ist, wird eine Konstante 500 im zweiten Einstellregister 3002n gespeichert. Als Ergebnis ändert sich auf eine Eingabe von 10 V als logische Signaleingabe der logische Pegel der Aufwärtszählvergleichs-Übereinstimmungsausgabe P zu "H". Andererseits ändert sich auf eine Eingabe von 0 V als logische Signaleingabe der logische Pegel der Aufwärtszählvergleichs-Übereinstimmungsausgabe P zu "L". Die Aufwärtszählvergleichs-Übereinstimmungsausgabe P wird durch Verwenden des Benachrichtigungssignals 7021n zu dem bestimmten Hilfsrelais 8050 gesendet.
  • 36(B3) stellt einen Schaltungsblock dar, der eine D/A-Umwandlungsanweisung ANWR anzeigt, die dann arbeitet, wenn ein Hilfsrelais M0101 durch eine Sequenzschaltung (nicht gezeigt) angetrieben wird. Die D/A-Umwandlungsanweisung ANWR erzeugt ein Pulsbreitenmodulationssignal mit dem Inhalt eines Datenregisters D0250 als einen Zyklus und dem Inhalt eines darauffolgenden Datenregisters D0251 als ein Tastgradverhältnis. Dann wird eine durch die Glättungsschaltung 168n geglättete analoge Ausgangsspannung zu einem Ausgangsanschluss Y020 der speziellen Einheit 160 ausgegeben. Bei diesem beispielhaften Fall wird, wie es in 36(B2) dargestellt ist, eine Konstante K10000 in dem Datenregister D0250 durch eine Transferanweisung MOV gespeichert. Durch eine Teilungsanweisung DIV, die in 36(B1) dargestellt ist, wird der Inhalt eines Datenregisters D0240, das eine Spannung speichert, für die beabsichtigt ist, dass sie ausgegeben wird, durch den maximalen Wert der analogen Ausgangsspannung geteilt, um ein erforderliches Tastgradverhältnis zu berechnen. Der erhaltene Wert wird im Datenregister D0251 gespeichert. Beispielsweise wird dann, wenn die analoge Ausgangsspannung von 0 bis 10 V ist, γ = 10 erhalten. Angesichts einer Variation bezüglich der Energieversorgungsspannung wird jedoch eine geeignete Kalibrierungskonstante γ als ein Ergebnis einer anfänglichen Kalibrierung verwendet.
  • Wenn die D/A-Umwandlungsanweisung ANWR angetrieben wird, wird der Wert im Datenregister D0250, das heißt K10000 zu dem ersten Einstellregister 3001n des in 35 dargestellten Vorwärts/Rückwärts-Zählers 2000n transferiert. Wenn der Zyklus τ des gemeinsamen Taktsignals gleich 1 μsek ist, ist der Zyklus des vom Kanalanschluss 12n erhaltenen PWM-Signals 10 msek. Wenn das EIN-Tastgradverhältnis 60% ist, wird 4000 μsek entsprechend der AUS-Zeitbreite in dem zweiten Einstellregister 3002n gespeichert. Wenn das EIN-Tastgradverhältnis 100% ist, wird 0 μsek entsprechend der AUS-Zeitbreite im zweiten Einstellregister 3002n gespeichert. Als Ergebnis wird eine Ausgangsspannung VmAx von der Glättungsschaltung 168n als 10 V erhalten. Für einen analogen Ausgang, an welchen die D/A-Umwandlungsanweisung ANWR nicht angelegt ist, wird, nachdem die PWM-Ausgabe in den Stoppzustand gebracht ist, ein EIN/AUS-Befehl zu dem Ausgangs-Latch-Speicher 165 durch die in 19 dargestellte Ausgabeverarbeitung 923 gesendet, um eine EIN/AUS-Antriebsausgabe von dem Kanalanschluss 12n zu erzeugen.
  • (3) Die anderen Beispiele
  • Als Nächstes wird hauptsächlich für die Beschreibung von Unterschieden gegenüber den in den 2 und de dargestellten Konfigurationen auf 37 Bezug genommen werden, die eine interne Konfiguration der in 30 gezeigten speziellen Einheit 180 darstellt. Dieselben oder äquivalente Komponenten sind mit denselben Bezugszeichen in den 2, 3 und 37 bezeichnet. In 37 enthält die spezielle Einheit 180 Eingangsanschlüsse 180X, die mit acht analogen Sensoren 107a verbunden sein können, und Ausganganschlüsse 180Y, die mit acht analogen Lasten 107b verbunden sein können. Eine Eingangsschnittstellenschaltung 189X für eine analoge Schaltung ist zwischen den Eingangsanschlüssen 180K und dem ersten Port 11 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Eingangsschnittstellenschaltung 189X enthält Vergleichsschaltungen 1811n und Eingangsisolierschaltungen 181n. Die Kombination aus der Vergleichsschaltung 1811n und der Eingangsisolierschaltung 181n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Eingangssignalspannung von dem analogen Sensor 107a wird an einen der Eingangsanschlüsse der Vergleichsschaltung 1811n angelegt, während eine von einer nachfolgend beschriebenen Ausgangsschnittstellenschaltung 189Y erhaltene Ausgangssignalspannung an den anderen Eingangsanschluss angelegt wird. Das Ergebnis eines Vergleichs zwischen den zwei Eingangsspannungen wird zu jedem der Kanalanschlüsse 11N des ersten Ports 11 durch die Eingangsisolierschaltung 181n eingegeben. Die Ausgangsschnittstellenschaltung 189Y für analoge Lasten ist zwischen den Ausgangsanschlüssen 180Y und dem zweiten Port 12 vorgesehen, das für das integrierte Schaltungselement 10 vorgesehen ist. Die Ausgangsschnittstellenschaltung 189Y enthält Ausgangsisolierschaltungen 186n und Glättungsschaltungen 188n, wobei jede Glättungsschaltung einen Operationsverstärker enthält, der als Ausgabeelement arbeitet (nicht gezeigt). Die Kombination aus der Ausgangsisolierschaltung 186n und der Glättungsschaltung 188n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Die Glättungsschaltung 188n glättet das von jedem der Kanalanschlüsse 12n des zweiten Ports 12 erzeugte Pulsbreitenmodulationssignal, um eine analoge Spannung proportional zu einem EIN/AUS-Tastgradverhältnis zu erhalten.
  • Die Eingangsanschlüsse 180X und die Eingangsschnittstellenschaltung 189X, die Ausganganschlüsse 180Y und die Ausgangsschnittstellenschaltung 189Y, ein Busverbindungsanschlussstück 180Z und das integrierte Schaltungselement 10 sind auf einem elektronischen Substrat 18ab angebracht, um die spezielle Einheit 180 zu bilden. Der erste und der zweite Identifikationsanschluss 14a und 14b sind mit der Erdungsschaltung GND verbunden, um anzuzeigen, dass die Anschlüsse 14a und 14b für eine analoge I/O verwendet werden, während der erste Signalanschluss 16a und der zweite Signalanschluss 16b mit der Erdungsschaltung GND verbunden sind, um anzuzeigen, dass die I/O-Schnittstellenschaltungen 189X und 189Y für einen analogen Vergleich verwendet werden.
  • Die spezielle Einheit 180 ist zum Vergleichen der Signalspannung von dem analogen Sensor 107a und einer vorbestimmten variablen Referenzspannung geeignet, um das Ergebnis eines Vergleichs zu erhalten. In diesem Fall, wird das zweite Port 12 zum Erhalten einer variablen Referenzspannung verwendet. Wenn beispielsweise nur ein Ausgang für einen analogen Vergleich verwendet wird, können die übrigen sieben Ausgänge zum Zuführen eines analogen Signals zu der analogen Last 107b oder für logische Ausgangssignale für eine kleine Last, wenn die analoge Last klein ist, verwendet werden. Als eine angelegte Anweisung für einen analogen Vergleich wird eine ANRD-Anweisung, wie in dem in 36(A4) dargestellten Fall, verwendet. Eine Eingangsnummer wird durch einen ersten Operanden der ANRD-Anweisung bestimmt, während eine Nummer des Hilfsrelais, das das Ergebnis eines Vergleichs speichert, durch einen zweiten Operanden bestimmt wird.
  • In der obigen Beschreibung ist jede der programmierbaren Steuerungen 100A und 100B als eine programmierbare Steuerung von einem Zugtyp beschrieben worden, wobei die CPU-Einheit und die I/O-Einheit, die jeweils innerhalb eines unabhängigen Kastens untergebracht sind, miteinander durch ein Verbindungsanschlussstück verbunden sind. Alternativ kann jedoch die programmierbare Steuerung wie folgt konfiguriert sein. Die CPU-Einheit und jede der I/O-Einheiten können auf einer gemeinsamen Basisplatte vorgesehen sein. Die Basisplatte enthält eine Vielzahl von Anschlussstücken, die miteinander durch einen Bus durch eine Hauptplatine verbunden sind. Jede der I/O-Einheiten ist mit jedem der Anschlussstücke verbunden. Weiterhin kann die programmierbare Steuerung alternativ dazu als eine programmierbare Steuerung von einem Einheitentyp konfiguriert sein, die die CPU-Einheit und die I/O-Einheiten enthält, die innerhalb eines Kastens untergebracht sind. Obwohl die Kommunikation zwischen der CPU-Einheit und jeder der I/O-Einheiten durch mehrere Datenbusse und Adressenbusse durchgeführt wird, werden die Busse in der Praxis als Daten/Adressen-Busse verwendet. Ein Steuerbus ist zusätzlich vorgesehen, um die Anzahl von Signalleitungen zu reduzieren. Die Kommunikation zwischen der CPU-Einheit und der speziellen Einheit kann ein serieller Bus unter Verwendung eines Seriell/Parallel-Wandlers sein. Zum schnellen Durchführen einer Ausführungsbeendigungsbenachrichtigung der speziellen Anweisung kann eine Unterbrechungssteuerungssignalleitung für den Mikroprozessor vorgesehen sein.
  • Bei dem oben beschriebenen Ausführungsbeispiel ist jeder der verschiedenen Hochgeschwindigkeitszähler und der Hochgeschwindigkeits-Pulsausgaben mit einer individuellen Nummer versehen, die aus der Erweiterungsnummer und der Platzierungsnummer zusammengesetzt ist. Die Kombination aus der speziellen Anweisung und der individuellen Nummer bestimmt den Inhalt des Parameterspeichers 8000n der Logikschaltungseinheit 1000n. Alternativ dazu kann die spezielle Anweisung mit einer Nummer entsprechend der Erweiterungsnummer versehen sein (beispielsweise wird die Hochgeschwindigkeits-Zähleranweisung HSC als eine Nummer dargestellt, die von HSC00 bis HSC96 variiert), um die I/O-Nummer ohne die Erweiterungsnummer zu lassen.
  • In der Eingangsschnittstellenschaltung für eine in 2 dargestellte Logikschaltung ist die Zeitkonstante des Eingangsfilters 132n auf beispielsweise 5 μsek eingestellt, um dazu fähig zu sein, die höchste Eingangspulsfrequenz zu handhaben. Wenn jedoch erwünscht ist, dass die Anzahl von Pulsen mit einer niedrigeren Frequenz bei verschiedenen Anwendungen gezählt wird, ist es erwünscht, die Zeitkonstante des Eingangsfilters 132n zu erhöhen, um eine fehlerhafte Operation zu verhindern, die durch Rauschen verursacht wird. Daher kann zusätzlich zu der variablen Filterschaltung mit einer Zeitkonstanten von 1 bis 54 msek, die in 5 dargestellt ist, ein variables Filter mit einer Zeitkonstanten von etwa 5 bis 20 μsek vorgesehen sein.
  • In der obigen Beschreibung enthält jede der Logikschaltungseinheiten 1000n den Parameterspeicher 8000n. Der Mikroprozessor 111 sendet Parameterdaten entsprechend einer angelegten Anweisung zu dem Parameterspeicher 8000n. Alternativ dazu kann jedoch die Logikschaltungseinheit 1000n eine Vielzahl von Parameterdaten enthalten und kann der Mikroprozessor 111 die zu verwendenden Parameterdaten aus der Vielzahl von Parameterdaten auswählen. In diesem Fall wird eine Auswahlnummer der Parameterdaten als Parameter gesendet. Weiterhin sind in der obigen Beschreibung die Systemspeicher 112A und 112B durch unterschiedliche Bezugszeichen bei dem ersten und dem zweiten Ausführungsbeispiel bezeichnet. In der Praxis werden jedoch dieselben Systemprogramme in den Systemspeichern 112A und 112B gespeichert.
  • (4) Zusammenfassung und Charakteristiken des zweiten Ausführungsbeispiels
  • Wie es aus der obigen Beschreibung offensichtlich ist, enthält die programmierbare Steuerung 100B gemäß dem zweiten Ausführungsbeispiel der vorliegenden Erfindung die CPU-Einheit 100B, die den Mikroprozessor 111, den Systemspeicher 112B, der in Zusammenarbeit mit dem Mikroprozessor 111 arbeitet, den Programmspeicher 113B, zu welchem das durch den Anwender erzeugte sequentielle Programm von dem externen Werkzeug 108 transferiert und geschrieben wird, und den Vorrichtungsspeicher 114a, der die I/O-Abbildungsspeicher X und Y zum Speichern der I/O-Information und der Steuerinformation hat, den Hilfsspeicher M und das Datenregister D und eine oder eine Vielzahl von den I/O-Einheiten 120 und 160 bis 180, die durch den Bus mit der CPU-Einheit verbunden sind, enthält. Einige oder alle der I/O-Einheiten dienen als die speziellen Einheiten 150 bis 180, die jeweils die integrierten Schaltungselemente 10 zum gemeinsamen Nutzen der speziellen I/O-Verarbeitungsfunktion enthalten, um die Steuerfunktion des Mikroprozessors 111 zu komplementieren bzw. zu vervollständigen. Die spezielle Einheit 150, 160, 170 oder 180 enthält das elektronische Substrat, auf welchem die externen Verbindungsanschlüsse 150X und 150Y, 160X und 160Y, 170X und 170Y oder 180X und 180Y, die mit wenigstens einen oder beiden der Vielzahl von externen Sensoren und externen Lasten verbunden sind, die Mehrkanal-Eingangsschnittstellenschaltung 159X, 169X, 179X oder 189X oder die Mehrkanal-Ausgangsschnittstellenschaltung 159Y, 169Y, 179Y oder 189Y, die mit dem externen Verbindungsanschluss verbunden sind, das integrierte Schaltungselement 10, das für eine I/O-Steuerung verwendet wird, deren Steuerungsspezifikationen teilweise variabel eingestellt werden können, und den Bus-Verbindungsanschluss 150Z, 160Z, 170Z oder 180Z zur Verbindung mit dem Mikroprozessor 111 angebracht sind. Das integrierte Schaltungselement 10 enthält das erste Port 11, zu welchem das logische Signal für eine EIN/AUS-Operation von der Eingangsschnittstellenschaltung 159X, 169X, 179X oder 189X eingegeben wird, das zweite Port 12 zum Ausgeben des logischen Signals für eine EIN/AUS-Operation zu der Ausgangsschnittstellenschaltung 159Y, 169Y, 179Y oder 189Y, den Parameterspeicher 8000n entsprechend jeder Kanalnummer n und die Logikschaltungseinheit 1000n, deren Betriebsspezifikationen für die I/O-Verarbeitung durch die von dem Mikroprozessor 111 zu dem Parameterspeicher gesendeten Schaltungsorganisationsdaten bestimmt werden.
  • Die Logikschaltungseinheit 1000n enthält weiterhin den Benachrichtigungsbitspeicher 7000n, das Berechnungsregister 4000n, das Einstellregister 3000n, den Befehls-Latch-Speicher 6000n und den Vorwärts/Rückwärts-Zähler 2000n. Der Vorwärts/Rückwärts-Zähler 2000n enthält das Register für einen aktuellen Wert 4001n, das einen Teil des Berechnungsregisters 4000n bildet. Die zu dem Parameterspeicher 8000n gesendeten Schaltungsorganisationsdaten lassen zu, dass eine Vielzahl von Eingabeverarbeitungen hoher Geschwindigkeit und eine Vielzahl von Ausgabenverarbeitungen hoher Geschwindigkeit durchgeführt werden. Wenn das Eingangssignal von dem externen Sensor ein analoges Signal ist, führt die Eingangsschnittstellenschaltung 159X, 179X oder 189X einen Puls mit einer Frequenz proportional zu dem Eingangssignal oder ein Vergleichsbestimmungslogiksignal zu dem integrierten Schaltungselement 10 zu. Wenn die externe Last eine analoge Last ist, erzeugt das integrierte Schaltungselement 10 eine Pulsausgabe mit einem befohlenen EIN/AUS-Verhältnis als Ausgangssignal. Die Ausgangsschnittstellenschaltung 169Y, 179Y oder 189Y glättet das empfangene Pulsausgangssignal und führt dann das geglättete Signal zu der externen Last zu.
  • Die CPU-Einheit 110B enthält den Pufferspeicher 114b für eine Datenkommunikation mit der speziellen Einheit 150, 160, 170 oder 180. Der Systemspeicher 112B enthält die Steuerprogramme, die als das Organisationsverarbeitungsmittel 908 und das Daten-Umwandlungs/Transfer-Mittel 921 dienen. Das Organisationsverarbeitungsmittel 908 sendet die Schaltungsorganisationsdaten zu dem Parameterspeicher 8000n und führt die Adressenorganisation des Pufferspeichers 114b durch. Das Daten-Umwandlungs/Transfer-Mittel 921 führt die Datenkommunikation zwischen dem Vorrichtungsspeicher 114a, der durch die spezielle Anweisung bestimmt ist, und dem Einstellregister 3000n und dem Befehls-Latch-Speicher 6000n oder dem Berechnungsregister 4000n und dem Benachrichtigungsbitspeicher 7000n durch den Pufferspeicher 114b durch. Die spezielle Anweisung ist aus dem Anweisungswort, das den Typ einer Anweisung anzeigt, und dem ersten Operanden und wenigstens einem des zweiten Operanden und des dritten Operanden, wobei die ersten bis dritten Operanden in keiner bestimmten Reihenfolge sind, zusammengesetzt.
  • Darüber hinaus enthält jede oder einige oder alle der Vorwärts/Rückwärts-Zähler 2000n, die in der Logikschaltungseinheit 1000n vorgesehen sind, das Register für einen aktuellen Wert 4001n, das erste Einstellregister 3001n, das zweite Einstellregister 3002, die erste Vergleichsschaltung 5001 und die zweite Vergleichsschaltung 5002n. Auf eine Ausführung der speziellen Anweisung hin wird ein Wert im Register für einen aktuellen Wert oder im ersten und zweiten Einstellregister von dem Mikroprozessor 111 durch den Pufferspeicher 114b eingestellt.
  • Die in der speziellen Einheit 150, 160, 170 oder 180 enthaltene Logikschaltungseinheit 1000n, enthält die Eingangsschaltung für allgemeine Zwecke 1091 oder die Ausgangsschaltung für allgemeine Zwecke 1092 für alle Kanäle. Die Eingangsschaltung für allgemeine Zwecke 1091 ist eine Eingangssignal-Relaisschaltung, in welcher das Eingangssignal, das mit dem ersten Port 11 verbunden ist, zu dem Eingangsabbildungsspeicherbereich, der im Vorrichtungsspeicher 114a zugeteilt ist, durch den Datenselektor 164 für eine Eingabeverarbeitung gesendet. Der Transfer vom Datenselektor zum Eingangsabbildungsspeicher wird durch das Eingabeverarbeitungsmittel 911 ausgeführt, das ein im Systemspeicher 112B gespeichertes Steuerprogramm ist. Die Ausgangsschaltung für allgemeine Zwecke 1092 ist eine Ausgangssignal-Relaisschaltung, die das Signal von dem im Vorrichtungsspeicher 114a zugeteilten Ausgangsabbildungsspeicherbereich durch den Ausgangs-Latch-Speicher 155, 165, 175 oder 185, der in der Logikschaltungseinheit 1000n vorgesehen ist, zu der mit dem zweiten Port 12 verbundenen Ausgangsschaltung ausgibt. Der Transfer von dem Ausgangsabbildungsspeicher zu dem Ausgangs-Latch-Speicher wird durch das Ausgabeverarbeitungsmittel 923 ausgeführt, das ein im Systemspeicher 112B gespeichertes Steuerprogramm ist. Die Eingangsschaltung für allgemeine Zwecke 1091 oder die Ausgangsschaltung für allgemeine Zwecke 1092 wird freigegeben, wenn die Logikschaltungseinheit 1000n nicht als Hochgeschwindigkeits-I/O-Schaltung oder als analoge I/O-Schaltung verwendet wird.
  • Die spezielle Einheit 150, 160 oder 170 enthält sowohl die Mehrkanal-Eingangsschnittstellenschaltung 159X, 169X oder 179X als auch die Mehrkanal-Aungangsschnittstellenschaltung 159Y, 169Y oder 170Y die jeweils an die externe Verbindungsanschlüsse 150X und 150Y, 160X und 160Y oder 170X und 170Y angeschlossen sind. Die Eingangsschnittstellenschaltung 159X, 169X oder 179X ist als irgendeine der Eingangsschnittstellenschaltung 169X für den EIN/AUS-Schaltsensor klassifiziert, die das Eingangsfilter mit einer kleinen Zeitkonstanten zum Handhaben des Hochgeschwindigkeits-Eingangsimpulses oder das Eingangsfilter mit einer großen Zeitkonstanten, zu welchem der Hochgeschwindigkeits-Eingangspuls nicht eingegeben wird, enthält, und der Eingangsschnittstellenschaltung 159X oder 179X für den analogen Sensor, die den Spannung/Frequenz-Wandler enthält. Die Ausgangsschnittstellenschaltung 159Y, 169Y oder 179Y ist als irgendeine der Ausgangsschnittstellenschaltung 159Y, die einen Transistor zum Durchführen einer Schaltoperation hoher Geschwindigkeit zum Handhaben eines Hochgeschwindigkeits-Ausgangspulses als Ausgabeelement oder einen Transistor zum Durchführen einer Schaltoperation niedriger Geschwindigkeit, der keinen Hochgeschwindigkeits-Ausgangspuls ausgibt, und der Ausgangsschnittstellenschaltung 169Y oder 179Y für analoge Lasten, die die Glättungsschaltung 168n oder 178n für die von der Logikschaltungseinheit 1000n erzeugte Pulsbreitenmodulationssignalausgabe enthält, klassifiziert. Jeder einer Vielzahl von Typen der speziellen Einheiten 150, 160 und 170 ist anwendbar zusammengesetzt aus einer beliebigen Kombination von irgendeiner der logischen Eingabe hoher Geschwindigkeit, der logischen Eingabe niedriger Geschwindigkeit und der analogen Eingabe und irgendeiner der logischen Ausgabe hoher Geschwindigkeit, der logischen Ausgabe niedriger Geschwindigkeit und der analogen Ausgabe, ausschließlich der Kombination der logischen Eingabe niedriger Geschwindigkeit und der logischen Ausgabe niedriger Geschwindigkeit. Spezifisch enthält die spezielle Einheit sowohl die Eingangsschnittstellenschaltung als auch die Ausgangsschnittstellenschaltung. Verschiedene Spezifikationen können für jede der Eingangsschnittstellenschaltung und der Ausgangsschnittstellenschaltung verwendet werden. Daher wird der für jeden Kanal vorgesehene Vorwärts/Rückwärts-Zähler bei verschiedenen speziellen Anwendungen verwendet, um vollständig verwendet zu werden, um dadurch die ökonomischen Effekte zu erhöhen.
  • Das integrierte Schaltungselement 10 oder die spezielle Einheit 150, 160 oder 170 mit dem integrierten Schaltungselement 10 enthält den Karteninformationsspeicherungsspeicher 9000. Der Systemspeicher 112B enthält ein Steuerprogramm, das als das Einstellanormalitäts-Detektionsmittel 905 dient. Der Karteninformationsspeicherungsspeicher 9000 speichert die erste und die zweite Identifikationsanschlussinformation 14a und 14b zum Identifizieren, ob die Schnittstellenschaltung für logische Signale oder die Schnittstellenschaltung für analoge Signale mit dem ersten Port 11 und dem zweiten Port 12 verbunden ist, und die erste und die zweite Signalanschlussinformation 16a und 16b zum Identifizieren, ob die Schnittstellenschaltung für das logische Signal niedriger Geschwindigkeit oder für das logische Signal hoher Geschwindigkeit ist, wenn die angeschlossene Schnittstellenschaltung für das logische Signal ist. Das Einstellanormalitäts-Detektionsmittel 905 erfasst bzw. detektiert, dass der Typ der an den ersten Port 11 und den zweiten Port 12 angeschlossenen I/O-Schnittstellenschaltungen und der Inhalt der im Programmspeicher 113B gespeicherte Anweisung einander nicht entsprechen, um die Operation zu stoppen und die Anormalität mitzuteilen.
  • Die Logikschaltungseinheit 1000n enthält die Pulsdichtemessschaltung 1021n, die in Reaktion auf die im Programmspeicher 113B gespeicherte A/D-Umwandlungsanweisung ANRD arbeitet. Die Pulsdichtemessschaltung 1021n ist ein Hochgeschwindigkeitszähler, dessen aktueller Zählerwert für jede vorbestimmte Zeit rückgesetzt wird. Die Pulsdichtemessschaltung 1021n speichert den maximalen Zählwert direkt vor dem Rücksetzen, um einen digitalen Wert proportional zu der Frequenz des eingegebenen Pulssignals zu erhalten. Die gemessene Frequenz wird im Spitzenhalteregister 4002n gespeichert. Die A/D-Umwandlungsanweisung ANRD wird für die speziellen Einheiten 150 und 170 verwendet, an welche die Eingangsschnittstellenschaltungen 159X und 179X für das analoge Signal jeweils angeschlossen sind. Die A/D-Umwandlungsanweisung ANRD hat die Soll-Eingangsnummer X und die Nummer D des Datenregisters, das das Ergebnis einer Messung der von dem Spannung/Frequenz-Wandler 153n oder 173n der Eingangsnummer erzeugten Pulsfrequenz speichert, als Operanden. Auf eine Ausführung der speziellen Anweisung hin wird der Inhalt des Spitzenhalteregisters 4002n zu dem Datenregister D als die Berechnungsdaten 4021n transferiert und darin gespeichert. Spezifisch enthält die in der speziellen Einheit enthaltene Logikschaltungseinheit die Pulsdichtemessschaltung, die in Reaktion auf die im Programmspeicher gespeicherte A/D-Umwandlungsanweisung arbeitet. Spezifisch kann dann, wenn die Pulsdichtemessschaltung, die durch Verwenden von einem Vorwärts/Rückwärts-Zähler konfiguriert ist, der zu jedem Eingangskanal zugeteilt ist, für die Eingangsschnittstellenschaltung für analoge Signale verwendet wird, die den Spannung/Frequenz-Wandler enthält, die Pulsdichtemessschaltung als der A/D-Wandler zum Erhalten des digital umgewandelten Werts proportional zu der eingegebenen analogen Signalspannung verwendet werden.
  • In der Pulsdichtemessschaltung 1021n wird der Zwischen-Einstellwert im zweiten Einstellregister 3002n des Vorwärts/Rückwärts-Zählers 2000n gespeichert. Wenn ein Durchschnittswert der eingegebenen Signalspannungen durch den analogen Sensor 104a oder 106a gleich der Eingangsspannung oder höher als diese ist, die dem mittleren Einstellwert entspricht, wird die Aufwärtszählvergleichs-Übereinstimmungsausgabe P zum Speichern der Erzeugung der Vergleichsübereinstimmungsausgabe von der zweiten Vergleichsschaltung 5002n während des Aufwärtszählbetriebs betrieben. Wenn der Durchschnittswert der eingegebenen Signalspannungen zu dem Kanalanschluss 11n kleiner als die Eingangsspannung entsprechend dem mittleren Einstellwert ist, wird die Aufwärtszählvergleichs-Übereinstimmungsausgabe P nicht von der zweiten Vergleichsschaltung 5002n während des Aufwärtszählbetriebs erzeugt, um die Aufwärtszählvergleichs-Übereinstimmungsausgabe P rückzusetzen. Die A/D-Umwandlungsanweisung ANRD wird für die speziellen Einheiten 150 und 170 verwendet, an welche die Eingangsschnittstellenschaltungen 159X und 179X für analoge Signale jeweils angeschlossen sind. Die A/D-Umwandlungsanweisung ANRD hat die Soll-Eingangsnummer X und die Nummer M des Hilfsrelais, das das Benachrichtigungssignal 7021n speichert, als Operanden. Auf eine Ausführung der speziellen Anweisung hin wird der Inhalt der Aufwärtszählvergleichs-Übereinstimmungsausgabe P als das Benachrichtigungssignal 7021n gesendet, um das Hilfsrelais M anzutreiben. Spezifisch wird in der Pulsdichtemessschaltung der mittlere Einstellwert im zweiten Einstellregister gespeichert. Demgemäß werden in der speziellen Einheit, die für analoge Eingangssignale verwendet wird, wenn die Anzahl von erforderlichen analogen Eingangssignalen klein ist, die übrigen analogen Eingangsanschlüsse als die Logiksignaleingabe der EIN/AUS-Operation verwendet, um zu verhindern, dass die Anschlüsse unökonomisch ungenutzt bleiben.
  • Die Logikschaltungseinheit 1000n enthält die PWM-Ausgabeschaltung 1051n, die in Reaktion auf die im Programmspeicher 113B gespeicherte D/A-Umwandlungsanweisung ANWR arbeitet. Die PWM-Ausgabeschaltung 1051n erzeugt das Pulsbreitenmodulationssignal mit einem variablen Tastgradverhältnis (einem Verhältnis der EIN-Zeit zu dem EIN/AUS-Zyklus) in einem vorbestimmten Zyklus basierend auf den Inhalten des ersten Einstellregisters 3001n und des zweiten Einstellregisters 3002n. Die D/A-Umwandlungsanweisung ANWR wird für die speziellen Einheiten 160, 170 und 180 verwendet, an welche die Ausgangsschnittstellenschaltungen 169Y, 179Y und 189Y für analoge Signale jeweils angeschlossen sind. Die D/A-Umwandlungsanweisung ANWR hat die Soll-Ausgangsnummer und die Nummer D des Datenregisters, das die Daten zum Bestimmen des Zyklus und der EIN-Zeitbreite des Ausgangspulses speichert, als Operanden. Auf eine Ausführung der speziellen Anweisung werden zwei Elemente der Daten für den Zyklus und die EIN-Zeitbreite oder die AUS-Zeitbreite des Ausgangspulses temporär als die Einstelldaten 3051n im Standby-Pufferregister 4004n gespeichert. Die temporär gespeicherten Daten werden wieder zu dem ersten Einstellregister 3001n und dem zweiten Einstellregister 3002n bei der Beendigung einer Erzeugung von einem Puls transferiert. Spezifisch enthält die in der speziellen Einheit enthaltene Logikschaltungseinheit die PWM-Ausgabeschaltung, die in Reaktion auf die D/A-Umwandlungsanweisung arbeitet, die im Programmspeicher gespeichert ist. Daher kann dann, wenn die PWM-Ausgabeschaltung, die durch Verwenden von einem Vorwärts/Rückwärts-Zähler konfiguriert ist, der jedem Kanal zugeteilt ist, für die Ausgangsschnittstellenschaltung für analoge Signale verwendet wird, die die Glättungsschaltung für das PWM-Signal enthält, die PWM-Ausgabeschaltung als D/A-Wandler zum Ausgeben einer analogen Signalspannung proportional zu dem durch den Mikroprozessor befohlenen digitalen Wert verwendet werden.
  • Weiterhin enthält die spezielle Einheit 180 sowohl die Mehrkanal-Eingangsschnittstellenschaltung 189X als auch die Mehrkanal-Ausgangsschnittstellenschaltung 189Y, die jeweils mit den externen Verbindungsanschlüssen 180X und 180Y verbunden sind. Die Ausgangsschnittstellenschaltung 189Y ist eine Schnittstellenschaltung für analoge Lasten, die die Glättungsschaltung 188n für die durch die Logikschaltungseinheit 1000n von dem zweiten Port 12 ausgegebene Pulsbreitenmodulationssignalausgabe PWM enthält. Die Eingangsschnittstellenschaltung 189X enthält die Vergleichsschaltung 1811n, die das Eingangssignal von dem analogen Sensor 107a und das geglättete Signal der Pulsbreitenmodulationssignalausgabe PWM vergleicht, um ein binarisiertes logisches Signal zu erzeugen und zu dem ersten Port 11 einzugeben. Die spezielle Einheit 180 treibt die analoge Last für den nicht überlagernden I/O-Kanal an oder erhält ein Signal, das das Ergebnis eines Vergleichs zwischen dem analogen Eingangssignal und dem variablen Vergleichswert anzeigt. Spezifisch werden die Eingangsschnittstellenschaltung, die die Vergleichsschaltung enthält, und die Ausgangsschnittstellenschaltung für analoge Signale zum Freigeben des analogen Vergleichs und der analogen Ausgabe verwendet. Daher kann der jedem Kanal zugeteilte Vorwärts/Rückwärts-Zähler effektiv verwendet werden, um die Erzeugung von exzessiven I/Os zu verhindern. Gleichzeitig können verschiedene analoge Verarbeitungen durchgeführt werden.
  • Drittes Ausführungsbeispiel
  • (1) Detaillierte Beschreibung einer Konfiguration
  • Hierin nachfolgend wird auf 38 Bezug genommen werden, die eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem dritten Ausführungsbeispiel der vorliegenden Erfindung darstellt. In 38 enthält eine programmierbare Steuerung 100C eine CPU-Einheit 110C, die I/O-Einheiten 220, 230, 240, 250 und 260A und einen Anschlussblock 290.
  • Elektrische Energie wird zu der CPU-Einheit 110C von einer externen Energieversorgung 109 zugeführt, die beispielsweise eine kommerzielle Energieversorgung für 100 V bis 240 V AC ist. Die CPU-Einheit 110C ist auch durch ein entfernbares Anschlussstück (nicht gezeigt) mit einem externen Werkzeug 108 verbunden, um zum Schreiben eines I/O-Steuerprogramms und zum Überwachen eines Betriebszustands fähig zu sein. Die CPU-Einheit 110C enthält einen Mikroprozessor 111, einen Systemspeicher 112C, einen Programmspeicher 113C, einen Vorrichtungsspeicher 114a, einen Pufferspeicher 114b, der nachfolgend beschrieben wird, eine Batterie 115, eine Bus-Schnittstellenschaltung 116, eine Warnungs-Anzeigeeinheit 117, eine serielle Schnittstelle 118 und eine Steuerungsenergieversorgung 119. Der Systemspeicher 112C ist beispielsweise ein Masken-ROM-Speicher. Der Programmspeicher 113C ist beispielsweise ein nichtflüchtiger Flash-Speicher und speichert I/O-Steuerprogramme, die durch einen Anwender erzeugt sind. Der Vorrichtungsspeicher 114a ist beispielsweise ein RAM-Speicher und enthält I/O-Abbildungsspeicher, ein Hilfsrelais und ein nachfolgend beschriebenes Datenregister. Die Batterie 115 sichert einen Teil des Vorrichtungsspeichers 114a. Die Bus-Schnittstellenschaltung 116 dient für eine Datenkommunikation mit jeder der I/O-Einheiten. Die serielle Schnittstelle 118 verbindet das externe Werkzeug 108 und den Mikroprozessor 111 miteinander.
  • Unter den oben beschriebenen Komponenten sind der Mikroprozessor 111, der Systemspeicher 112C, der Programmspeicher 113C, der Vorrichtungsspeicher 114a, der Pufferspeicher 114b, die Bus-Schnittstelle 116 und die serielle Schnittstelle 118 durch einen Bus miteinander verbunden.
  • Elektrische Energie wird von der externen Energieversorgung 109 zu der Steuerungsenergieversorgung 119 zugeführt, die wiederum eine geregelte 24V-DC-Energie zu einer Eingangssignalschaltung (nicht gezeigt) oder beispielsweise eine geregelte 5V-DC-Spannung zu einer Konstantspannungs-Energieversorgungsleitung Vcc zuführt. Die Konstantspannungs- Energieversorgungsleitung Vcc ist zusammen mit einer Erdungsschaltung GND für jede Einheit vorgesehen. Die Steuerungsenergieversorgung 119 kann auch außerhalb der CPU-Einheit 110C vorgesehen sein. Die Energieversorgungseinheit, die CPU-Einheit und eine vorbestimmte Anzahl von I/O-Einheiten bilden eine Basiseinheit.
  • Der Systemspeicher 112C enthält verschiedene Steuerprogramme, die nachfolgend unter Bezugnahme auf 44 beschrieben werden. Der Systemspeicher 112C wandelt die I/O-Steuerprogramme in einer sequentiellen Sprache, die in dem Programmspeicher 113C gespeichert ist, in eine Maschinensprache um, die kompatibel mit dem Mikroprozessor 111 ist, um den Mikroprozessor 111 zu betreiben. Die Programme werden durch einen Hersteller zur Zeit eines Versendens des hergestellten Produkts gespeichert. Der Systemspeicher 112C ist ein Masken-ROM-Speicher oder ein nichtflüchtiger Speicher, wie beispielsweise ein Flash-Speicher.
  • Ein durch den Anwender unter Verwendung des externen Werkzeugs 108, das beispielsweise ein Personalcomputer ist, erzeugtes sequentielles Programm für eine I/O-Steuerung wird in den Programmspeicher 113C durch die serielle Schnittstelle 118 geschrieben. Beispiele des sequentiellen Programms sind als Ablauffolgediagramme der oben beschriebenen 20 bis 25, 27 und 29 dargestellt. Die Erzeugung des Ablauffolgediagramms auf einem Personalcomputerbildschirm erzeugt automatisch ein sequentielles Programm. Der Programmspeicher 113C kann ein RAM-Speicher sein, der durch die Batterie gesichert ist. In diesem Fall lässt das Anbringen einer Speicherkassette, einschließlich eines nichtflüchtigen Speichers, wie beispielsweise eines Flash-Speichers oder eines EPROM, zu, dass der nichtflüchtige Speicher als Programmspeicherbereich verwendet wird.
  • Der Vorrichtungsspeicher 114a ist ein RAM-Speicher, der I/O-Signalinformation oder einen Betriebszustand einer Vorrichtung, wie beispielsweise eines Hilfsrelais, eines Zeitgebers, eines Zählers und eines Datenregisters offen für den Anwender, das in der programmierbaren Steuerung 100C vorgesehen ist, speichert. Ein Teil des Vorrichtungsspeichers 114a wird durch die Batterie 115 gesichert, die beispielsweise eine Lithium-Batterie ist. Die Batterie 115 hält einen Speicherungszustand selbst dann, wenn die Energieversorgung zu der programmierbaren Steuerung 100C abgetrennt ist. Die Warnungs-Anzeigeeinheit 117 zeigt einen Betriebszustand des Mikroprozessors 111 an und besteht aus beispielsweise einer Vielzahl von lichtemittierenden Dioden oder einer Siebensegmentanzeige. Die Warnungs-Anzeigeeinheit 117 zeigt eine ankommende Energieversorgung, einen normalen Betriebszustand und verschiedene anormale Zustände an.
  • Die I/O-Einheit 220 ist mit der CPU-Einheit 110C durch ein Anschlussstück (nicht gezeigt) verbunden, das an einer Endfläche der CPU-Einheit 110C vorgesehen ist. Ein externes Ein/Aus-Schaltsignal 101x und eine elektrische Last 101y sind mit der I/O-Einheit 220 durch einen I/O-Anschlussblock (nicht gezeigt) verbunden. Die I/O-Einheit 220 als beispielhaftes Ausführungsbeispiel ist in eine Vielzahl von Eingangseinheiten und eine Vielzahl von Ausgangseinheiten aufgeteilt. Die Anzahl von zu verwendenden Eingangseinheiten und diejenige von zu verwendenden Ausgangseinheiten entsprechen der erforderlichen Anzahl von Eingängen und derjenigen von Ausgängen. Das Ein/Aus-Schaltsignal 101x ist beispielsweise verschiedene Betriebsschalter und ein Sensorschalter zum Bestätigen von Operationen von Stellgliedern, die auf einer Steuertafel vorgesehen sind. Beispielsweise können acht Eingangssignale mit einer Eingangseinheit verbunden sein. Für den Anschluss einer größeren Anzahl der Ein/Aus-Signale wird die Anzahl von anzuschließenden Eingangseinheiten erhöht. Die elektrische Last 101y ist beispielsweise verschiedene Anzeigelampen, ein elektromagnetisches Ventil zum Antreiben des Stellglieds oder ein elektromagnetisches Relais zum Antreiben eines Motors, die auf der Steuertafel vorgesehen sind. Beispielsweise können acht Ausgangssignale mit einer Ausgangseinheit verbunden sein. Für den Anschluss einer größeren Anzahl elektrischer Lasten wird die Anzahl von anzuschließenden Ausgangseinheiten erhöht.
  • Eine in der I/O-Einheit 220 vorgesehene Eingangsschnittstellenschaltung enthält eine Eingangsisolierschaltung 221, wie beispielsweise einen Fotokoppler-Transistor oder einen Foto-Triac, ein Eingangsfilter 222 zum Beschränken von Rauschen und einen Datenselektor 224. Eine in der I/O-Einheit 220 vorgesehene Ausgangsschnittstellenschaltung enthält einen Latch-Speicher 225 zum Antreiben eines Signals, das die elektrische Last 101y antreibt, eine Ausgangsisolierschaltung 226, wie beispielsweise einen Fotokoppler-Transistor, einen Foto-Triac oder ein elektromagnetisches Relais, und ein Ausgabeelement 227, wie beispielsweise einen Leistungstransistor, einen Triac oder ein elektromagnetisches Relais.
  • Die I/O-Einheit 230 konfiguriert eine spezielle Einheit, die das integrierte Schaltungselement 20, das erste Port 21 und das zweite Port 22 enthält. Die spezielle Einheit wird exklusiv für eine Eingabe verwendet. Beispielsweise werden acht EIN/AUS-Schaltsignale 102x, die mit hoher Geschwindigkeit arbeiten, durch eine Eingangsisolierschaltung 231a und ein Eingangsfilter 232a zu der speziellen Einheit eingegeben, während acht EIN/AUS-Schaltsignale 102xx, die mit hoher Geschwindigkeit arbeiten, durch eine Eingangsisolierschaltung 231b und ein Eingangsfilter 232b eingegeben werden.
  • Die I/O-Einheit 240 konfiguriert eine spezielle Einheit, die das integrierte Schaltungselement 20, das erste Port 21 und das zweite Port 22 enthält. Die spezielle Einheit wird für sowohl eine Eingabe als auch eine Ausgabe verwendet. Beispielsweise werden acht EIN/AUS-Schaltsignale 103x, die mit hoher Geschwindigkeit arbeiten, durch eine Eingangsisolierschaltung 241 und ein Eingangsfilter 242 zu der speziellen Einheit eingegeben, während acht elektrische Lasten 103y, die mit hoher Geschwindigkeit arbeiten, durch eine Ausgangsisolierschaltung 246b und ein Ausgabeelement 247 aktiviert werden.
  • Die I/O-Einheit 250 bildet eine spezielle Einheit, die das integrierte Schaltungselement 20, das erste Port 21 und das zweite Port 22 enthält. Die spezielle Einheit wird ausschließlich für eine Ausgabe verwendet. Beispielsweise werden acht elektrische Lasten 103y, die mit hoher Geschwindigkeit arbeiten, durch eine Ausgangsisolierschaltung 256a und ein Ausgabeelement 257a angetrieben, während acht elektrische Lasten 104yy, die mit hoher Geschwindigkeit arbeiten, durch eine Ausgangsisolierschaltung 256b und ein Ausgabeelement 2547 angetrieben werden. Irgendeines der integrierten Schaltungselemente 20 hat das erste Port 21 und das zweite Port 22, die für beide I/O verwendet werden. Ob die spezielle Einheit ausschließlich für eine Eingabe verwendet wird, für beide I/O verwendet wird oder ausschließlich für eine Ausgabe verwendet wird, wird durch Verwendung des ersten und des zweiten Ports bestimmt, das heißt, ob das erste und zweite Port als Eingangsports oder Ausgangsports verwendet werden.
  • Auf einen Anschluss von beispielsweise acht analogen Sensoren 105a hin erhält eine I/O-Einheit 260A 12-Bit-digital gewandelte Daten für jeden von analogen Achtkanal-Eingängen durch ein Eingangsfilter 262, einen Mehrkanal-A/D-Wandler 263, eine Eingangsisolierschaltung 261 und einen Datenselektor 264, die eine Eingangsschnittstellenschaltung bilden. Auf einen Anschluss von beispielsweise acht analogen Lasten 105b hin erzeugt die I/O-Einheit 260A eine analog umgewandelte Ausgabe von digitalen 12-Bit-Daten durch einen Latch-Speicher 265, eine Ausgangsisolierschaltung 266 und einen Mehrkanal-D/A-Wandler 268, die eine Ausgangsschnittstellenschaltung bilden. Die I/O-Einheit 260A ist in der Praxis in analoge Eingangseinheiten und analoge Ausgangseinheiten aufgeteilt. Die Anzahl von analogen Eingangseinheiten und analogen Ausgangseinheiten entsprechend der Anzahl erforderlicher analoger I/Os wird verwendet.
  • Der Anschlussblock 290, der in der letzten Stufe angeschlossen ist, enthält eine Abschlussverarbeitungsschaltung bzw. Beendigungsverarbeitungsschaltung 299. Die Abschlussverarbeitungsschaltung 299 verbindet einen Anschluss eines Datenbusses DATA und denjenigen eines Adressenbusses ADR, die von der CPU-Einheit 110C durch die I/O-Einheiten zur Verfügung gestellt sind, mit der Konstantspannungs-Energieversorgungsleitung Vcc und einer Erdungsschaltung GND durch eine Pullup-Schaltung und eine Pulldown-Schaltung, um ein reflektiertes Rauschen eines Hochgeschwindigkeitssignals zu beschränken. Eine Durchführungs-Bussignalleitung als beispielhaftes Ausführungsbeispiel enthält sechzehn Busse für sowohl Adresse als auch Daten (was hierin nachfolgend Adressen/Daten-Busse genannt wird) und acht Steuersignalbusse. Ob die sechzehn Adressen/Daten-Busse mit einem Adressensignal oder gesendeten/empfangenen Daten zu handhaben sind, wird durch eine Steuersignalleitung bestimmt. Weiterhin enthält jede der I/O-Einheiten eine Bussteuerung (nicht gezeigt). Unter mehreren Datenselektoren und Latch-Speichern ist derjenige, der durch den Mikroprozessor 111 bestimmt ist, mit dem Datenbus verbunden, um mit dem Mikroprozessor 111 kommunizieren zu können.
  • Hierin nachfolgend wird die spezielle Einheit 240 mit der in 38 dargestellten Konfiguration unter Bezugnahme auf die 39 und 40 beschrieben werden. 39 stellt eine Konfiguration der speziellen Einheit 240 auf der Seite eines EIN/AUS-Schaltsignals dar, während 40 eine Konfiguration auf der Seite einer elektrischen Last darstellt. In den 39 und 40 enthält die spezielle Einheit 240 Eingangsanschlüsse 240X, um mit acht EIN/AUS-Schaltsignalen 103x verbunden zu werden, und Ausgangsanschlüsse 240Y, um mit acht elektrischen Lasten 103y verbunden zu werden. Eine Eingangsschnittstellenschaltung 249X für eine Logikschaltung ist zwischen den Eingangsanschlüssen 240X und dem ersten Port 21 vorgesehen, das für das integrierte Schaltungselement 20 vorgesehen ist. Die Eingangsschnittstellenschaltung 249X enthält eine Eingangsisolierschaltungen 241n und Eingangsfilter 242n mit einer relativ kleinen Zeitkonstanten von beispielsweise etwa 5 μsek. Die Kombination aus der Eingangsisolierschaltung 241n und dem Eingangsfilter 242n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Ausgangsschnittstellenschaltung 249Y für eine EIN/AUS-Operation ist zwischen den Ausgangsanschlüssen 240Y und dem zweiten Port 22 vorgesehen, das für das integrierte Schaltungselement 20 vorgesehen ist. Die Ausgangsschnittstellenschaltung 249Y enthält Ausgabeelemente 247n entsprechend Leistungstransistoren und Ausgangsisolierschaltungen 246n. Die Kombination aus dem Ausgabeelement 247n und der Ausgangsisolierschaltung 246n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen.
  • Das erste Port 21 enthält Kanalanschlüsse 21n, die jeweils der Kanalnummer n = 0 bis 7 entsprechen. Auf dieselbe Weise enthält das zweite Port 22 Kanalanschlüsse 22n, die jeweils der Kanalnummer n = 0 bis 7 entsprechen (die Kanalanschlüsse 21n und 22n sind nicht mit einem Bezugszeichen dargestellt). Für jeden Kanalanschluss ist eine Logikschaltungseinheit 1100n oder 1200n mit derselben Konfiguration vorgesehen. Einer der Vielzahl von Eingangsanschlüssen der in 39 dargestellten Logikschaltungseinheit 1100n ist direkt mit dem Kanalanschluss 21n verbunden, während einer der Vielzahl von Ausgangsanschlüssen der Logikschaltungseinheit 1100n indirekt mit dem Kanalanschluss 21n durch ein erstes Gatterelement 25n verbunden ist. Ein Gatteranschluss von jedem der Gatterelemente 25n ist mit der Konstantspannungs-Energieversorgungsleitung Vcc durch einen ersten Moden-Schaltanschluss 28a verbunden. Dieser Anschluss bedeutet, dass das erste Port 21 nicht mit der Ausgangsschnittstellenschaltung 249Y verbunden ist, sondern mit der Eingangsschnittstellenschaltung 249X. Gleichzeitig ist der logische Pegel des Moden-Schaltanschlusses 28a "H", um das erste Gatterelement 25n in einen geschlossenen Zustand zu bringen. Der erste Identifikationsanschluss 24a ist auch mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden. Diese Verbindung dient zum Identifizieren, dass die Eingangsschnittstellenschaltung 249X nicht für analoge Signale, sondern für logische Signale verwendet wird. Weiterhin ist der logische Pegel eines ersten Signalanschlusses 26a "H", was anzeigt, dass der erste Signalanschluss 26a nicht für den oben beschriebenen analogen Vergleich verwendet wird.
  • Einer der Vielzahl von Eingangsanschlüssen der in 40 dargestellten Logikschaltungseinheit 1200n ist direkt mit dem Kanalanschluss 22n verbunden, während einer der Vielzahl von Ausgangsanschlüssen der Logikschaltungseinheit 1200n indirekt mit dem Kanalanschluss 22n durch ein zweites Gatterelement 27n verbunden ist. Ein Gatteranschluss von jedem der Gatterelemente 27n ist mit der Erdungsschaltung GND durch einen zweiten Moden-Schaltanschluss 28b verbunden. Dies bedeutet, dass das zweite Port 22 nicht mit der Eingangsschnittstellenschaltung 249X verbunden ist, sondern mit der Ausgangsschnittstellenschaltung 249Y. Gleichzeitig ist der logische Pegel des zweiten Moden-Schaltanschlusses 28b "L", um das zweite Gatterelement 27n in einen geschlossenen Zustand zu bringen. Ein zweiter Identifikationsanschluss 24b ist mit der Konstantspannungs-Energieversorgungsleitung Vcc verbunden. Die Verbindung dient zum Identifizieren, dass die Ausgangsschnittstellenschaltung 249Y nicht für analoge Lasten verwendet wird, sondern für eine EIN/AUS-Operation. Weiterhin ist der logische Pegel eines zweiten Signalanschlusses 26b "H", was anzeigt, dass der zweite Signalanschluss 26b nicht für den oben beschriebenen analogen Vergleich verwendet wird. Ein Bus-Verbindungsanschluss 240Z zur Verbindung mit dem Mikroprozessor 111 durch einen Bus ist auf einem elektronischen Substrat 29xy vorgesehen, das die spezielle Einheit 240 bildet. Der Bus-Verbindungsanschluss 240Z ist mit einem Bus-Verbindungsanschluss 23 des integrierten Schaltungselements verbunden.
  • Wie es nachfolgend detailliert unter Bezugnahme auf 41 beschrieben wird, enthält die Logikschaltungseinheit 1100n einen Vorwärts/Rückwärts-Zähler 2100n, ein Einstellregister 3100n, ein Berechnungsregister 4100n, eine Vergleichsschaltung 5100n, einen Befehls-Latch-Speicher 6100n, einen Benachrichtigungsbitspeicher 7100n und einen Parameterspeicher 8100n. Auf dieselbe Weise enthält die Logikschaltungseinheit 1200n einen Vorwärts/Rückwärts-Zähler 2200n, ein Einstellregister 3200n, ein Berechnungsregister 4200n, eine Vergleichsschaltung 5200n, einen Befehls-Latch-Speicher 6200n, einen Benachrichtigungsbitspeicher 7200n und einen Parameterspeicher 8200n. Die durch ein Bezugszeichen mit 1 als dritte Ziffernummer (Nummer in der Form von 1xx) bezeichneten Komponenten sind für das erste Port 21 (siehe 39), während die durch ein Bezugszeichen mit 2 als dritte Ziffernummer (Nummer in der Form von 2xx) bezeichneten Komponenten für das zweite Port sind (siehe 40). Jedes Element in den Logikschaltungseinheiten 1100n und 1200n, das durch den Mikroprozessor 111 durch den Adressenbus ADR bestimmt ist, ist eindeutig mit dem Datenbus DATA verbunden, um Einstelldaten oder ein Befehlssignal von dem Mikroprozessor 111 zu empfangen oder um Berechnungsdaten oder ein Benachrichtigungssignal zu dem Mikroprozessor 111 zu senden. Schaltungsorganisationsinformation wird von dem Mikroprozessor 111 zu jedem der Parameterspeicher 8100n und 8200n zum Starten der Operation der programmierbaren Steuerung 100C gesendet. Als Ergebnis wird eine spezifische Schaltungskonfiguration von jeder der acht Logikschaltungseinheiten 1100n und der acht Logikschaltungseinheiten 1200n bestimmt.
  • Der Karteninformationsspeicherungsspeicher 9000 dient zum Senden der Logikinformation von wenigstens dem ersten Moden-Schaltanschluss 28a und dem zweiten Moden-Schaltanschluss 28b und dem ersten Identifikationsanschluss 24a und dem zweiten Identifikationsanschluss 24b zu dem Mikroprozessor 111 und speichert Information eines Verdrahtungsmusters, das auf dem elektronischen Substrat 29xy vorgesehen ist, das innerhalb oder außerhalb des integrierten Schaltungselements 20 vorgesehen ist. Jede der gemeinsamen Taktschaltung 9001 und der gemeinsamen Triggerschaltung 9002 ist eine Zeitgabesignal-Erzeugungsschaltung, die gemeinsam für alle Logikschaltungseinheiten 1100n und 1200n verwendet wird. Die gemeinsame Taktschaltung 9001 erzeugt ein Taktsignal mit einem Taktzyklus τ von beispielsweise 1 μsek. Die gemeinsame Triggerschaltung 9002 erzeugt ein Triggersignal mit einem Signalzyklus T0 von beispielsweise 10 msek und einer Signalbreite von 1 μsek, das durch Zählen der Taktsignale erhalten wird.
  • Selbst in der in 38 dargestellten speziellen Einheit 230 oder 250 hat das integrierte Schaltungselement 20 dieselbe Konfiguration. In der speziellen Einheit 230 werden jedoch ein Paar von den Eingangsanschlüssen 230X und ein Paar von den Eingangsschnittstellenschaltungen 239X verwendet. Die Eingangsschnittstellenschaltungen 239X für logische Signale sind mit den ersten und den zweiten Ports 21 und 22 verbunden. Die logischen Pegel des ersten Moden-Schaltanschlusses 28a und des zweiten Moden-Schaltanschlusses 28b sind beide "H". In der speziellen Einheit 250 werden ein Paar von den Ausgangsanschlüssen 250Y und ein Paar von den Ausgangsschnittstellenschaltung 259Y verwendet. Die Ausgangsschnittstellenschaltungen 250Y sind mit den ersten und zweiten Ports 21 und 22 verbunden. Die logischen Pegel des ersten und des zweiten Moden-Schaltanschlusses 28a und 28b sind "L".
  • Hierin nachfolgend wird auf 41 Bezug genommen werden, die eine detaillierte Konfiguration der in 39 gezeigten Logikschaltungen 1100n und der in 40 gezeigten Logikschaltungen 1200n darstellt. In 41 ist die Logikschaltungseinheit 1100n dem Kanal des ersten Ports 21 mit der Kanalnummer n zugeteilt, während die Logikschaltungseinheit 1200n dem Kanal des zweiten Ports 22 mit der Kanalnummer n zugeteilt ist. Die Logikschaltungen 1100n und 1200n sind auf dieselbe Weise konfiguriert und werden voneinander nur durch die dritte Ziffernnummer des Bezugszeichens wie 1xx oder 2xx unterschieden. Daher wird in der folgenden Beschreibung nur die Logikschaltungseinheit 1100n beschrieben werden. Der Vorwärts/Rückwärts-Zähler 2100n, der den Hauptteil der Logikschaltungseinheit 1100n bildet, erhöht oder erniedrigt den aktuellen Zählwert des Registers für einen aktuellen Wert 4101n, wenn der logische Pegel des Zähleingangsanschlusses IN sich von "L" zu "H" ändert, während der logische Pegel des Aufwärtszählbefehlsanschlusses UP oder Abwärtszählbefehlsanschlusses DN "H" ist. Eine inkrementelle oder dekrementelle Variation des aktuellen Zählerwerts wird durch einen in dem Variationsregister 4103n gespeicherten numerischen Wert bestimmt. Allgemein ist ein Wert des Variationsregisters 4103n 1. Der aktuelle Zählerwert des Registers für einen aktuellen Wert 4101 wird bei einem logischen Übergang des Zähleingangsanschlusses IN um Eins erhöht oder erniedrigt.
  • Auf eine Eingabe eines Rücksetzbefehls zu einem Rücksetzanschluss RST des Vorwärts/Rückwärts-Zählers 2100n hin wird der Wert des Registers für einen aktuellen Wert 4101n auf Null zurückgesetzt. Wenn irgendein numerischer Wert in einem Voreinstellregister in einem Standby-Pufferregister 4101n gespeichert ist, wird der Inhalt des Voreinstellregisters zu dem Register für einen aktuellen Wert 4101n transferiert. Ein (Reibe-)Halten/Halte-Register 4102n dient zum regelmäßigen Lesen und speichern des Inhalts des Registers für einen aktuellen Wert 4101n. Das Register für einen aktuellen Wert 4101n, das Halten/Halte-Register 4102n, das Variations-Einstellregister 4103n und das Standby-Pufferregister 4101n werden gemeinsam Berechnungsregister 4100n genannt. Insbesondere ist, wie es aus der folgenden Beschreibung offensichtlich wird, das Variations-Einstellregister 4103n nur für den Vorwärts/Rückwärts-Zähler mit einer gegebenen Kanalnummer vorgesehen. Jeder der Vorwärts/Rückwärts-Zähler mit den anderen Kanalnummern erhöht oder erniedrigt den Zählwert immer um Eins. Das Einstellregister 3100n enthält ein erstes Einstellregister 3101n, das einen oberen Grenzzählwert speichert, und ein zweites Einstellregister 3102n, das einen Zwischenwert speichert, der kleiner als der obere Grenzzählwert ist.
  • Eine erste Vergleichsschaltung 5101n ist eine Wert-Vergleichsschaltung. Ein logischer Pegel der ersten Vergleichsschaltung 5101n ändert sich zu "H", um eine Bestimmungsspeicherungsschaltung S1 einzustellen, um eine Aufwärtszählausgabe Q zu erzeugen, wenn ein im ersten Einstellregister 3101n gespeicherter Einstellwert und der aktuelle Zählerwert des Registers für einen aktuellen Wert 4101n identisch zueinander sind oder wenn der aktuelle Zählerwert einen Einstellwert übersteigt. Eine zweite Vergleichsschaltung 5102n ist eine Wert-Vergleichsschaltung zum Vergleichen eines in einem zweiten Einstellregister 3102n gespeicherten Einstellwerts und des aktuellen Zählerwerts des Registers für einen aktuellen Wert 4101n. Wenn der Einstellwert und der aktuelle Zählerwert identisch zueinander sind oder der aktuelle Zählerwert den Einstellwert übersteigt, und zwar in einem Aufwärtszählmode, stellt die zweite Vergleichsschaltung 5102n eine Bestimmungsspeicherungsschaltung S2 durch ein UND-Element 42 ein, um eine Aufwärtszählvergleichs-Übereinstimmungsausgabe P zu erzeugen. Wenn andererseits der aktuelle Zählerwert kleiner als der Einstellwert ist, und zwar in einem Abwärtszählmode, stellt die zweite Vergleichsschaltung 5102n eine Bestimmungsspeicherungsschaltung S3 durch ein Gatterelement 44 ein, um eine Abwärtszählvergleichs-Übereinstimmungsausgabe P zu erzeugen.
  • Eine Rücksprung-Vergleichsschaltung 5103n ist eine Wert-Vergleichsschaltung, die eine Rücksprungausgabe Q erzeugt, um die Bestimmungsspeicherungsschaltung S1 zurückzusetzen, wenn der aktuelle Zählerwert des Registers für einen aktuellen Wert 4101n sich erniedrigt, um identisch zu einem Wert eines Null-Registers 41 zu sein oder um ein negativer Wert zu sein. Ein Befehlssignal vom Mikroprozessor 111 kann die Bestimmungsspeicherungsschaltungen S2 und S3 oder den aktuellen Zählerwert des Registers für einen aktuellen Wert 4101n durch einen Befehls-Latch-Speicher 6100n zurücksetzen.
  • Ein Benachrichtigungsbitspeicher 7100n enthält die Aufwärtszählausgabe Q, die Rücksprungausgabe Q, die Aufwärtszählvergleichs-Übereinstimmungsausgabe P und die Abwärtszählvergleichs-Übereinstimmungsausgabe P. Die Bestimmungsausgaben, die oben beschrieben sind, sind mit dem Datenbus DATA durch einen Datenselektor 48 verbunden. Eine alternative Ausgabeschaltung 47 ist eine Logikschaltung zum abwechselnden Invertieren der Logik einer Ausgabe jedes Mal dann, wenn der logische Pegel der Vergleichsübereinstimmungsausgabe von der ersten Vergleichsschaltung 5101n sich von "L" zu "H" ändert.
  • Eine Ausgabe-Auswahlschaltung 49 wählt eine Ausgabeschaltung gemäß dem Inhalt eines Parameterspeichers 8100n aus und bestimmt diese. Die Ausgabe-Auswahlschaltung 49 bestimmt beispielsweise, ob Anschlüsse J und K als eine Vorwärtspulsausgabe FP und eine Rückwärtspulsausgabe RP oder als eine Vorwärts/Rückwärts-Pulsausgabe FRP und eine Richtungsbefehlsausgabe DIR zuzuteilen sind. Darüber hinaus führt die Ausgabe-Auswahlschaltung 49 die von der Bestimmungsspeicherungsschaltung S2 ausgegebene Aufwärtszählvergleichs-Übereinstimmungsausgabe P oder eine Betriebsbeendigungsausgabe als die Aufwärtszählausgabe Q zu einem Anschluss L zu.
  • Eine Eingabe-Schaltungseinheit 40 ist eine Eingabeverarbeitungsschaltung für den Vorwärts/Rückwärts-Zähler 2100n. Eine spezifische Schaltungskonfiguration der Eingabeschaltungseinheit 40 wird basierend auf dem Inhalt des Parameterspeichers 8100n bestimmt. Spezifische Schaltungskonfigurationen der Eingangsschaltungseinheit 40 und der Ausgabe-Auswahlschaltung 49 werden nachfolgend unter Bezugnahme auf 42, die 5 bis 14 und 34 beschrieben werden. Beispielsweise dann, wenn der Vorwärts/Rückwärts-Zähler 2100n eine Hochgeschwindigkeits-Zählerschaltung bildet, ist der Vorwärts/Rückwärts-Zähler irgendeiner eines 1-Phasen-1-Eingangs-Vorwärts/Rückwärts-Zählers, in welchem eine Zählrichtung durch ein Befehlssignal bestimmt wird, eines 1-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, zu welchem eine Aufwärts/Abwärts-Zähleingabe individuell zugeführt wird, und eines 2-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, in welchem eine Aufwärts/Abwärts- Zählrichtung basierend auf eine Phasendifferenz einer Zweiphaseneingabe bestimmt wird. Weiterhin hat die Hochgeschwindigkeits-Zählerschaltung irgendeinen eines Einzelflanken-Auswertungsmodes, eines Doppelflanken-Auswertungsmodes und eines Vierfachflanken-Auswertungsmodes in Abhängigkeit davon, ob ein Zählen gestartet wird oder nicht, wenn die Hochgeschwindigkeits-Zähleranweisung ausgeführt wird, oder dann, wenn eine Zählstartbefehlseingabe auf EIN geschaltet wird, ob eine Voreinstellbefehlseingabe zum Transferieren von Anfangswertdaten zu dem Register für einen aktuellen Wert hinzugefügt ist oder nicht, oder ob das Zählen bei einem Anstieg oder einem Abfall des Phasensignals in jeder Phase in dem Fall der 2-Phasen-2-Eingangs-Hochgeschwindigkeits-Zählerschaltung durchgeführt wird. Jede von verschiedenen Hochgeschwindigkeits-Zählerschaltungen wie denjenigen, die oben beschrieben sind, ist mit einer eindeutigen Identifikationsnummer versehen. Durch die Kombination einer speziellen Anweisung und der Identifikationsnummer bestimmte Schaltungsorganisationsinformation wird im Parameterspeicher 8100n gespeichert.
  • Alle Eingangssignale, die erforderlich sind, um zuzulassen, dass die Logikschaltungseinheit 1100n in jedem Kanal ihre vorbestimmten verschiedenen Funktionen demonstriert, sind mit Eingangsanschlüssen A bis H verbunden. Der Parameterspeicher 8100n wählt das an den Vorwärts/Rückwärts-Zähler 2100n anzuschließende Eingangssignal aus allen Eingangssignalen und der für die Verbindung verwendeten Schaltungskonfiguration aus und bestimmt dieses. Die Daten vom Parameterspeicher 8100n werden von dem Mikroprozessor 111 auf einen Start der Operation der programmierbaren Steuerung 1000 hin gesendet und werden während der Operation bzw. des Betriebs der programmierbaren Steuerung 100C nicht geändert. Ein Teil des Betriebs der Eingangsschaltungseinheit 40 kann auch durch den Inhalt des Befehls-Latch-Speichers 6100n geändert werden, der während des Betriebs von dem Mikroprozessor 111 gesendet wird. Beispielsweise wird die Auswahl der Aufwärts/Abwärts-Zählrichtung in dem 1-Phasen-1-Eingangs-Hochgeschwindigkeitszähler durch den Inhalt des Befehls-Latch-Speichers 6100n variabel eingestellt. Wie es oben beschrieben ist, führt die Eingangsschaltungseinheit 40 einen Befehl zum Unterscheiden einer Zählrichtung des Vorwärts/Rückwärts-Zählers, eine selektive Verbindung des Zähleingangssignals mit dem Zähleingangsanschluss IN, die selektive Verbindung eines Rücksetzsignals mit dem Rücksetzanschluss RST und die selektive Verbindung eines Stoppbefehlssignals für ein erzwungenes Stoppen der Zählsignaleingabe zu dem Zähleingangsanschluss IN durch.
  • Ein NAND-Ausgabeelement 46a ist eine Gatterschaltung, die auf ein UND-Element 45a wirkt, um eine Subtraktions-Zähloperation zu stoppen wenn der logische Pegel der Rücksprung-Vergleichsschaltung 5103n sich zu "H" ändert. Ob die Gatterschaltung freizugeben ist oder nicht, wird durch das UND-Ausgabeelement 46a basierend auf dem Inhalt der Eingangsschaltungseinheit 40 bestimmt. Das UND-Element 45a ist eine Gatterschaltung, die ein Abwärtszählrichtungsbefehlssignal, das durch die Eingangsschaltungseinheit 40 erhalten ist, zu einem Abwärtszählbefehlsanschluss UN des Vorwärts/Rückwärts-Zählers 2100n zuführt. Ein NAND-Ausgabeelement 46b ist eine Gatterschaltung, die auf ein UND-Element 45b wirkt, um eine additive Zähloperation zu stoppen, wenn der logische Pegel der ersten Vergleichsschaltung 5101n sich zu "H" ändert. Ob die Gatterschaltung freizugeben ist oder nicht, wird durch das UND-Ausgabeelement 46b basierend auf dem Inhalt der Eingangsschaltungseinheit 40 bestimmt. Das UND-Element 45b ist eine Gatterschaltung, die ein Aufwärtszählrichtungsbefehlssignal, das durch die Eingangsschaltungseinheit 40 erhalten ist, zu einem Aufwärtszählbefehlsanschluss UP des Vorwärts/Rückwärts-Zählers 2100n zuführt.
  • Hierin nachfolgend wird auf 42 Bezug genommen werden, die ein Blockdiagramm ist, das die Logikschaltungseinheit 1100n (1200n), die in 41 dargestellt ist, darstellt, die als Eingangsschaltung für allgemeine Zwecke (variable Filterschaltung) 1110n (1210n) und als Ausgangsschaltung für allgemeine Zwecke 1290n (1190n) gebildet ist. In der folgenden Beschreibung zeigt die zweite Ziffernnummer des Bezugszeichens der Logikschaltungseinheit 1100n (1200n) den Inhalt eines spezifischen Typs verschiedener Logikschaltungen an. Obwohl die Logikschaltungseinheit 1100n nachfolgend beschrieben werden wird, ist die Logikschaltungseinheit 1200n auf gleiche Weise konfiguriert, wenn die Logikschaltungseinheit 1200n als Eingangsport verwendet wird.
  • In 42 enthält die durch die variable Filterschaltung gebildete Eingangsschaltung für allgemeine Zwecke 1110n (n = 0 bis 7) den Vorwärts/Rückwärts-Zähler 2100n, der ein von der gemeinsamen Taktsignalschaltung 9001 erzeugtes Taktsignal als Zähleingangssignal verwendet. Einstelldaten 3110n entsprechend einer Filterkonstanten werden von dem Mikroprozessor 111 gesendet, um in einem ersten Einstellregister 31001n des Vorwärts/Rückwärts-Zählers 2100n gespeichert zu werden. Eines der EIN/AUS-Schaltsignale 103x der speziellen Einheit 240 wird zu dem Kanalanschluss 21n des ersten Ports 21 mit der Kanalnummer n durch die Eingangsschnittstellenschaltung 249X eingegeben. Wenn das EIN/AUS-Schaltsignal 103x auf EIN geschaltet wird, um den logischen Pegel des Kanalanschlusses 21n zu "H" zu ändern, wird der Aufwärtszählrichtungsbefehl zu dem Aufwärtszählbefehlsanschluss UP durch das UND-Element 49b zugeführt.
  • Als Ergebnis zählt der Vorwärts/Rückwärts-Zähler 2100n die von der gemeinsamen Taktsignalschaltung 9001 erzeugten Taktsignale aufwärts, um den aktuellen Wert des Registers für einen aktuellen Wert 4101n nach und nach zu erhöhen. Wenn der aktuelle Zählerwert die Filterkonstante erreicht, die im Voraus im ersten Einstellregister 3101n gespeichert ist, erzeugt der Vorwärts/Rückwärts-Zähler 2100n die Aufwärtszählausgabe Q, die zu dem Eingangsabbildungsspeicher in dem Vorrichtungsspeicher 114a durch das nachfolgend beschriebene Eingabeverarbeitungsmittel 911 durch den Benachrichtigungsbitspeicher 7101n transferiert wird.
  • Andererseits ändert sich auf eine Erzeugung der Aufwärtszählausgabe Q von dem Vorwärts/Rückwärts-Zähler 2100n hin der logische Pegel des Aufwärtszählbefehlsanschlusses UP durch das NAND-Element 46b und das UND-Element 45b zu "L", um die Aufwärtszähloperation für einen Wert, der gleich dem oberen Grenzeinstellwert oder größer als dieser ist, zu verhindern. Wenn das EIN/AUS-Schaltsignal 103x auf AUS geschaltet wird, um den logischen Pegel des Kanalanschlusses 21n zu "L" zu ändern, wird der Abwärtszählrichtungsbefehl zu dem Abwärtszählbefehlsanschluss DN durch das NICHT-Element 51 und das UND-Element 45a zugeführt.
  • Als Ergebnis zählt der Vorwärts/Rückwärts-Zähler 2100n die von der gemeinsamen Taktsignalschaltung 9001 erzeugten Taktsignale abwärts, um den aktuellen Wert des Registers für einen aktuellen Wert 4101n nach und nach zu erniedrigen. Wenn der aktuelle Zählerwert sich zu Null erniedrigt, erzeugt der Vorwärts/Rückwärts-Zähler 2100n die Rücksprungausgabe Q, um einen logischen Übergang der Aufwärtszählausgabe Q zu dem Eingangsabbildungsspeicher in dem Vorrichtungsspeicher 114a durch das nachfolgend beschriebene Eingabeverarbeitungsmittel 911 durch den Benachrichtigungsbitspeicher 7101n zu transferieren. Andererseits ändert sich auf eine Erzeugung der Rücksprungausgabe Q hin der logische Pegel des Abwärtszählbefehlsanschlusses DN durch das NAND-Ausgabeelement 46a und das UND-Element 45a zu "L", um eine Abwärtszähloperation unter Null zu verhindern.
  • Daher wird dann, wenn das EIN/AUS-Schaltsignal 103x von dem EIN-Zustand auf AUS geschaltet wird oder von dem AUS-Zustand auf EIN geschaltet wird, der Benachrichtigungsbitspeicher 7101n mit einer Ansprechverzögerungszeit entsprechend dem Produkt aus dem Taktzyklus τ von 1 μsek der gemeinsamen Taktsignalschaltung 9001 und der im ersten Einstellregister 3101n gespeicherten Filterkonstanten N geändert: N × τ = N μsek. Wenn ein Kontaktgrellen in dem EIN/AUS-Schaltsignal 103x erzeugt wird, um eine unregelmäßige intermittierende Operation zu verursachen, führt der Vorwärts/Rückwärts-Zähler 2100n eine Aufwärts/Abwärts-Zähloperation durch. Wenn der Zählerwert den oberen Grenzeinstellwert als Ergebnis der Aufwärtszähloperation erreicht, wird die EIN-Operation bestimmt. Andererseits wird dann, wenn der Zählerwert Null als Ergebnis der Abwärtszähloperation erreicht, die AUS-Operation bestimmt.
  • Andererseits ist dann, wenn das erste Port 21 als Ausgangsport verwendet wird, der logische Pegel des ersten Moden-Schaltanschlusses 28a "L". Der logische Zustand des Kanalanschlusses 21n wird zu dem Benachrichtigungsbitspeicher 7102n durch eine Schaltung für ein Einstellen eines minimalen Filters 52 entsprechend einem Gatterelement zu dem Benachrichtigungsbitspeicher 7102n gesendet. Dann wird der logische Zustand als Benachrichtigungssignal 7112 zu dem Mikroprozessor 111 gesendet. Der Vorwärts/Rückwärts-Zähler 2100n hat eine vollständig andere I/O-Schaltungskonfiguration, wenn das erste Port 21 als das Ausgangsport verwendet wird. Beispielsweise wird eine Hochgeschwindigkeits-Pulsausgabe zu dem Kanalanschluss 21n zugeführt. Das Benachrichtigungssignal 7112n dient zum Überwachen eines Betriebszustands der Hochgeschwindigkeits- Pulsausgabe. Jedoch deshalb, weil der Berechnungszyklus des Mikroprozessors 111 der Geschwindigkeit der Hochgeschwindigkeits-Pulsausgabe nicht folgen kann, kann jeder der erzeugten Pulse nicht individuell überwacht werden. Jedoch kann das Benachrichtigungssignal 7112n für eine Abtastprüfung des Zustands einer Erzeugung der Pulsausgabe verwendet werden.
  • Die Ausgangsschaltung für allgemeine Zwecke 1290n (n = 0 bis 7) führt das Ausgangssignal, das durch den Mikroprozessor 111 von dem Ausgangsabbildungsspeicher im Vorrichtungsspeicher 114a zu dem Befehls-Latch-Speicher 6200n durch das nachfolgend beschriebene Ausgabeverarbeitungsmittel 923 gesendet ist, zu der elektrischen Last 103y von dem Kanalanschluss 22n durch die Ausgangsschnittstellenschaltung 149Y und den Ausgangsanschluss 140Y zu. Die Ausgangsschaltung für allgemeine Zwecke 1290n wird freigegeben, wenn die spezielle Anweisung für den Kanalanschluss 22n, der für das Ausgangsport eingestellt ist, nicht im Einsatz ist. Beispielsweise kann dann, wenn der Kanalanschluss 22n als die nachfolgend beschriebene Hochgeschwindigkeits-Pulsausgabe besetzt ist, die Ausgangsschaltung für allgemeine Zwecke 1290n nicht als Ausgang für allgemeine Zwecke verwendet werden.
  • Als Nächstes wird auf 43 Bezug genommen werden, die in Ablauffolgediagramm ist, das eine beispielhafte Verwendung einer variablen Filteranweisung REF und einer Monitor- bzw. Überwachungsleseanweisung EXRD darstellt. 43(A) stellt einen Schaltungsblock zum Anlegen der variablen Filteranweisung REF an einen Eingang X010 der speziellen Einheit 230 dar, wenn ein spezielles Hilfsrelais M8000 geschlossen ist, um die Filterkonstante auf 5 msek einzustellen. Das spezielle Hilfsrelais M8000 wird automatisch aktiviert, wenn ein RUN-Schalter der programmierbaren Steuerung 100C in dem EIN-Zustand ist. Daher hat, wie es in 43(B) dargestellt ist, dann, wenn das EIN/AUS-Schaltsignal X010, das EIN/AUS-Schaltsignal X010, das mit der speziellen Einheit 230 verbunden ist, die EIN/AUS-Operation durchführt, ein in dem in 42 dargestellten Benachrichtigungsbitspeicher 7101n gespeichertes Eingangssignal (in diesem Fall gilt n = 0) eine Ansprechverzögerung von 5 msek, wie es in 43(C) dargestellt ist. Daher kann selbst dann, wenn das EIN/AUS-Schaltsignal X010 eine kurze EIN-Operation durchführt, das Benachrichtigungssignal X010 nicht erkannt werden.
  • Bei der Eingabeverarbeitung 911 basierend auf dem Benachrichtigungsbitspeicher 7101n wird der Transfer zu dem Eingangsabbildungsspeicher in dem Vorrichtungsspeicher 114a auf eine Ausführung der REF-Anweisung hin oder für einen Berechnungszyklus der programmierbaren Steuerung 100C durchgeführt. Als ein zweiter Operand der REF-Anweisung kann beispielsweise 1 bis 53 msek als eine Soll-Ansprechverzögerungszeit eingestellt werden. Der Zyklus τ des Taktsignals von der in 42 dargestellten gemeinsamen Taktschaltung 9001 ist beispielsweise 1 μsek. Der obere Grenzeinstellwert des Vorwärts/Rückwärts-Zählers 2100n zum Erhalten von 1 msek als Ansprechverzögerungszeit ist 1000. Daher transferiert der Mikroprozessor 111, um die Ansprechverzögerungszeit von 5 msek zu erhalten, einen Wert von 5000, der durch Multiplizieren der Ansprechverzögerungszeit mit 1000 erhalten ist, zu dem Pufferspeicher 114b. Der erhaltene Wert wird zu dem ersten Einstellregister 3101n als Einstelldaten 3110n transferiert.
  • 43(D) stellt einen Schaltungsblock zum Antreiben der Überwachungsleseanweisung EXRD durch das Hilfsrelais M0001 dar, das durch eine Sequenzschaltung (nicht gezeigt) angetrieben wird. Ein erster Operand der Überwachungsleseanweisung EXRD bestimmt Ausgänge Y010 bis Y017 für acht Bit beginnend mit dem Ausgang Y010 als Transferquellen, während ein zweiter Operand Hilfsrelais M0100 bis M0107 für acht Bits beginnend mit dem Hilfsrelais M0100 als Transferzielorte bestimmt. Kurz gesagt werden die EIN/AUS-Zustände der Ausgänge Y010 bis Y017 zu den Hilfsrelais M0100 bis M0107 transferiert. Die Überwachungsleseanweisung EXRD wird durch Verwenden des Benachrichtigungssignals 7112n, das in 42 dargestellt ist, mitgeteilt und dient zum Überwachen des Ausgangszustands jedes Kanals, der als das Ausgangsport verwendet wird. Obwohl einige der Ausgänge Y010 bis Y017 die Hochgeschwindigkeits-Pulsausgaben erzeugen, werden die EIN/AUS-Informationen, die in die Hilfsrelais M0100 bis M0107 gelesen sind, auf eine Ausführung der Überwachungsleseanweisung EXRD hin aktualisiert. Daher kann genaue Information in Bezug auf die Zeit erhalten werden.
  • Hierin nachfolgend wird eine Konfiguration der in 41 dargestellten Logikschaltungseinhe1100n oder 1200n, die it für verschiedene spezifische Hochgeschwindigkeits-I/O-Schaltungen verwendet wird, unter Bezugnahme auf die oben angegebenen 5 bis 14 beschrieben werden. Das erste und das zweite Ausführungsbeispiel und das dritte Ausführungsbeispiel unterscheiden sich grundsätzlich diesbezüglich voneinander, dass ein Paar von Logikschaltungseinheiten für jeden Kanal n bei dem dritten Ausführungsbeispiel vorgesehen ist, um eine doppelte Anzahl von I/Os zu handhaben.
  • 5: variable Filterschaltung
  • Die in 5 dargestellte variable Filterschaltung 1010n ist durch die in 42 dargestellten variablen Filterschaltungen 1110n und 1210n ersetzt. Der Inhalt des Benachrichtigungsbitspeichers 7000n wird zu dem Hilfsrelais M gesendet, das durch die variable Filteranweisung REF in der in 5 dargestellten variablen Filterschaltung 1010n bestimmt ist, während der Inhalt des Benachrichtigungsbitspeichers 7000n automatisch zu dem Eingangsabbildungsspeicher durch das Eingabeverarbeitungsmittel 911 gesendet wird, ohne auf einem sequentiellen Programm in den in 42 dargestellten variablen Filterschaltungen 1110n und 1210n zu basieren. Daher wird die in 5 dargestellte Eingangsschaltung für allgemeine Zwecke 1091 bei dem dritten Ausführungsbeispiel nicht verwendet.
  • 6: Pulsdichtemessschaltung
  • 6 stellt die Pulsdichtemessschaltung 1020n dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von Pulsdichtemessschaltungen 1120n und 1220n (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 7: Pulsbreitenmessschaltung
  • 7 stellt die Pulsbreitenmessschaltung 1022n dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von Pulsbreitenmessschaltungen 1122n und 1222n (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 8: Flankenerfassungsschaltung
  • 8 stellt die Flankenerfassungsschaltung 1031n dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von Flankenerfassungsschaltungen 1131n und 1231n (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 9: 1-Phasen-1-Eingangs-Zählerschaltung
  • 9 stellt die 1-Phasen-1-Eingangs-Zählerschaltung 1030n dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von 1-Phasen-1-Eingangs-Zählerschaltungen 1130n und 1230n (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 10: 1-Phasen-2-Eingangs-Zählerschaltung
  • 10 stellt die 1-Phasen-2-Eingangs-Zählerschaltung 1040m dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von 1-Phasen-2-Eingangs-Zählerschaltungen 1140m und 1240m (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 11: PWM-Ausgabeschaltung
  • 11 stellt die PWM-Ausgabeschaltung 1050n dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von PWM-Ausgabeschaltungen 1150n und 1250n (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden. In diesem Fall können jedoch die Ausgangsschaltungen für allgemeine Zwecke 1190n und 1290n, die in 42 dargestellt sind, anstelle der in 11 gezeigten Ausgangsschaltung für allgemeine Zwecke 1092 verwendet werden.
  • 12: erste Pulsausgabeschaltung
  • 12 stellt die erste Pulsausgabeschaltung 1060m dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von ersten Pulsausgabeschaltungen 1160m und 1260m (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 13: zweite Pulsausgabeschaltung
  • 13 stellt die zweiten Pulsausgabeschaltungen 1070·0 und 1070·4 dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n werden ein Paar von zweiten Pulsausgabeschaltungen 1170·0 und 1270·0 und ein weiteres Paar von zweiten Pulsausgabeschaltungen 1170·4 und 1270·4 (nicht gezeigt), die jeweils auf dieselbe Weise konfiguriert sind, erhalten.
  • 14: modifizierte Pulsausgabeschaltung
  • 14 stellt die modifizierten Pulsausgabeschaltungen 1080·0 und 1080·4 dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n werden ein Paar von modifizierten Pulsausgabeschaltungen 1180·0 und 1280·0 und ein weiteres Paar von modifizierten Pulsausgabeschaltungen 1180·4 und 1280·4 (nicht gezeigt), wobei jede auf dieselbe Weise konfiguriert ist, erhalten. Bei der in 13 dargestellten zweiten Pulsausgabeschaltung 1070·0 oder der in 14 dargestellten modifizierten Pulsausgabeschaltung 1080·0 werden vier Vorwärts/Rückwärts-Zähler 2000·0, 2000·1, 2000·2 und 2000·3 verwendet. Insbesondere wird der Vorwärts/Rückwärts-Zähler 2000·3 für andere Zwecke durch Ändern der Parameter verwendet. Wenn ein Paar der Logikschaltungseinheiten 1100n und 1200n enthalten ist, werden fünf Vorwärts/Rückwärts-Zähler 2100·0, 2100·1, 2200·0, 2200·1 und 2200·2 verwendet, um die zweite Pulsausgabeschaltung und die modifizierte Pulsausgabeschaltung ohne Ändern der Parameter zu erhalten.
  • 37: analoge Vergleichseinheit
  • In der in 37 gezeigten speziellen Einheit 180 wird das Ergebnis eines analogen Vergleichs durch den Datenselektor 184 zu dem Eingangsabbildungsspeicher gesendet. Wenn ein Paar der Logikschaltungseinheiten 1100n und 1200n enthalten ist, wird jedoch das Ergebnis eines analogen Vergleichs durch die variable Filterschaltung 1110n durch Verwenden des ersten Ports 21 als ein Eingangsport und des zweiten Ports als ein Ausgangsport zu dem Eingangsabbildungsspeicher gesendet.
  • (2) Detaillierte Beschreibung der Funktionen und des Betriebs
  • In der programmierbaren Steuerung, die konfiguriert ist, wie es oben beschrieben ist, werden ihre Funktionen und ihr Betrieb basierend auf 44 detailliert beschrieben werden, die ein Ablaufdiagramm zum Darstellen eines Basisbetriebs ist. In 44 wird die programmierbare Steuerung 1000 in einen Schritt 900 EIN-geschaltet. Als Ergebnis wird eine Energieaktivierung in der programmierbaren Steuerung 100C erfasst, um jede der Einheiten zu initialisieren. Darauffolgend beginnt der Mikroprozessor 111 in einen Schritt 901 ein Arbeiten. In einem darauffolgenden Schritt 902 wird bestimmt, ob ein RUN-Schalter für einen Betriebs/Stopp-Befehl (nicht gezeigt) auf EIN geschaltet ist oder nicht. Wenn der RUN-Schalter auf EIN geschaltet ist, um in einem Betriebszustand zu sein, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 905. Wenn der RUN-Schalter AUS ist, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 903.
  • Im Schritt 903 wird bestimmt, ob das externe Werkzeug 108 angeschlossen ist und ein Programmmode eingestellt ist oder nicht. Wenn der Programmmode eingestellt ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 904. Wenn das externe Werkzeug nicht angeschlossen ist oder ein Überwachungsmode eingestellt ist, selbst wenn das externe Werkzeug angeschlossen ist, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 910 entsprechend einem Operationsbeendigungsschritt (der hierin nachfolgend einfach Schritt 910 genannt wird). Im Schritt 904 geht der Prozess, nachdem das sequentielle Programm durch das externe Werkzeug 108 zu dem Programmspeicher 113C gesendet ist, weiter zu dem Schritt 910. Im Schritt 910 springt der Prozess, nachdem die anderen Steueroperationen durchgeführt sind, zurück zu dem Schritt 901, wo die Operation gestartet wird. Dann wird die oben beschriebene Operation wiederholt.
  • Daher arbeitet der Mikroprozessor 111 dann, wenn es in beiden Schritten 902 und 903 als NEIN bestimmt wird, zyklisch durch die Schritte 901, 902, 903, 910 und wieder 901, um auf das EIN-Schalten des RUN-Schalters im Schritt 902 oder das Einstellen des Programmmodes im Schritt 903 zu warten.
  • Dann werden, wenn der RUN-Schalter auf EIN geschaltet ist, zuerst Programme im Programmspeicher 113C in einem Schritt 905 geprüft. Eine der Programmprüfungen ist die Bestimmung von Typen der I/O-Schnittstellenschaltungen, die an das erste und das zweite Port angeschlossen sind, und zwar basierend auf der in dem Karteninformationsspeicherungsspeicher 9000 gespeicherten Karteninformation, um zu bestimmen, ob die Typen der I/O-Schnittstellenschaltungen und der Inhalt der Anweisung entsprechend der im Programmspeicher 113C gespeicherten speziellen Einheit einander entsprechen. Darüber hinaus werden I/Os der in 16 und 17 dargestellten speziellen Einheit geprüft, um nicht auf eine überlagernde Weise verwendet zu werden. Beispielsweise dann, wenn die Hochgeschwindigkeitszähler mit den Erweiterungsnummern 01 und 10 verwendet werden, wird der Eingang X031 auf eine überlagernde Weise verwendet. Daher wird ein Fehler erfasst.
  • In einem darauffolgenden Schritt 906 wird dann, wenn eine Anormalität bei der im Schritt 905 durchgeführten Programmprüfung erfasst wird, es als JA bestimmt und geht der Prozess weiter zu einem Schritt 907. Wenn keine Anormalität erfasst wird, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 908. Im Schritt 907 wird der Anormalitätsbenachrichtigungsbefehl für die Anzeigeeinheit 117 erzeugt. Gleichzeitig wird die Operation gestoppt, um zu dem Schritt 910 (Operationsbeendigungsschritt) weiterzugehen.
  • Im Schritt 908 wird Schaltungsorganisationsinformation zum Parameterspeicher 8100n und 8200n der speziellen Einheit basierend auf dem Inhalt des Programmspeichers 113C gesendet. Gleichzeitig wird die Organisation einer Zuteilung des Pufferspeichers 114b, der Kommunikationsdaten für die spezielle Einheit speichert, durchgeführt. In der speziellen Einheit, die die Schaltungsorganisationsinformation empfangen hat, ist die Schaltung von jeder der Logikschaltungseinheiten 1100n und 1200n basierend auf den empfangenen Parametern spezifisch organisiert.
  • Im darauffolgenden Schritt 930 wird geprüft, ob die variable Filteranweisung REF verwendet wird oder nicht. Wenn weder die variable Filteranweisung REF noch die spezielle Anweisung für die Eingabe verwendet wird, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 931. Wenn andererseits entweder die variable Filteranweisung REF oder die spezielle Anweisung verwendet wird, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 909.
  • Im Schritt 931 wird die Initialisierungseinstellung der variablen Filterschaltung durchgeführt, um eine Standard-Filterkonstante von beispielsweise 10 msek als die Eingangsfilterkonstante einzustellen. Dann geht der Prozess weiter zu einem Schritt 909. Im Schritt 909 wird wieder geprüft, ob der RUN-Schalter auf EIN ist oder nicht. Wenn der RUN-Schalter auf AUS ist, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 910. Wenn der RUN-Schalter auf EIN ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 911.
  • Im Schritt 911 wird auf die Datenselektoren (beispielsweise den Datenselektor 224, der für die in 38 gezeigten Eingänge X000 bis X007 verwendet wird), die für die allgemeinen Eingabeeinheiten vorgesehen sind, sequentiell zugegriffen, um den EIN/AUS-Zustand des EIN/AUS-Schaltsignals, das mit jedem der Eingangsanschlüsse verbunden ist, zu dem in dem Vorrichtungsspeicher 114a zugeteilten Eingangsabbildungsspeicher zu transferieren und zu schreiben. Gleichzeitig wird selbst in dem Fall der speziellen Einheit für den Eingang, der als Eingang für allgemeine Zwecke verwendet wird, für welchen die spezielle Anweisung nicht verwendet wird, der EIN/AUS-Zustand der Eingabe bzw. des Eingangs aus dem Benachrichtigungsbitspeicher 7101n oder 7201n gelesen, wie es in 42 dargestellt ist, um zu dem in dem Vorrichtungsspeicher 114a zugeteilten Eingangsabbildungsspeicher transferiert und geschrieben zu werden.
  • In einem darauffolgenden Schritt 912 wird das im Programmspeicher 113C gespeicherte sequentielle Programm in Reaktion auf jede Anweisung sequentiell gelesen und ausgeführt. In einem darauffolgenden Schritt 913 wird bestimmt, ob die im Schritt 912 gelesene Anweisung zum Ausführen einer speziellen Anweisung für die spezielle Einheit dient oder nicht. Wenn die Anweisung nicht zum Ausführen der speziellen Anweisung dient, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 922. Im Schritt 922 wird bestimmt, ob die Anweisung eine ENDE-Anweisung fü die Beendigung des sequentiellen Programms ist oder nicht. Wenn die Anweisung nicht die ENDE-Anweisung ist, wird es als NEIN bestimmt und springt der Prozess zurück zum Schritt 912. Daher wird dann, wenn die spezielle Anweisung nicht verwendet wird, ein zyklischer Betrieb durch die Schritte 912, 913, 922 und wieder 912 durchgeführt, um allgemeine sequentielle Anweisungen sequentiell auszuführen.
  • Wenn es jedoch im Schritt 913 als JA bestimmt wird, um die spezielle Anweisung zu lesen, geht der Prozess weiter zu einem Schritt 919a. Im Schritt 919a wird bestimmt, ob die gelesene spezielle Anweisung eine spezielle Anweisung zum Durchführen einer Betriebsbeendigungsbenachrichtigung ist oder nicht. Wenn die spezielle Anweisung zum Durchführen der Betriebsbeendigungsbenachrichtigung ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 919b. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 921. Im Schritt 919b wird bestimmt, ob die Betriebsbeendigungsbenachrichtigung für die ausgeführte spezielle Anweisung erhalten worden ist oder nicht. Wenn die Beendigungsbenachrichtigung erhalten worden ist, wird es als JA bestimmt und geht der Prozess weiter zu einem Schritt 921. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 922. Wenn nicht, wird es als NEIN bestimmt und geht der Prozess weiter zu einem Schritt 922. Im Schritt 921 geht der Prozess, nachdem weitere Einstelldaten für die gelesene spezielle Anweisung gesendet sind, weiter zu einem Schritt 922.
  • Im Schritt 921 geht der Prozess, nachdem weitere Einstelldaten für die gelesene spezielle Anweisung gesendet sind, weiter zu dem Schritt 922. Im Schritt 921 werden, nachdem die durch die spezielle Anweisung bestimmten Einstelldaten in Daten umgewandelt sind, die auf einfache Weise in der speziellen Einheit gehandhabt werden, die umgewandelten Daten zu dem Pufferspeicher 114b transferiert. Dann werden die Daten von dem Pufferspeicher 114b zu der entsprechenden speziellen Einheit gesendet.
  • Wenn beispielsweise die spezielle Anweisung die erste Pulsausgabeanweisung PLS für die erste Pulsausgabeschaltung 1260m ist, die oben unter Bezugnahme auf 12 beschrieben ist, und die spezielle Anweisung die Pulsfrequenz und die Anzahl erzeugter Pulse bestimmt, wird die Pulsfrequenz in einen Pulszyklus entsprechend einem inversen der Pulsfrequenz in einem Schritt 923 umgewandelt. Dann werden die erhaltene Pulsfrequenz und die Anzahl erzeugter Pulse zu der speziellen Einheit gesendet. Da die spezielle Einheit bestimmt wird, um eine Beendigungsbenachrichtigung als das Benachrichtigungssignal 7260m bei der Beendigung einer Erzeugung der bestimmten Anzahl von Pulsen zu machen, geht der Prozess nicht weiter zu einem Schritt 921, und zwar basierend auf der Bestimmung im Schritt 919b, bis zu der Beendigung der Erzeugung von Pulsen Als Ergebnis werden neue Einstelldaten nicht gesendet. Auf die oben beschriebene Weise wird das im Programmspeicher 113C gespeicherte sequentielle Programm sequentiell ausgeführt. Dann, wenn die ENDE-Anweisung für die Beendigung des Programms gelesen wird, wird es als JA im Schritt 922 bestimmt und geht der Prozess weiter zum Schritt 923.
  • Im Schritt 923 wird auf die Latch-Speicher, die für die allgemeinen Ausgabeeinheiten vorgesehen sind (beispielsweise der Latch-Speicher 225, der für die Ausgänge Y000 bis Y007 in 38 verwendet wird) sequentiell zugegriffen, um den Inhalt des in dem Vorrichtungsspeicher 114a zugeteilten Ausgangsabbildungsspeicher zu jedem Latch-Speicher zu transferieren und zu schreiben. Für den als einen Ausgang für allgemeine Zwecke verwendeten Ausgang, für welchen die spezielle Anweisung nicht verwendet wird, und zwar selbst in dem Fall der speziellen Einheit, wird der EIN/AUS-Zustand des Ausgangs zu dem Befehls-Latch-Speicher 6200n transferiert und geschrieben, wie es in 42 dargestellt ist.
  • Bei der Beendigung des Ausgabeprozesses im Schritt 923 geht der Prozess weiter zum Schritt 909. Nach der Verifizierung, dass der RUN-Schalter wieder EIN-geschaltet ist, springt der Prozess zurück zum Schritt 911, um die Eingabeverarbeitung, die sequentielle Verarbeitung und die Ausgabeverarbeitung auf die oben beschriebene Weise zyklisch auszuführen. Einige programmierbare Steuerungen führen einen Stapelprozess der Eingabeverarbeitung und der Ausgabeverarbeitung vor oder nach der sequentiellen Verarbeitung durch und die anderen programmierbaren Steuerungen lesen die Eingangsinformation direkt oder führen direkt die Ausgabeverarbeitung zu einer geeigneten Zeitgabe während der sequentiellen Verarbeitung durch. Obwohl das Stapelverarbeitungsverfahren hierin der Annehmlichkeit halber beschrieben ist, kann auch das direkte Verarbeitungsverfahren verwendet werden.
  • Der oben beschriebene Betriebsablauf enthält den Schritt 906 entsprechend dem Einstellanormalitäts-Detektionsmittel, den Schritt 908 entsprechend dem Organisationsverarbeitungsmittel, den Schritt 911 entsprechend dem Eingabeverarbeitungsmittel, den Schrittblock 920 bestehend aus den Schritten 919a und 919b entsprechend einem Transferverhinderungsmittel, den Schritt 921 entsprechend einem Daten-Umwandlungs/Transfer-Mittel, den Schritt 923 entsprechend dem Ausgabeverarbeitungsmittel und den Schritt 931 entsprechend dem Anfangseinstellungsmittel.
  • Im Vergleich zwischen 44 und den 18 und 19 wird die Filterkonstante für einen Eingang für allgemeine Zwecke automatisch auf einen Referenzwert von beispielsweise 10 msek in den Schritten 930 und 931 in 44 eingestellt. Wenn eine Filterkonstante, die eine andere als diejenige ist, die oben beschrieben ist, erforderlich ist, kann eine erwünschte Filterkonstante durch die in 43(A) dargestellte variable Filteranweisung REF eingestellt werden. In 19 ist das Parameteränderungsmittel 918 vorgesehen, um die Rolle des Vorwärts/Rückwärts-Zählers 2000·3 in den 13 und 14 zu ändern. In 44 wird jedoch die Zuteilung der Vorwärts/Rückwärts-Zähler in den 13 und 14 geändert, um fünf Vorwärts/Rückwärts-Zähler zu verwenden. Als Ergebnis ist es nicht erforderlich, dass die Parameter geändert werden.
  • (3) Zusammenfassung und Charakteristiken des dritten Ausführungsbeispiels
  • Die programmierbare Steuerung 1000 gemäß dem dritten Ausführungsbeispiel der vorliegenden Erfindung enthält die CPU-Einheit 110C, die den Mikroprozessor 111 enthält, den Systemspeicher 112C, der in Zusammenarbeit mit dem Mikroprozessor 111 arbeitet, den Programmspeicher 113C, zu welchem das durch den Anwender erzeugte sequentielle Programm von dem externen Werkzeug 108 transferiert und geschrieben wird, und den Vorrichtungsspeicher 114a mit den I/O-Abbildungsspeichern X und Y zum Speichern der I/O-Information und der Steuerinformation, das Hilfsrelais M und das Datenregister D und eine oder eine Vielzahl von den I/O-Einheiten 220 bis 250 und 260A, die durch den Bus mit der CPU-Einheit 110C verbunden sind. Ein Teil oder alle von den I/O-Einheiten dienen als die speziellen Einheiten 230 bis 250, die jeweils die integrierten Schaltungselemente 20 enthalten, die die speziellen I/O-Verarbeitungsfunktionen gemeinsam nutzen, um die Steuerfunktion des Mikroprozessors 111 zu komplementieren. Die speziellen Einheiten 230 bis 250 enthalten das elektronische Substrat, auf welchem die externen Verbindungsanschlüsse 230X, 240X, 240Y und 250Y, die mit wenigstens einem oder beiden der Vielzahl von externen Sensoren und der Vielzahl von externen Lasten verbunden sind, die Mehrkanal-Eingangsschnittstellenschaltung 239X oder 249X oder die Mehrkanal-Aungangsschnittstellenschaltung 249Y oder 259Y, die mit dem externen Verbindungsanschluss verbunden ist, das integrierte Schaltungselement 20, das für eine I/O-Steuerung verwendet wird, deren Steuerungsspezifikationen teilweise variabel eingestellt werden können, und die Bus-Verbindungsanschlüsse 230Z bis 250Z zur Verbindung mit dem Mikroprozessor 111 angebracht sind. Das integrierte Schaltungselement 20 enthält das erste Port 21, zu welchem das logische Signal, das die EIN/AUS-Operation durchführt, von der Eingangsschnittstellenschaltung eingegeben wird, das zweite Port 22 zum Ausgeben des logischen Signals zum Durchführen der EIN/AUS-Operation zu der Ausgangsschnittstellenschaltung, den Parameterspeichern 8100n oder 8200n entsprechend jeder Kanalnummer n und die Logikschaltungseinheit 1100n oder 1200n, deren Betriebsspezifikationen für die I/O-Verarbeitung durch die von dem Mikroprozessor 111 zu dem Parameterspeicher gesendeten Schaltungsorganisationsdaten bestimmt werden.
  • Die Logikschaltungseinheit 1100n oder 1200n enthält weiter den Benachrichtigungsbitspeicher 7100n oder 7200n zum Zählen des durch die Eingangsschnittstellenschaltung 239X oder 249X mit hoher Geschwindigkeit erhaltenen Logikeingangssignals, um die Aufwärtszählausgabe oder die Zähldaten als das Benachrichtigungssignal oder die Berechnungsdaten dem Mikroprozessor 111 zu senden, das Berechnungsregister 4100n oder 4200n und den Vorwärts/Rückwärts-Zähler 2100n oder 2200n, der die Einstelldaten oder das Befehlssignal, die vom Mikroprozessor 111 empfangen sind, in dem Einstellregister 3100n oder 3200n und dem Befehls-Latch-Speicher 6100n oder 6200n speichert, um die Pulsausgabe hoher Geschwindigkeit basierend auf den Inhalten des Einstellregisters und des Befehls-Latch-Speichers zu der Ausgangsschnittstellenschaltung 249Y oder 259Y zuzuführen. Der Vorwärts/Rückwärts-Zähler 2100n oder 2200n enthält das Register für einen aktuellen Wert 4101n oder 4102n, das einen Teil des Berechnungsregisters 4100n oder 4200n bildet. Ob die Hochgeschwindigkeits-Zählerschaltung für das von der Eingangsschnittstellenschaltung 239X oder 249X zu bilden ist, um die Eingabeverarbeitung hoher Geschwindigkeit zum Senden der Aufwärtszählausgabe zu der CPU-Einheit 110C durch Zuführen, oder die Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit 110C empfangenen Einstelldaten zu bilden ist, um die Ausgabeverarbeitung hoher Geschwindigkeit zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung 249Y oder 259Y durchzuführen, wird für jeden Kanal gemäß dem Inhalt der in den im Programmspeicher 113C gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt. Wenn die zum Parameterspeicher 8100n oder 8200n gesendeten Schaltungsorganisationsdaten veranlassen, dass eine Vielzahl einer Eingabeverarbeitung hoher Geschwindigkeit und eine Vielzahl einer Ausgabeverarbeitung hoher Geschwindigkeit durchgeführt werden und das Eingangssignal vom externen Sensor ein analoges Signal ist, führt die Eingangsschnittstellenschaltung einen Puls mit einer Frequenz oder ein Vergleichsbestimmungs-Logiksignal proportional zu demjenigen des Eingangssignal zu dem integrierten Schaltungselement 20 zu. Wenn die externe Last eine analoge Last ist, erzeugt das integrierte Schaltungselement 20 eine Pulsausgabe mit einem EIN/AUS-Verhältnis als befohlenes Ausgangssignal. Die Ausgangsschnittstellenschaltung glättet das empfangene Pulsausgangssignal und führt dann das geglättete Signal zur externen Last zu.
  • Die CPU-Einheit 110C enthält den Pufferspeicher 114b für eine Datenkommunikation mit den speziellen Einheiten 230 bis 250. Der Systemspeicher 112C enthält die Steuerprogramme, die als das Organisationsverarbeitungsmittel 908 und das Daten-Umwandlungs/Transfer-Mittel 921 funktionieren. Direkt nachdem Start des Betriebs der programmierbaren Steuerung 100C sucht das Organisationsverarbeitungsmittel 908 durch den Inhalt des Programmspeichers 913C, um die spezifische Anweisung entsprechend den speziellen Einheiten 230 bis 250 zu extrahieren, und sendet den Typ der Logikschaltungseinheit 1100n oder 1200n, der in der speziellen Einheit verwendet wird, gemäß dem Inhalt der speziellen Anweisung und den Schaltungsorganisationsdaten entsprechend dem Betriebsmode zu dem Parameterspeicher 8100n oder 8200n. Gleichzeitig für das Organisationsverarbeitungsmittel 908 die Adressenorganisation des Pufferspeichers 114b für die Kommunikation mit jeder Logikschaltungseinheit durch, deren Schaltungsorganisation durch den Parameter spezifiziert ist. Das Daten-Umwandlungs/Transfer-Mittel 921 wandelt die Daten in die Einstelldaten in einer Einheit um, die für den Betrieb der Logikschaltungseinheit 1100n oder 1200n geeignet ist, und das Befehlssignal basierend auf dem Inhalt des durch die spezielle Anweisung bestimmten Vorrichtungsspeichers 114a, um die Einstelldaten und das Befehlssignal zu dem Einstellregister 3100n oder 3200n und den Befehls-Latch-Speicher 6100n oder 6200n durch den Pufferspeicher 114b zu senden. Gleichzeitig transferiert das Daten-Umwandlungs/Transfer-Mittel 921 die Berechnungsdaten oder das Benachrichtigungssignal, erhalten von der Logikschaltungseinheit 1100n oder 1200n, zu dem Vorrichtungsspeicher 114a, der durch die spezielle Anweisung bestimmt ist, durch den Pufferspeicher 114b. Die spezielle Anweisung ist zusammengesetzt aus einem Anweisungswort, das den Typ einer Anweisung anzeigt, einem ersten Operanden und wenigstens einem eines zweiten Operanden und eines dritten Operanden, wobei die ersten bis dritten Operanden in keiner bestimmten Reihenfolge sind. Der erste Operand bestimmt eine Identifikationsnummer zum Spezifizieren einer Soll-I/O-Nummer der speziellen Einheit. Der zweite Operand bestimmt eine Nummer des Datenregisters, das die von dem Berechnungsregister erhaltenen Berechnungsdaten speichert, oder eine Nummer des Datenregisters, das die zu dem Einstellregister gesendeten Einstelldaten speichert, oder bestimmt direkt eine Einstellkonstante. Der dritte Operand bestimmt eine Nummer des Hilfsrelais, das das von dem Benachrichtigungsbitspeicher erhaltene Benachrichtigungssignal speichert, oder eine Nummer des Hilfsrelais, das das zu dem Befehls-Latch-Speicher zu sendende Befehlssignal speichert.
  • Darüber hinaus enthält jeder von einigen oder allen von den Vorwärts/Rückwärts-Zählern 2100n und 2200n, die in den Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, das Register für einen aktuellen Wert 4101n oder 4201n, das erste Einstellregister 3101n oder 3201n, das zweite Einstellregister 3102n oder 3202n, die erste Vergleichsschaltung 5101n oder 5201n und die zweite Vergleichsschaltung 5102n oder 5202n. Das Register für einen aktuellen Wert 4101n oder 4201n erhöht oder erniedrigt die Anzahl von Operationen der Zähleingabe zu den Vorwärts/Rückwärts-Zählern 2100n oder 2200n gemäß der Zählrichtung und speichert einen kumulativen Gesamtwert von einem Anfangswert bei dem Start des Betriebs des Vorwärts/Rückwärts-Zählers. Die erste Vergleichsschaltung 5101n oder 5201n ist eine Wert-Vergleichsschaltung, die eine erste Vergleichsübereinstimmungsausgabe erzeugt, wenn der im ersten Einstellregister 3101n oder 3201n gespeicherte Wert und der in dem Register für einen aktuellen Wert 4101n oder 4201n gespeicherte Wert identisch zueinander sind. Die zweite Vergleichsschaltung 5102n oder 5202n ist eine Wert-Vergleichsschaltung, die eine zweite Vergleichsübereinstimmungsausgabe erzeugt, wenn der im zweiten Einstellregister 3102n oder 3202n gespeicherte Wert und der in dem Register für einen aktuellen Wert 4101n oder 4201n gespeicherte Wert identisch zueinander sind. Ein Wert wird für das Register für einen aktuellen Wert oder jedes des ersten und zweiten Einstellregisters von dem Mikroprozessor 111 durch den Pufferspeicher 114b eingestellt, wenn die spezielle Anweisung ausgeführt wird.
  • Das in jeder der speziellen Einheiten 230 bis 250 enthaltene integrierte Schaltungselement 20 enthält das erste Mehrkanalport 21 mit dem ersten Moden-Umschaltanschluss 28a und das zweite Mehrkanalport 22 mit dem zweiten Moden-Umschaltanschluss 28b und ein Paar der Logikschaltungseinheiten 1100n und 1200n entsprechend der Kanalnummer n. Das erste Port 21 wird als I/O-Port verwendet, das mit dem Eingangsanschluss 230X oder 240X oder dem Ausgangsanschluss 250Y zur Verbindung mit einer externen Vorrichtung durch die Eingangsschnittstellenschaltung 239X oder 249X oder der Ausgangsschnittstellenschaltung 259Y verbunden ist, die außerhalb des integrierten Schaltungselements 20 vorgesehen ist. Ob das erste Port 21 als ein Eingangsport oder ein Ausgangsport verwendet wird, wird durch die Logikpegeleingabe zu dem ersten Moden-Umschaltanschluss 28a ausgewählt. Das zweite Port 22 wird als I/O-Port verwendet, das mit dem Eingangsanschluss 230X oder dem Ausgangsanschluss 240Y oder 250Y zur Verbindung mit einer externen Vorrichtung durch die Eingangsschnittstellenschaltung 239X oder die Ausgangsschnittstellenschaltung 249Y oder 259Y verbunden ist, die außerhalb des integrierten Schaltungselements 20 vorgesehen ist. Ob das zweite Port 22 als ein Eingangsport oder ein Ausgangsport verwendet wird, wird durch die Logikpegeleingabe zu dem zweiten Moden-Umschaltanschluss 28b ausgewählt und bestimmt. Ob die Logikschaltungseinheit 1100n oder 1200n eine Hochgeschwindigkeits-Zählerschaltung für ein von der Eingangsschnittstellenschaltung zugeführtes Eingangssignal bildet, um die Eingabeverarbeitung hoher Geschwindigkeit oder die analoge Eingabeverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit 110C durchzuführen, oder eine Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit 110C empfangenen Einstelldaten bildet, um die Ausgabeverarbeitung hoher Geschwindigkeit oder die analoge Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung durchzuführen, wird gemäß dem Inhalt der in dem im Programmspeicher 113C gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt.
  • Das Paar von Logikschaltungseinheiten 1100n und 1200n enthält die folgenden Komponenten entsprechend seiner eigenen Kanalnummer n. Die Logikschaltungseinheit 1100n enthält den Vorwärts/Rückwärts-Zähler 2100n, das Einstellregister 3100n, das Berechnungsregister 4100n, den Befehls-Latch-Speicher 6100n, die Vergleichsschaltung 5100n, den Benachrichtigungsbitspeicher 7100n und den Parameterspeicher 8100n. Auf dieselbe Weise enthält die Logikschaltungseinheit 1200n den Vorwärts/Rückwärts-Zähler 2200n, das Einstellregister 3200n, das Berechnungsregister 4200n, den Befehls-Latch-Speicher 6200n, die Vergleichsschaltung 5200n, den Benachrichtigungsbitspeicher 7200n und den Parameterspeicher 8200n. Spezifisch enthält das in der speziellen Einheit enthaltene integrierte Schaltungselement das Paar von Logikschaltungseinheiten und das erste und das zweite Port, die für eine I/O verwendet werden. Ob ein jeweiliges des ersten und des zweiten Ports als Eingangsport oder Ausgangsport verwendet wird, wird gemäß dem Typ der Schnittstellenschaltung frei ausgewählt und bestimmt. Daher kann nur durch Ändern des Typs der Schnittstellenschaltung sogar ein einzelnes integriertes Schaltungselement für die spezielle Einheit für eine I/O verwendet werden, oder exklusiv für eine Eingabe oder eine Ausgabe oder für die I/O-Verarbeitung hoher Geschwindigkeit oder die analoge I/O-Verarbeitung, um seine Mehrzweckfunktion zu demonstrieren. Als Ergebnis reduziert der Effekt einer Massenproduktion, die durch die Erweiterung des Bereichs von Anwendungen produziert wird, die Kosten einer Herstellung des integrierten Schaltungselements, um ausgeklügelte I/O-Steuerfunktionen mit einer billigen programmierbaren Steuerung zu erhalten.
  • Die Logikschaltungseinheiten 1100n und 1200n enthalten die Eingangsschaltungen für allgemeine Zwecke 1110n und 1210n oder die Ausgangsschaltungen für allgemeine Zwecke 1290n und 1190n entsprechend ihrer eigenen Kanalnummer n, und zwar jeweils. Die Eingangsschaltung für allgemeine Zwecke 1110n oder 1210n ist eine Eingangssignal-Relaisschaltung zum Senden des logischen Eingangssignals, das mit dem ersten Port 21 oder dem zweiten Port 22 verbunden ist, zu dem in dem Vorrichtungsspeicher 114a zugeteilten Eingangsabbildungsspeicherbereich durch den Benachrichtigungsbitspeicher 7101n (7201n). Der Transfer von dem Benachrichtigungsbitspeicher zu dem Eingangsabbildungsspeicher wird durch das Eingabeverarbeitungsmittel 911 ausgeführt, das ein im Systemspeicher 112C gespeichertes Steuerprogramm ist. Die Ausgangsschaltung für allgemeine Zwecke 1290n oder 1190n ist eine Ausgangssignal-Relaisschaltung zum Ausgeben des durch den Befehls-Latch-Speicher 6100n oder 6200n, der für die Logikschaltungseinheit 1100n oder 1200n vorgesehen ist, empfangenen Befehlssignals von dem in dem Vorrichtungsspeicher 114a zugeteilten Ausgangsabbildungsspeicherbereich zu der Ausgangsschaltung 249Y oder 259Y, die mit dem ersten Port 21 oder dem zweiten Port 22 verbunden ist. Der Transfer von dem Ausgangsabbildungsspeicher zu dem Befehls-Latch-Speicher wird durch das Ausgabeverarbeitungsmittel 923 ausgeführt, das ein im Systemspeicher 112C gespeichertes Steuerprogramm ist. Jede der Eingangsschaltungen für allgemeine Zwecke 1110n und 1210n und der Ausgangsschaltungen für allgemeine Zwecke 1190n und 1290n wird freigegeben, wenn die Logikschaltungseinheit nicht als Hochgeschwindigkeits-I/O-Schaltung oder als analoge I/O-Schaltung verwendet wird. Spezifisch enthält das in der speziellen Einheit enthaltene integrierte Schaltungselement die I/O-Schaltung für allgemeine Zwecke zusätzlich zu der Hochgeschwindigkeits-I/O-Schaltung. Daher können dann, wenn die Anzahl von I/Os, die die Hochgeschwindigkeits-I/O-Verarbeitung erfordern, klein ist, die übrigen I/O-Anschlüsse effizient als I/Os für allgemeine Zwecke verwendet werden, um die spezielle Einheit ökonomisch und effektiv zu verwenden.
  • Die Eingangsschaltung für allgemeine Zwecke bildet die variable Filterschaltung 1110n der 1210n entsprechend jeder Kanalnummer n. Der Systemspeicher 112C enthält ein Steuerprogramm, das als Anfangseinstellmittel 931 dient. Jede der variablen Filterschaltung 1110n (1210n) enthält den Vorwärts/Rückwärts-Zähler 2100n (2200n) zum Vorwärts/Rückwärts-Zählen eines vorbestimmten Taktsignals in Abhängigkeit von dem logischen Pegel des Eingangssignals und den Benachrichtigungsbitspeicher 7101n (7201n), der als Eingangsbestimmungsschaltung dient. Das erste Einstellregister 3101n (3201n) speichert die als die Einstelldaten 3110n (3210n) empfangene Filterkonstante. Wenn der Wert des Registers für einen aktuellen Wert 4101n (4201n) sich erhöht, um den Einstellwert in dem ersten Einstellregister zu erreichen, wird die Aufwärtszählausgabe Q erzeugt, um die Aufwärtszähloperation zu stoppen. Wenn anderer der aktuelle Wert des Registers für einen aktuellen Wert 4101n sich auf Null erniedrigt, wird die Rücksprungausgabe Q anstelle der Aufwärtszählausgabe Q erzeugt, um die Abwärtszähloperation zu stoppen. Die Eingangsbestimmungsschaltung 7101n (7201n) wird durch die Aufwärtszählausgabe Q gesetzt und wird durch die Rücksprungausgabe Q rückgesetzt. Die Ausgabe von der Eingangsbestimmungsschaltung wird zu dem Eingangsabbildungsspeicherbereich in dem Vorrichtungsspeicher 114a durch das Eingabeverarbeitungsmittel 911 gesendet.
  • Das Anfangseinstellmittel 931 funktioniert bei dem Start der Operation der programmierbaren Steuerung 100C, um durch den Programmspeicher 113C nach der variablen Filteranweisung zu suchen. Für das Eingangssignal, für welches die variable Filteranweisung REF nicht verwendet wird, wird die vorbestimmte Filterkonstante, die als Referenz dient, zum ersten Einstellregister 3101n (3201n) gesendet. Die variable Filteranweisung REF ist eine spezielle Anweisung mit der Soll-Eingangsrelaisnummer und der Nummer des Datenregisters, das die erforderliche Eingangsfilterkonstante als die Einstelldaten oder die direkt eingestellte Konstante als Operanden speichert. Auf eine Ausführung der speziellen Anweisung hin werden die Einstelldaten zum ersten Einstellregister 3101n (3201n) entsprechend der Eingangsrelaisnummer gesendet. Spezifisch wird dann, wenn der Eingangsanschluss der speziellen Einheit als Eingang für allgemeine Zwecke verwendet wird, die Filterkonstante automatisch auf die Referenzkonstante eingestellt. Gleichzeitig kann das Eingangsfilter durch die variable Filteranweisung variabel eingestellt werden, wie es nötig ist. Die variable Filterschaltung enthält den zu jedem Eingangskanal zugeteilten Vorwärts/Rückwärts-Zähler. Daher kann durch Einstellen der Filterkonstanten des Eingangsfilters derart, dass sie größer als diejenige eines Filters ist, das für eine allgemeine Eingangsschaltung vorgesehen ist, ein Eingangssignal, das ein großes überlagertes Rauschen enthält, ausreichend geglättet werden, um in die CPU-Einheit geholt zu werden. Durch Einstellen der Filterkonstanten des Eingangsfilters derart, dass sie kleiner als diejenige eines Filters ist, das für eine allgemeine Eingangsschaltung vorgesehen ist, kann ein Eingangssignals, das ein kleines überlagertes Rauschen enthält, schnell in die CPU-Einheit geholt werden. Auf diese Weise kann die Eingabeverarbeitung entsprechend dem aktuellen Typ der Eingangssignalschaltung durchgeführt werden. Darüber hinaus kann für den Eingangskanal, der die Eingabeverarbeitung hoher Geschwindigkeit nicht durchführt, der jedem Kanal zugeteilte Vorwärts/Rückwärts-Zähler effektiv verwendet werden. Als Ergebnis kann ein weiter Bereich variabler Filterschaltungen auf einfache Weise erhalten werden.
  • Das integrierte Schaltungselement 20 enthält das erste Gatterelement 25n und das zweite Gatterelement 27n entsprechend jeder Kanalnummer n, die minimale Filtereinstellschaltung 52 und die im Programmspeicher 113 gespeicherte Überwachungsleseanweisung EXRD. Das erste Gatterelement 25n und das zweite Gatterelement 27n sind eine Vielzahl von Gatterelementen, die zwischen dem Ausgangsanschluss der Logikschaltungseinheit 1100n oder 1200n und dem ersten Port 21 und dem zweiten Port 22 angeschlossen sind, um jedes Ausgangssignal gemäß den logischen Pegeln des ersten Moden-Umschaltanschlusses 28a und des zweiten Moden-Umschaltanschlusses 28b zu blockieren. Wenn die Eingangsschnittstellenschaltung mit dem ersten Port 21 und dem zweiten Port 22 verbunden ist, blockieren das erste Gatterelement 25n und das zweite Gatterelement 27n die Ausgangssignale. Wenn die Ausgangsschnittstellenschaltung mit dem ersten Port 21 und dem zweiten Port 22 verbunden ist, geben das erste Gatterelement 25n und das zweite Gatterelement 27n das Ausgangssignal frei. Die minimale Filtereinstellschaltung 52 funktioniert dann, wenn die Ausgangsschnittstellenschaltung mit dem ersten Port 21 und dem zweiten Port 22 verbunden ist, um das Ausgangssignal von dem ersten Gatterelement 25n und dem zweiten Gatterelement 27n freizugeben. Die minimale Filtereinstellung 52 speichert das Ausgangssignal in dem Benachrichtigungsbitspeicher 7102n (7202n) ohne durch die Filterschaltung zu gehen. Die Überwachungsleseanweisung EXRD hat Operanden zum Bestimmen der Ausgangsrelaisnummer und der Transferzielort-Vorrichtungsnummer des Vorrichtungsspeichers 114, um den durch die minimale Filtereinstellschaltung 52 eingegebenen Inhalt des Benachrichtigungsbitspeichers 7102n (7202n) als das Benachrichtigungssignal 7112n (7212n) auszulesen. Spezifisch kann dann, wenn das erste und das zweite Port als Ausgangsports verwendet werden, die variable Filterschaltung gesperrt werden, um einen Zustand des Ausgangssignals durch die spezielle Anweisung zu überwachen und auszulesen. Daher kann dann, wenn das erste und das zweite Port als Eingangsports verwendet werden, der Zustand des Ausgangssignals anstelle des zu dem Eingangsabbildungsspeicher in dem Vorrichtungsspeicher durch die variable Filterschaltung gesendeten Eingangssignals in den bestimmten Vorrichtungsspeicher durch die spezielle Anweisung gelesen werden, um zu verhindern, dass fehlerhafte Information zu dem Eingangsabbildungsspeicher der entsprechenden Nummer transferiert wird.
  • Das integrierte Schaltungselement 20 oder die speziellen Einheiten 230 bis 250, die die integrierten Schaltungselemente enthalten, enthalten den Karteninformationsspeicherungsspeicher 9000. Der Systemspeicher 112C enthält ein Steuerprogramm, das als Einstellanormalitäts-Detektionsmittel 905 dient. Der Karteninformationsspeicherungsspeicher 9000 speichert wenigstes eines von der logischen Information des ersten Moden-Umschaltanschlusses 28a und des zweiten Moden-Umschaltanschlusses 28b, die anzeigt, ob das erste Port 21 und das zweite Port 22 als Eingangsports oder Ausgangsports eingestellt sind, und von der logischen Information des ersten Identifikationsanschlusses 24a und des zweiten Identifikationsanschlusses 24b, welche identifizieren, ob die I/O-Schnittstellenschaltungen Logiksignalschaltungen oder analoge Signalschaltungen sind. Der Karteninformationsspeicherungsspeicher 9000 ist mit der CPU-Einheit 110C durch den Datenbus verbunden, um zuzulassen, dass der Mikroprozessor 111 den Inhalt des Karteninformationsspeicherungsspeichers 9000 ausliest. Das Einstellanormalitäts-Detektionsmittel 905 detektiert, dass die Typen der I/O-Schnittstellenschaltungen, die mit dem ersten Port 21 und dem zweiten Port 22 verbunden sind, und der Inhalt der in dem Programmspeicher 113C gespeicherten Anweisung einander nicht entsprechen, um den Betrieb zu stoppen und die Anormalität mitzuteilen. Spezifisch werden zum Starten der Operation die Karteninformation für den Typ der I/O-Schnittstellenschaltung der speziellen Einheit und der Inhalt der Anweisung im Programmspeicher verifiziert und verglichen. Wenn eine ungeeignete Anweisung verwendet wird, stoppt das Einstellanormalitäts-Detektionsmittel 905 den Betrieb und teilt die Anormalität mit. Daher ist es möglich, das Vorhandensein eines fehlerhaften Steuerprogramms zu finden, um eine die Debug- bzw. Nachfolgeverarbeitung durchzuführen. Zusätzlich kann eine gefährliche Operation vermieden werden. Demgemäß wird die Sicherheit verbessert.
  • Jeder von einigen oder allen der Vorwärts/Rückwärts-Zähler 2100n und 2200n, die in den Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, enthält die Standby-Pufferregister 4104n und 4204n. Die Standby-Pufferregister 4104n und 4204n speichern temporär die von dem Pufferspeicher 114b gesendeten numerischen Daten. Der Inhalt der Standby-Pufferregister wird zu den ersten Einstellregistern 3101n und 3201n oder den zweiten Einstellregistern 3102n und 3202n basierend auf den von den Logikschaltungseinheiten 1100n und 1200n erzeugten Zeitgabesignalen gesendet. Ob die vom Pufferspeicher 114b gesendeten numerischen Daten zu den ersten und den zweiten Einstellregistern durch die Standby-Pufferregister mit einer Zeitdifferenz gesendet werden oder direkt zu den ersten und den zweiten Einstellregistern ohne Durchlaufen der Standby-Pufferregister gesendet werden wird basierend auf dem Inhalt der speziellen Anweisung bestimmt.
  • Der Systemspeicher 112C enthält das Steuerprogramm, das als das Transferverhinderungsmittel 920 dient, das während des Betriebs der programmierbaren Steuerung 100C ausgeführt wird. Die spezielle Anweisung, die für die speziellen Einheiten 230 bis 250 verwendet wird, ist eine Anweisung zum Erzeugen des Betriebsbeendigungssignals. Ab dem Start der Ausführung der speziellen Anweisung bis zu der Erfassung des Betriebsbeendigungssignals verhindert das Transferverhinderungsmittel 920 das Senden der Einstelldaten wenigstens zu den ersten Einstellregistern 3101n und 3201n und den zweiten Einstellregistern 3102n und 3202n. Das Betriebsbeendigungssignal wird durch Lesen des Inhalts der Benachrichtigungsbitspeicher 7100n und 7200n erhalten, wenn die Anzahl der zu dem ersten Port 21 eingegebenen Pulssignale oder der von dem zweiten Port 22 erzeugten Pulssignale eine voreingestellte Sollanzahl von Pulsen erreicht oder das Erzeugen/Zählen der Pulse durch das Befehlssignal beendet wird.
  • Jeder von einigen oder allen der Vorwärts/Rückwärts-Zähler 2100n und 2200n, die in den Logikschaltungen 1100n und 1200n vorgesehen sind, enthält die Variations-Einstellregister 4103n und 4203n. Die Variations-Einstellregister 4103n und 4203n werden aktiviert, wenn eine Aufwärts/Abwärts-Zähleingabe zu den Vorwärts/Rückwärts-Zählern 2100n und 2200n zugeführt wird. Die in den Variations-Einstellregistern 4103n und 4203n gespeicherten Werte werden zu den aktuellen Werten der Register für einen aktuellen Wert 4101n und 4201n addiert oder von diesen subtrahiert.
  • Viertes Ausführungsbeispiel
  • (1) Detaillierte Beschreibung einer Konfiguration und von Funktionen
  • Hierin nachfolgend wird 45 beschrieben werden, die eine Einheitenkonfiguration einer programmierbaren Steuerung gemäß einem vierten Ausführungsbeispiel der vorliegenden Erfindung darstellt, und zwar hauptsächlich für die Beschreibung von Unterschieden gegenüber 38. In den 45 und 38 sind dieselben oder äquivalente Komponenten mit denselben Bezugszeichen bezeichnet. Die Basisoperation bzw. der Basisbetrieb des Mikroprozessors 111 ist so, wie es oben unter Bezugnahme auf das Ablaufdiagramm der 44 beschrieben ist.
  • In 45 enthält eine programmierbare Steuerung 100D eine CPU-Einheit 110D, I/O-Einheiten 220 bis 250 und 260B und einen Anschlussblock 290. Elektrische Energie wird zu der CPU-Einheit 110D von einer externen Energieversorgung 109 zugeführt, die beispielsweise eine kommerzielle Energieversorgung für 100 V bis 240 V AC ist. Die CPU-Einheit 110D ist auch mit einem externen Werkzeug 108 durch ein entfernbares Anschlussstück (nicht gezeigt) verbunden, um zu einem Schreiben eines I/O-Steuerprogramms und einem Überwachen eines Betriebszustands mit dem externen Werkzeug 108 fähig zu sein. Die CPU-Einheit 110D enthält den Mikroprozessor 111, einen Systemspeicher 112D, einen Programmspeicher 113D, den Vorrichtungsspeicher 114a, den oben beschriebenen Pufferspeicher 114b, die Batterie 115, die Bus-Schnittstellenschaltung 116, die Warnungs-Anzeigeeinheit 117, die serielle Schnittstelle 118 und die Steuerungsenergieversorgung 119. Der Systemspeicher 112D ist beispielsweise ein Masken-ROM-Speicher. Der Programmspeicher 113D ist beispielsweise ein nichtflüchtiger Flash-Speicher und speichert durch einen Anwender erzeugte I/O-Steuerprogramme. Der Vorrichtungsspeicher 114a ist beispielsweise ein RAM-Speicher und enthält I/O-Abbildungsspeicher, ein Hilfsrelais und ein nachfolgend beschriebenes Datenregister. Die Batterie 115 sichert einen Teil des Vorrichtungsspeichers 114a. Die Bus-Schnittstellenschaltung 116 dient für eine Datenkommunikation mit jeder der I/O-Einheiten. Die serielle Schnittstelle 118 verbindet das externe Werkzeug 108 und den Mikroprozessor 111 miteinander.
  • Unter den oben beschriebenen Komponenten sind der Mikroprozessor 111, der Systemspeicher 112D, der Programmspeicher 113D, der Vorrichtungsspeicher 114a, der Pufferspeicher 114b, die Bus-Schnittstelle 116 und die serielle Schnittstelle 118 miteinander durch einen Bus verbunden. Die Steuerungsenergieversorgung 119 kann auch außerhalb der CPU-Einheit 110D vorgesehen sein. Die Energieversorgungseinheit, die CPU-Einheit und eine vorbestimmte Anzahl von I/O-Einheiten bilden eine Basiseinheit.
  • Der Systemspeicher 112D enthält verschiedene Steuerprogramme, die oben unter Bezugnahme auf die 44 beschrieben sind. Der Systemspeicher 112D wandelt die I/O-Steuerprogramme in einer sequentiellen Sprache, die in dem Programmspeicher 113D gespeichert ist, in eine Maschinensprache um, die kompatibel mit dem Mikroprozessor 111 ist, um den Mikroprozessor 111 zu betreiben. Die Programme werden durch einen Hersteller in der Versandstufe des hergestellten Produkts gespeichert. Ein sequentielles Programm für eine I/O-Steuerung, das durch den Anwender unter Verwendung des externen Werkzeugs 108 erzeugt ist, das beispielsweise ein Personalcomputer ist, wird durch die serielle Schnittstelle 118 zu dem Programmspeicher 113D geschrieben. Beispiele für das sequentielle Programm sind als die in den 20 bis 25, 27 und 29, 36 und 43 dargestellten Ablauffolgendiagramme dargestellt, auf die oben Bezug genommen ist. Die Erzeugung des Ablauffolgendiagramms auf dem Bildschirm des Personalcomputers erzeugt automatisch das sequentielle Programm.
  • Die oben beschriebenen I/O-Einheiten 220 und 250 sind mit einer Endfläche der CPU-Einheit 110D verbunden. Die darauffolgende I/O-Einheit 260B konfiguriert eine spezielle Einheit, die das integrierte Schaltungselement, das erste Port 21 und das zweite Port 22 enthält. Die spezielle Einheit wird für sowohl eine Eingabe als auch eine Ausgabe verwendet. Beispielsweise werden analoge Signalspannungen, die durch acht analoge Sensoren 105a erzeugt sind, durch die Spannung/Frequenz-Wandler 263 und die Eingangsisolierschaltung 261 zu der speziellen Einheit eingegeben, während acht analoge Lasten 105b durch die spezielle Einheit durch die Ausgangsisolierschaltung 266 und die Glättungsschaltung 268 angetrieben werden.
  • Hierin nachfolgend wird die in 45 dargestellte spezielle Einheit 260B unter Bezugnahme auf die 46 und 47 hauptsächlich für die Beschreibung von Unterschieden gegenüber den 39 und 40 beschrieben werden. 46 stellt eine Konfiguration der speziellen Einheit 260B auf der Seite des analogen Sensors dar, während 47 die Konfiguration der speziellen Einheit 260B auf der Seite der analogen Last darstellt. Dieselben oder äquivalente Komponenten sind mit denselben Bezugszeichen bezeichnet. In den 46 und 47 enthält die spezielle Einheit 260B Eingangsanschlüsse 260X, die mit acht analogen Sensoren 105a verbunden sind, und Ausganganschlüsse 260Y, die mit den acht analogen Lasten 105b verbunden sind. Eine Eingangsschnittstellenschaltung 269X für eine analoge Schaltung ist zwischen den Eingangsanschlüssen 260X und dem ersten Port 21 vorgesehen, das für das integrierte Schaltungselement 20 vorgesehen ist. Die Eingangsschnittstellenschaltung 269X enthält Spannung/Frequenz-Wandler 263n zum Erzeugen eines Pulses mit einer Frequenz proportional zu einer Eingangsspannung und Eingangsisolierschaltungen 261n. Die Kombination aus dem Spannung/Frequenz-Wandler 263n und der Eingangsisolierschaltung 261n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Ausgangsschnittstellenschaltung 269Y für analoge Lasten ist zwischen den Ausgangsanschlüssen 260Y und dem zweiten Port 22 vorgesehen, das für das integrierte Schaltungselement 22 vorgesehen ist. Die Ausgangsschnittstellenschaltung 269Y enthält eine Ausgangsisolierschaltungen 266n und eine Glättungsschaltung 268n. Die Kombination aus der Ausgangsisolierschaltung 266n und der Glättungsschaltung 268n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen.
  • Das erste Port 21 enthält die Kanalanschlüsse 21n (die nicht mit Bezugszeichen dargestellt sind), die jeweils der Kanalnummer n = 0 bis 7 entsprechen. Auf dieselbe Weise enthält das zweite Port 22 die Kanalanschlüsse 22n (die nicht mit Bezugszeichen dargestellt sind). Die Logikschaltungseinheit 1100n ist für jeden der Kanalanschlüsse 21n vorgesehen, während die Logikschaltungseinheit 1200n für jeden der Kanalanschlüsse 22n vorgesehen ist. Die Logikschaltungseinheiten 1100n und 1200n haben dieselbe Konfiguration. Einer einer Vielzahl von Eingangsabschlüssen der Logikschaltungseinheit 1100n ist direkt mit dem Kanalanschluss 21n verbunden, während einer einer Vielzahl von Ausganganschlüssen indirekt mit dem Kanalanschluss 21n durch das erste Gatterelement 25n verbunden ist. Ein Gatteranschluss von jedem der Gatterelemente 25n ist mit der Konstantspannungs-Energieversorgungsleitung Vcc durch den ersten Moden-Umschaltanschluss 28a verbunden, was bedeutet, dass das erste Port 21 nicht mit der Ausgangsschnittstellenschaltung 269Y verbunden ist, sondern mit der Eingangsschnittstellenschaltung 269X. Darüber hinaus ist der logische Pegel des ersten Moden-Umschaltanschlusses 28a "H". Als Ergebnis ist das erste Gatterelement 25n in einem offenen Zustand. Der erste Identifikationsanschluss 24a ist mit der Erdungsschaltung GND verbunden, der zum Identifizieren dient, das die Eingangsschnittstellenschaltung 269X nicht für das logische Signal verwendet wird, sondern für das analoge Signal. Weiterhin ist der logische Pegel des ersten Signalanschlusses 26a "H", was anzeigt, dass der erste Signalanschluss 26a nicht für den oben beschriebenen analogen Vergleich verwendet wird.
  • Einer einer Vielzahl von Eingangsanschlüssen der Logikschaltungseinheit 1200n ist direkt mit dem Kanalanschluss 22n verbunden, während einer einer Vielzahl von Ausgangsanschlüssen indirekt mit dem Kanalanschluss 22n durch das zweite Gatterelement 27n verbunden ist. Ein Gatteranschluss von jedem der Gatterelemente 27n ist mit der Erdungsschaltung GND durch den zweiten Moden-Umschaltanschluss 28b verbunden, was bedeutet, dass das zweite Port 22 nicht mit der Eingangsschnittstellenschaltung 269X verbunden ist, sondern mit der Ausgangsschnittstellenschaltung 269Y. Darüber hinaus ist der logische Pegel des zweiten Moden-Umschaltanschlusses 28b "L". Als Ergebnis ist das zweite Gatterelement 27n in einem geschlossenen Zustand. Der zweite Identifikationsanschluss 26b ist mit der Erdungsschaltung GND verbunden, der zum Identifizieren dient, das die Ausgangsschnittstellenschaltung 269Y nicht für die logischen Lasten verwendet wird, sondern für die analogen Lasten. Weiterhin ist der logische Pegel des zweiten Signalanschlusses 26b "H", was anzeigt, dass der zweite Signalanschluss 26b nicht für den oben beschriebenen analogen Vergleich verwendet wird. Das in der speziellen Einheit 260B enthaltene elektronische Substrat 29ab ist mit dem Bus-Verbindungsanschluss 260Z für eine Busverbindung mit dem Mikroprozessor 111 versehen. Der Bus-Verbindungsanschluss 260Z ist mit dem Bus-Verbindungsanschluss 23 des integrierten Schaltungselements 20 verbunden.
  • Hierin nachfolgend wird eine Konfiguration der in 41 dargestellten Logikschaltungseinheit 1100n oder 1200n, die für verschiedene spezifische analoge I/O-Schaltungen verwendet wird, unter Bezugnahme auf 34 beschrieben werden, die oben angegeben ist. Das erste und das zweite Ausführungsbeispiel und das dritte und das vierte Ausführungsbeispiel unterscheiden grundsätzlich voneinander diesbezüglich, dass ein Paar von Logikschaltungseinheiten für jeden Kanal n bei dem dritten und dem vierten Ausführungsbeispiel vorgesehen ist, um eine doppelte Anzahl von I/Os zu handhaben.
  • 34: Pulsdichtemessschaltung
  • 34 stellt die Pulsdichtemessschaltung 1021n für eine analoge Eingabe dar. Gemäß den in 41 dargestellten Logikschaltungseinheiten 1100n und 1200n kann ein Paar von Pulsdichtemessschaltungen 1121n und 1221n (nicht gezeigt), die auf dieselbe Weise konfiguriert sind, erhalten werden.
  • 35: PWM-Ausgabeschaltung
  • 35 stellt die PWM-Ausgabeschaltung 1051n für eine analoge Ausgabe dar. Gemäß der in 41 dargestellten Logikschaltungseinheit 1100n oder 1200n wird ein Paar von PWM-Ausgabeschaltungen 1151n und 1251n (nicht gezeigt), mit derselben Konfiguration erhalten. Daher enthält beispielsweise die in 30 dargestellte I/O-Einheit 170 acht analoge Eingangsanschlüsse 170X und acht analoge Ausgangsanschlüsse 170Y. Demgemäß können deshalb, weil die I/O-Einheit 170 nur acht Logikschaltungseinheiten 1000n insgesamt enthält, acht I/Os insgesamt gehandhabt werden. Andererseits enthält beispielsweise die in 45 dargestellte I/O-Einheit 260B acht analoge Eingangsanschlüsse 260X und acht analoge Ausgangsanschlüsse 260Y. Da die I/O-Einheit 260B acht Logikschaltungseinheiten 1100n und acht Logikschaltungseinheiten 1200n enthält, können acht Eingaben und acht Ausgaben, insgesamt sechzehn analoge I/Os, gehandhabt werden.
  • Die spezielle Einheit 260B kann acht analoge Ausgaben durchführen. Bei der Anwendung, die nur eine analoge Ausgabe erfordert, können die übrigen sieben analogen Ausgaben für eine Last der EIN/AUS-Operation verwendet werden. In diesem Fall werden Daten für die AUS-Zeitbreite in den in 35 dargestellten Einstelldaten 3151n oder 3251n auf Null gesetzt oder maximiert, um die Ausgaben in den vollständigen EIN- oder AUS-Zustand zu bringen. Wenn EIN/AUS-Information zu dem Ausgangsabbildungsspeicher in dem Vorrichtungsspeicher 114a geschrieben wird, kann die EIN/AUS-Information zu den Befehls-Latch-Speichern 6100n und 6200n durch die in 42 dargestellten Ausgangsschaltung für allgemeine Zwecke 1190n und 1290n gesendet werden, um die EIN/AUS-Signal von den Befehls-Latch-Speichern 6100n und 6200n zu den Kanalanschlüssen 21n und 22n sogar ohne ein Senden der numerischen Daten auszugeben. Für den analogen Ausgangskanal, an welchen die PWM-Anweisung nicht angelegt ist, wird der Inhalt des Ausgangsabbildungsspeichers in dem Vorrichtungsspeicher 114a automatisch zu den Befehls-Latch-Speichern 6100n und 6200n durch das Ausgabeverarbeitungsmittel 923 gesendet.
  • Die spezielle Einheit 260B kann acht analoge Eingaben durchführen. Bei der Anwendung, die nur eine analoge Eingabe erfordert, können die übrigen sieben analogen Eingaben als Ein/AUS-Schaltsignale verwendet werden. Dies ist so, wie es oben unter Bezugnahme auf die 34 und 36(A4) beschrieben ist. Obwohl der Systemspeicher bei dritten Ausführungsbeispiel mit 112C bezeichnet ist, und derjenige beim vierten Ausführungsbeispiel mit 112D in der obigen Beschreibung bezeichnet ist, wird derselbe Systemspeicher als die Systemspeicher 112C und 112D verwendet.
  • (2) Zusammenfassung und Charakteristiken des vierten Ausführungsbeispiels
  • Wie es aus der obigen Beschreibung offensichtlich ist, enthält die programmierbare Steuerung 100D gemäß dem vierten Ausführungsbeispiel der vorliegenden Erfindung die CPU-Einheit 100D, die den Mikroprozessor 111, den Systemspeicher 112D, der in Zusammenarbeit mit dem Mikroprozessor 111 arbeitet, den Programmspeicher 113D, zu welchem das durch den Anwender erzeugte sequentielle Programm transferiert und geschrieben wird, und zwar von dem externen Werkzeug 108, und den Vorrichtungsspeicher 114a, der die I/O-Abbildungsspeicher X und Y zum Speichern der I/O-Information und der Steuerinformation hat, das Hilfsrelais M und das Datenregister D und eine von oder eine Vielzahl von den I/O-Einheiten 220 und 250 bis 260B, die mit der CPU-Einheit durch den Bus verbunden sind. Einige oder alle der I/O-Einheiten dienen als die speziellen Einheiten 230 bis 250 und 260B, die jeweils die integrierten Schaltungselemente 20 zum gemeinsamen Nutzen der speziellen I/O-Verarbeitungsfunktion zum Komplementieren der Steuerfunktion des Mikroprozessors 111 enthalten. Die speziellen Einheiten 230 bis 250 und 260B enthalten das elektronische Substrat, auf welchem die externen Verbindungsanschlüsse 230X, 240X, 260X und 240Y, 250Y und 260Y, die mit wenigstens einem von oder beiden von der Vielzahl von externen Sensoren und externen Lasten verbunden sind, die Mehrkanal-Eingangsschnittstellenschaltung 239X, 249X oder 269X oder die Mehrkanal-Ausgangsschnittstellenschaltung 249Y, 259Y oder 269Y, die mit dem externen Verbindungsanschluss verbunden ist, das integrierte Schaltungselement 20, das für eine I/O-Steuerung verwendet wird, deren Steuerungsspezifikationen teilweise variabel eingestellt werden können, und der Bus-Verbindungsanschluss 230 bis 250Z oder 260Z zur Verbindung mit dem Mikroprozessor 111 angebracht sind. Das integrierte Schaltungselement 20 enthält das erste Port 21, zu welchem das logische Signal für eine EIN/AUS-Operation von der Eingangsschnittstellenschaltung 239X, 249X oder 269X eingegeben wird, das zweite Port 22 zum Ausgeben des logischen Signals für eine EIN/AUS-Operation zu der Aungangsschnittstellenschaltung 249Y, 259Y oder 269Y, die Parameterspeicher 8100n und 8200n entsprechend jeder Kanalnummer n und die Logikschaltungseinheiten 1100n und 1200n, deren Betriebsspezifikationen für die I/O-Verarbeitung durch die von dem Mikroprozessor 111 zu den Parameterspeichern gesendeten Schaltungsorganisationsdaten bestimmt werden.
  • Die Logikschaltungseinheiten 1100n und 120n enthalten weiterhin die Benachrichtigungsbitspeicher 7100n und 7200n, die Berechnungsregister 4100n und 4200n, die Einstellregister 3100n und 3200n, die Befehls-Latch-Speicher 6100n und 6200n und die Vorwärts/Rückwärts-Zähler 2100n und 2200n. Die Vorwärts/Rückwärts-Zähler 2100n und 2200n enthalten die Register für einen aktuellen Wert 4101n und 4102n, die einen Teil der Berechnungsregister 4100n und 4200n bilden. Die zu dem Parameterspeichern 8100n und 8200n gesendeten Schaltungsorganisationsdaten lassen zu, dass eine Vielzahl einer Eingabeverarbeitung hoher Geschwindigkeit und eine Vielzahl einer Ausgabenverarbeitung hoher Geschwindigkeit durchgeführt werden. Wenn das Eingangssignal von dem externen Sensor ein analoges Signal ist, führt die Eingangsschnittstellenschaltung 269X einen Puls mit einer Frequenz proportional zu dem Eingangssignal zu dem integrierten Schaltungselement 20 zu. Wenn die externe Last eine analoge Last ist, erzeugt das integrierte Schaltungselement 20 eine Pulsausgabe mit einem befohlenen EIN/AUS-Verhältnis als ein Ausgangssignal. Die Ausgangsschnittstellenschaltung 269Y glättet das empfangene Pulsausgangssignal und führt dann das geglättete Signal zu der externen Last zu.
  • Die CPU-Einheit 110D enthält den Pufferspeicher 114b für eine Datenkommunikation mit der speziellen Einheit 230 bis 250 und 260B. Der Systemspeicher 112D enthält die Steuerprogramme, die als das Organisationsverarbeitungsmittel 908 und das Daten-Umwandlungs/Transfer-Mittel 921 dienen. Das Organisationsverarbeitungsmittel 908 sendet die Schaltungsorganisationsdaten zu den Parameterspeichern 8100n und 8200n und führt die Adressenorganisation des Pufferspeichers 114b durch. Das Daten-Umwandlungs/Transfer-Mittel 921 führt die Datenkommunikation zwischen dem durch die spezielle Anweisung bestimmten Vorrichtungsspeicher 114a und den Einstellregistern 3100n und 3200n und den Befehls-Latch-Speichern 6100n und 6200n oder den Berechnungsregistern 4100n und 4200n und den Benachrichtigungsbitspeichern 7100n und 7200n durch den Pufferspeicher 114b durch. Die spezielle Anweisung besteht aus dem Anweisungswort, das den Typ einer Anweisung anzeigt, und dem ersten Operanden, und wenigstens einem des zweiten Operanden und des dritten Operanden, wobei die ersten bis dritten Operanden in keiner bestimmten Reihenfolge sind.
  • Darüber hinaus enthält jeder von einigen oder alle der Vorwärts/Rückwärts-Zähler 2100n und 2200n, die in den Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, die Register für einen aktuellen Wert 4101n und 4201n, die ersten Einstellregister 3101n und 3201n, das zweite Einstellregister 3102n und ein zweites Einstellregister 3202n, die erste Vergleichsschaltung 5101n und eine erste Vergleichsschaltung 5201n und die zweite Vergleichsschaltung 5102n und eine zweite Vergleichsschaltung 5202n. Auf eine Ausführung der speziellen Anweisung hin wird ein Wert in dem Register für einen aktuellen Wert oder dem ersten und dem zweiten Einstellregister von dem Mikroprozessor 111 durch den Pufferspeicher 114b eingestellt.
  • Das in jeder der speziellen Einheiten 230 bis 250 und 260B enthaltene integrierte Schaltungselement 20 enthält das erste Mehrkanalport 21 mit dem ersten Moden-Umschaltanschluss 28a und das zweite Mehrkanalport 22 mit dem zweiten Moden-Umschaltanschluss 28b und ein Paar der Logikschaltungseinheiten 1100n und 1200n entsprechend der Kanalnummer n. Ob das erste Port 21 als Eingangsport oder Ausgangsport verwendet wird, wird durch die Logikpegeleingabe zu dem ersten Moden-Umschaltanschluss 28a ausgewählt und bestimmt. Ob das zweite Port 22 als Eingangsport oder Ausgangsport verwendet wird, wird durch die Logikpegeleingabe zu dem zweiten dem Moden-Umschaltanschluss 28b ausgewählt und bestimmt. Ob die Logikschaltungseinheit 1100n oder 1200n eine Hochgeschwindigkeits-Zählerschaltung für von der Eingangsschnittstellenschaltung zugeführtes Eingangssignal bildet, um die Hochgeschwindigkeits-Eingabeverarbeitung oder die analoge Eingabeverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit 110D bildet oder eine Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit 110D empfangenen Einstelldaten bildet, um die Hochgeschwindigkeits-Ausgabeverarbeitung oder die analoge Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung durchzuführen, wird gemäß dem Inhalt der in den im Programmspeicher 113D gespeicherten Steuerprogramm enthaltenen Anweisung bestimmt. Das Paar von Logikschaltungseinheiten 1100n und 1200n enthält die folgenden Komponenten entsprechend seiner eigenen Kanalnummer n. Die Logikschaltungseinheit 1100n enthält den Vorwärts/Rückwärts-Zähler 2100n, das Einstellregister 3100n, das Berechnungsregister 4100n, den Befehls-Latch-Speicher 6100n, die Vergleichsschaltung 5100n, den Benachrichtigungsbitspeicher 7100n und den Parameterspeicher 8100n. Auf dieselbe Weise enthält die Logikschaltungseinheit 1200n den Vorwärts/Rückwärts-Zähler 2200n, das Einstellregister 3200n, das Berechnungsregister 4200n, den Befehls-Latch-Speicher 6200n, die Vergleichsschaltung 5200n, den Benachrichtigungsbitspeicher 7200n und den Parameterspeicher 8200n.
  • Das integrierte Schaltungselement 20 oder die speziellen Einheiten 230 bis 250 und 260B, die das integrierte Schaltungselement enthalten, enthält den Karteninformationsspeicherungsspeicher 9000. Der Systemspeicher 112D enthält ein Steuerprogramm, das als das Einstellanormalitäts-Detektionsmittel 905 dient. Der Karteninformationsspeicherungsspeicher 9000 speichert wenigstens eine der logischen Information des Moden-Umschaltanschlusses 28a und des zweiten Moden-Umschaltanschlusses 28b, was anzeigt, ob das Port 21 und das zweite Port 22 als Eingangsports oder Ausgangsport eingestellt sind, und der logischen Information des ersten Identifikationsanschlusses 24a und des zweiten Identifikationsanschlusses 24b, was identifiziert, ob die I/O-Schnittstellenschaltungen Logiksignalschaltungen oder analoge Signalschaltungen sind. Der Karteninformationsspeicherungsspeicher 9000 ist mit der CPU-Einheit 110D durch den Datenbus verbunden, um zuzulassen, dass der Mikroprozessor 111 den Inhalt des Karteninformationsspeicherungsspeichers 9000 ausliest. Das Einstellanormalitäts-Detektionsmittel 905 detektiert, dass die Typen der I/O-Schnittstellenschaltungen, die mit dem ersten Port 21 und dem zweiten Port 22 verbunden sind, und der Inhalt der in dem Programmspeicher 113D gespeicherten Anweisung einander nicht entsprechen, um den Betrieb zu stoppen und die Anormalität mitzuteilen.
  • Fünftes Ausführungsbeispiel
  • (1) Detaillierte Beschreibung einer Konfiguration und von Funktionen
  • Hierin nachfolgend wird eine interne Konfiguration einer speziellen Einheit gemäß einem fünften Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf 48 beschrieben werden. In 48 enthält eine CPU-Einheit 110E den Mikroprozessor 111, einen Systemspeicher 112E, einen Programmspeicher 113E, den Vorrichtungsspeicher 114a und den Pufferspeicher 114b. Ein sequentielles Programm wird von dem externen Werkzeug 108 transferiert, um zu dem Programmspeicher 113E geschrieben zu werden. Eine spezielle Einheit 340, die mit der CPU-Einheit 110E durch einen Bus verbunden ist, enthält Eingangsanschlüsse 340X, die mit acht EIN/AUS-Schaltsensoren 103x verbunden sind, und Ausgangsanschlüsse 340Y, die mit acht elektrischen Lasten 130y verbunden sind.
  • Eine Eingangsschnittstellenschaltung 349X für eine logische Eingabe hoher Geschwindigkeit ist zwischen den Eingangsanschlüssen 340X und dem ersten Port 31 vorgesehen, das für das integrierte Schaltungselement 30v vorgesehen ist. Die Eingangsschnittstellenschaltung 349X enthält Eingangsisolierschaltungen 341n und Eingangsfilter 342n mit einer relativ kleinen Zeitkonstanten von beispielsweise etwa 5 μsek. Die Kombination aus der Eingangsisolierschaltung 341n und dem Eingangsfilter 342n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Eine Ausgangsschnittstellenschaltung 349Y für eine EIN/AUS-Operation ist zwischen den Ausgangsanschlüssen 340Y und dem zweiten Port 32 vorgesehen, das für das integrierte Schaltungselement 30 vorgesehen ist. Die Ausgangsschnittstellenschaltung 349Y enthält Ausgabeelemente 347n entsprechend Leistungstransistoren und Ausgangsisolierschaltungen 346n. Die Kombination aus dem Ausgabeelement 347n und der Ausgangsisolierschaltung 346n, die in Reihe geschaltet sind, ist für jede Kanalnummer n = 0 bis 7 vorgesehen. Die Eingangsanschlüsse 340X und die Eingangsschnittstellenschaltung 349X, der Ausgangsanschluss 340Y und die Ausgangsschnittstellenschaltung 349Y, ein Bus-Verbindungsanschlussstück 340Z und das integrierte Schaltungselement 30 sind auf einem elektronischen Substrat 39xy angebracht, um die spezielle Einheit 340 zu bilden.
  • Das erste Port 31 enthält Kanalanschlüsse 31n (die nicht mit einem Bezugszeichen dargestellt sind), die jeweils den Kanalnummern n = 0 bis 7 entsprechen, während das zweite Port 32 Kanalanschlüsse 32n enthält (die nicht mit einem Bezugszeichen dargestellt sind), die jeweils den Kanalnummern n = 0 bis 7 entsprechen. Ein Paar von Logikschaltungseinheiten 1100n und 1200n ist jedem Kanal n zugeteilt. Die Logikschaltungseinheiten 1100n und 1200n senden und empfangen ein Signal zu/von dem Datenbus DATA und senden und empfangen auch ein Signal dazwischen. Weiterhin empfangen die Logikschaltungseinheiten 1100n und 1200n ein Signal von dem Kanalanschluss 31n und geben ein Signal zu dem Kanalanschluss 32n aus.
  • Die Details von jeder der Logikschaltungseinheiten 1100n und 1200n entsprechenden denjenigen, die in 41 dargestellt sind. Als eine repräsentative Hochgeschwindigkeits-Eingabeverarbeitungsoperation wird beispielsweise ein Hochgeschwindigkeits-Pulssignal von dem Kanalanschluss 31n eingegeben. Die Logikschaltungseinheit 1100n zählt die eingegebenen Hochgeschwindigkeits-Pulssignale. Wenn die Anzahl von Pulssignalen eine vorbestimmte Sollanzahl erreicht, sendet die Logikschaltungseinheit 1100n die Aufwärtszählausgabe zu dem Mikroprozessor 111 durch den Datenbus DATA. Die Sollanzahl wird im Voraus als Einstelldaten von dem Mikroprozessor 111 durch den Datenbus DATA gesendet.
  • Als eine repräsentative Hochgeschwindigkeits-Ausgabeverarbeitungsoperation wird beispielsweise eine Hochgeschwindigkeits-Pulsausgabe von dem Kanalanschluss 32n basierend auf dem Pulszyklus und der Anzahl eines erzeugten Pulses erzeugt, der im Voraus als die Einstelldaten zu der Logikschaltungseinheit 1200n gesendet worden ist.
  • Der erste Identifikationsanschluss 34a dient zum Identifizieren, dass die mit dem ersten Port 31 verbundene Eingangsschnittstellenschaltung 349X für die logische Eingabe dient. Ein Verdrahtungsmuster des ersten Identifikationsanschlusses 34a ist angeschlossen, um den logischen Pegel des ersten Identifikationsanschlusses 34a auf "H" einzustellen. Der zweite Identifikationsanschluss 34b dient zum Identifizieren, dass die mit dem zweiten Port 32 verbundene Ausgangsschnittstellenschaltung 349Y für die logische Ausgabe dient. Ein Verdrahtungsmuster des zweiten Identifikationsanschlusses 34b ist angeschlossen um den logischen Pegel des zweiten Identifikationsanschlusses 34b auf "H" einzustellen.
  • Die logischen Pegel des ersten Signalanschlusses 35a und des zweiten Signalanschlusses 36b sind "H", was anzeigt, dass die I/O-Schnittstellenschaltungen für die Hochgeschwindigkeits-Logik daran angeschlossen sind. Wenn die I/O-Schnittstellenschaltungen für den analogen Vergleich dienen, werden die logischen Pegel des ersten Signalanschlusses 36a und des zweiten Signalanschlusses 36b auf "L" eingestellt.
  • Identifikationsanschlussinformation, wie sie oben beschrieben ist, wird zu dem Karteninformationsspeicherungsspeicher 9000 zugeführt, um zu dem Mikroprozessor 111 durch den Datenbus DATA gesendet zu werden. Die gemeinsame Taktschaltung 9001 erzeugt ein Taktsignal τ mit beispielsweise einem Zyklus von 1 μsek und führt das Taktsignal zu jeder Logikschaltungseinheit 1000n zu, wie es nötig ist. Die gemeinsame Triggerschaltung 9002 erzeugt Triggerpulse PO und Q0 in Tandemform, die jeweils beispielsweise einen Signalzyklus von T0 = 10 msek und eine Breite von 1 μsek haben, und führt die Triggersignale P0 und Q0 zu jeder Logikschaltungseinheit 1000n zu, wie es nötig ist.
  • Die Logikschaltungseinheit 1100n enthält einen 160-Bit-Vorwärts/Rückwärts-Zähler 2100n, ein Einstellregister 3100n, ein Berechnungsregister 4100n und eine Vergleichsschaltung 5100n. Auf dieselbe Weise enthält die Logikschaltungseinheit 1200n einen 16-Bit-Vorwärts/Rückwärts-Zähler 2200n, ein Einstellregister 3200n, ein Berechnungsregister 4200n und eine Vergleichsschaltung 5200n. Ein Paar der Vorwärts/Rückwärts-Zähler 2100n und 2200n ist unabhängig miteinander verbunden, und zwar in Abhängigkeit von den Inhalten der Parameterspeicher 8100n und 8200n, um als einziger 32-Bit-Vorwärts/Rückwärts-Zähler 2000n zu arbeiten. Wenn das Paar von Vorwärts/Rückwärts-Zählern 2100n und 2200n abhängig miteinander verbunden sind, um ein einziger Vorwärts/Rückwärts-Zähler 2000n zu sein, werden ein Paar der Einstellregister 3100n und 3200n, ein Paar der Berechnungsregister 4100n und 4200n und ein Paar der Vergleichsschaltungen 5100n und 5200n kombiniert, um jeweils als einziges 32-Bit-Einstellregister 3000n, einziges 32-Bit-Berechnungsregister 4000n und einzige 32-Bit-Vergleichsschaltung 5000n zu arbeiten.
  • Ob die für jeden Kanal vorgesehenen Vorwärts/Rückwärts-Zähler als die zwei 16-Bit-Zähler 2100n und 2200n oder als der einzige 32-Bit-Zähler 2000n behandelt werden, wird durch den Typ einer speziellen Anweisung zu dem Vorwärts/Rückwärts-Zähler identifiziert, und zwar spezifisch in Abhängigkeit davon, ob die spezielle Anweisung eine 32-Bit-Anweisung oder eine 16-Bit-Anweisung ist. Wie es in den 39 und 40 dargestellt ist, können dann, wenn ein erstes Gatterelement 35n und ein zweites Gatterelement 37n jeweils entsprechend dem ersten Gatterelement 25n und dem zweiten Gatterelement 27n für jede der Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, das erste Port 31 und das zweite Port 32 als I/O-Ports verwendet werden.
  • (2) Zusammenfassung und Charakteristiken des fünften Ausführungsbeispiels
  • Wie es aus der obigen Beschreibung offensichtlich ist, enthält die programmierbare Steuerung 100E gemäß dem fünften Ausführungsbeispiel der vorliegenden Erfindung die CPU-Einheit 100E, die den Mikroprozessor 111, den Systemspeicher 112E, der in Zusammenarbeit mit dem Mikroprozessor 111 arbeitet, den Programmspeicher 113E, zu welchem das durch den Anwender erzeugte sequentielle Programm von dem externen Werkzeug 108 transferiert und geschrieben wird, und den Vorrichtungsspeicher 114a, der die I/O-Abbildungsspeicher X und Y zum Speichern der I/O-Information und der Steuerinformation, das Hilfsrelais M und das Datenregister D hat, und eine von oder eine Vielzahl von den I/O-Einheiten 340, die mit der CPU-Einheit durch den Bus verbunden sind, enthält. Einige oder alle der I/O-Einheiten dienen als die speziellen Einheit 240, die jeweils die integrierten Schaltungselemente 30 zum gemeinsamen Nutzen der speziellen I/O-Verarbeitungsfunktion zum Komplementieren der Steuerfunktion des Mikroprozessors 111 enthält. Die spezielle Einheiten 340 enthält das elektronische Substrat 39xy, auf welchem die externen Verbindungsanschlüsse 340X und 340Y, die mit wenigstens einem von oder beiden von der Vielzahl von externen Sensoren und externen Lasten verbunden sind, die Mehrkanal-Eingangsschnittstellenschaltung 349X oder die Mehrkanal-Ausgangsschnittstellenschaltung 349Y, die mit dem externen Verbindungsanschluss verbunden ist, das integrierte Schaltungselement 30, das für eine I/O-Steuerung verwendet wird, deren Steuerungsspezifikationen teilweise variabel eingestellt werden können, und der Bus-Verbindungsanschluss 340Z zur Verbindung mit dem Mikroprozessor 111 angebracht sind. Das integrierte Schaltungselement 30 enthält das erste Port 31, zu welchem das logische Signal für eine EIN/AUS-Operation von der Eingangsschnittstellenschaltung 349X eingegeben wird, das zweite Port 32 zum Ausgeben des logischen Signals für eine EIN/AUS-Operation zu der Ausgangsschnittstellenschaltung 349Y, die Parameterspeicher 8100n und 8200n entsprechend jeder Kanalnummer n und die Logikschaltungseinheiten 1100n und 1200n, deren Betriebsspezifikationen für die I/O-Verarbeitung durch die von dem Mikroprozessor 111 zu dem Parameterspeicher gesendeten Schaltungsorganisationsdaten bestimmt werden.
  • Die Logikschaltungseinheiten 1100n und 120n enthalten weiterhin die Benachrichtigungsbitspeicher 7100n und 7200n zum Zählen des logischen Eingangssignals, das durch Eingangsschnittstellenschaltung 349X mit hoher Geschwindigkeit erhalten ist, um die Aufwärtszählausgabe oder die Zähldaten als das Benachrichtigungssignal oder die Berechnungsdaten zu dem Mikroprozessor 111 zu senden, die Berechnungsregister 4100n und 4200n und die Vorwärts/Rückwärts-Zähler 2100n und 2200n, die die Einstelldaten oder das von dem Mikroprozessor 111 empfangene Befehlssignal in den Einstellregistern 3100n und 3200n und den Befehls-Latch-Speichern 6100n und 6200n speichern, um die Hochgeschwindigkeits-Pulsausgabe basierend auf den Inhalten des Einstellregisters und des Befehls-Latch-Speichers zu der Ausgangsschnittstellenschaltung 349X zuzuführen. Die Vorwärts/Rückwärts-Zähler 2100n und 2200n enthalten die Register für einen aktuellen Wert 4101n und 4102n, die einen Teil des Berechnungsregisters bilden. Ob die Hochgeschwindigkeits-Zählerschaltung für das von der Eingangsschnittstellenschaltung 349X zugeführte Eingangssignal zu bilden ist, um die Hochgeschwindigkeits-Eingabeverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit 110E durchzuführen, oder die Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit 110E empfangenen Einstelldaten zu bilden ist, um die Hochgeschwindigkeits-Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung 349Y durchzuführen, wird für jeden Kanal gemäß dem Inhalt der in dem im Programmspeicher gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt. Wie die zu den Parameterspeichern 8100n und 8200n gesendeten Schaltungsorganisationsdaten veranlassen, dass eine Vielzahl von Hochgeschwindigkeits-Eingabeverarbeitungsschaltungen und eine Vielzahl von Hochgeschwindigkeits-Ausgabenverarbeitungsschaltungen durchzuführen sind, und wenn das Eingangssignal von dem externen Sensor ein analoges Signal ist, führt die Eingangsschnittstellenschaltung einen Puls oder ein Vergleichsbestimmungs-Logiksignal mit einer Frequenz proportional zu derjenigen des Eingangssignals zu dem integrierten Schaltungselement 30 zu. Wenn die externe Last eine analoge Last ist, erzeugt das integrierte Schaltungselement 30 eine Pulsausgabe mit einem EIN/AUS-Verhältnis als befohlenes Ausgangssignal. Die Ausgangsschnittstellenschaltung glättet das empfangene Pulsausgangssignal und führt dann das geglättete Signal zu der externen Last zu.
  • Die CPU-Einheit 110E enthält den Pufferspeicher 114b für eine Datenkommunikation mit der speziellen Einheit 340. Der Systemspeicher 112E enthält die Steuerprogramme, die als das Organisationsverarbeitungsmittel 908 und das Daten-Umwandlungs/Transfer-Mittel 921 fungieren. Direkt nach dem Start des Betriebs der programmierbaren Steuerung 100E durchsucht das Organisationsverarbeitungsmittel 908 den Inhalt des Programmspeichers 113E, um die spezifische Anweisung entsprechend der speziellen Einheit 340 zu extrahieren, und sendet den Typ der Logikschaltungseinheiten 1100n und 1200n, die in der speziellen Einheit verwendet werden, gemäß dem Inhalt der speziellen Anweisung und den Schaltungsorganisationsdaten entsprechend dem Betriebsmode zu den Parameterspeichern 8100n und 8200n. Gleichzeitig führt das Organisationsverarbeitungsmittel 908 die Adressenorganisation des Pufferspeichers 114b für die Kommunikation mit jeder Logikschaltungseinheit durch, deren Schaltungsorganisation durch den Parameter spezifiziert ist. Das Daten-Umwandlungs/Transfer-Mittel 921 wandelt die Daten in die Einstelldaten in einer Einheit um, die für den Betrieb der Logikschaltungseinheiten 1100n und 1200n geeignet ist, und das Befehlssignal basierend auf dem Inhalt des Vorrichtungsspeichers 114a, der durch die spezielle Anweisung bestimmt ist, um die Einstelldaten und das Befehlssignal zu den Einstellregistern 3100n und 3200n und den Befehls-Latch-Speichern 6100n und 6200n durch den Pufferspeicher 114b zu senden. Gleichzeitig transferiert das Daten-Umwandlungs/Transfer-Mittel 921 die Berechnungsdaten oder das Benachrichtigungssignal, erhalten von den Logikschaltungseinheiten 1100n und 1200n, zu dem Vorrichtungsspeicher 114a, der durch die spezielle Anweisung bestimmt ist, durch den Pufferspeicher 114b. Die spezielle Anweisung ist zusammengesetzt aus einem Anweisungswort, das den Typ einer Anweisung anzeigt, einem ersten Operanden und wenigstens einem eines zweiten Operanden und eines dritten Operanden wobei die ersten bis dritten Operanden in keiner bestimmten Reihenfolge sind. Der erste Operand bestimmt eine Identifikationsnummer zum Spezifizieren einer Soll-I/O-Nummer der speziellen Einheit. Der zweite Operand bestimmt eine Nummer des Datenregisters, das die von dem Berechnungsregister erhaltenen Berechnungsdaten speichert, oder eine Nummer des Datenregisters, das die zu dem Einstellregister gesendeten Einstelldaten speichert, oder bezeichnet direkt eine Einstellkonstante. Der dritte Operand bestimmt eine Nummer des Hilfsrelais, das das von dem Benachrichtigungsbitspeicher erhaltene Benachrichtigungssignal speichert, oder eine Nummer des Hilfsrelais, das das zu dem Befehls-Latch-Speicher zu sendende Befehlssignal speichert.
  • Darüber hinaus enthält jeder von einigen oder allen der Vorwärts/Rückwärts-Zähler 2100n und 2200n, die in den Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, die Register für einen aktuellen Wert 4101n und 4201n, die ersten Einstellregister 3101n und 3201n, die zweiten Einstellregister 3102n und 3202n, die ersten Vergleichsschaltungen 5101n 5201n und die zweiten Vergleichsschaltungen 5102n 5202n. Die Register für einen aktuellen Wert 4101n und 4201n erhöhen oder erniedrigen die Anzahl von Operationen der Zähleingabe zu den Vorwärts/Rückwärts-Zählern 2100n und 2200n gemäß der Zählrichtung und speichern einen kumulativen Gesamtwert ab einem Anfangswert bei dem Start des Betriebs der Vorwärts/Rückwärts-Zähler. Die Vergleichsschaltungen 5101n und 5201n sind eine Wert-Vergleichsschaltung, die eine erste Vergleichsübereinstimmungsausgabe erzeugt, wenn der in den ersten Einstellregistern 3101n und 3201n gespeicherte Wert und der in den Registern für einen aktuellen Wert 4101n und 4201n gespeicherte Wert identisch zueinander sind. Die zweiten Vergleichsschaltungen 5102n und 5202n sind eine Wert-Vergleichsschaltung, die eine zweite Vergleichsübereinstimmungsausgabe erzeugt, wenn der in den zweiten Einstellregistern 3102n und 3202n gespeicherte Wert und der in den Registern für einen aktuellen Wert 4101n und 4201n gespeicherte Wert identisch zueinander sind. Ein Wert wird für das Register für einen aktuellen Wert oder jedes der ersten und zweiten Einstellregister von dem Mikroprozessor 111 durch den Pufferspeicher 114b eingestellt, wenn die spezielle Anweisung ausgeführt wird.
  • Das in der speziellen Einheit 340 enthaltene integrierte Schaltungselement 30 enthält das erste Mehrkanalport 31 und das zweite Mehrkanalport 32 und das Paar von Logikschaltungseinheit 1100n und 1200n entsprechend jeder Kanalnummer n. Das erste Port 31 ist mit dem Eingangsanschluss zur Verbindung mit einer außerhalb des integrierten Schaltungselements 30 vorgesehenen externen Vorrichtung durch die Eingangsschnittstellenschaltung für ein logisches Signal oder ein analoges Signal verbunden. Das zweite Port 32 ist mit dem Ausgangsanschluss zur Verbindung mit einer außerhalb des integrierten Schaltungselement 30 vorgesehenen externen Vorrichtung durch die Ausgangsschnittstellenschaltung für ein logisches Signal oder ein analoges Signal verbunden. Ob die Logikschaltungseinheiten 1100n und 1200n die Hochgeschwindigkeits-Zählerschaltung für das von der Eingangsschnittstellenschaltung zugeführte Eingangssignal bilden, um die Hochgeschwindigkeits-Eingabeverarbeitung oder die analoge Eingabeverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit 110E durchzuführen, oder die Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit 110E empfangenen Einstelldaten bilden, um die Hochgeschwindigkeits-Ausgabeverarbeitung oder die analoge Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung durchzuführen, wird basierend auf dem Inhalt der in dem im Programmspeicher 113E gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt.
  • Das Paar von Logikschaltungseinheiten 1100n und 1200n enthält die folgenden Komponenten entsprechend seiner eigenen Kanalnummer n. Die Logikschaltungseinheit 1100n enthält den Vorwärts/Rückwärts-Zähler 2100n, das Einstellregister 3100n, das Berechnungsregister 4100n, den Befehls-Latch-Speicher 6100n, die Vergleichsschaltung 5100n, den Benachrichtigungsbitspeicher 7100n und den Parameterspeicher 8100n. Auf dieselbe Weise enthält die Logikschaltungseinheit 1200n den Vorwärts/Rückwärts-Zähler 2200n, das Einstellregister 3200n, das Berechnungsregister 4200n, den Befehls-Latch-Speicher 6200n, die Vergleichsschaltung 5200n, den Benachrichtigungsbitspeicher 7200n und den Parameterspeicher 8200n. Wenn die spezielle Anweisung eine Anweisung mit doppelter Länge ist, ist das Paar von Vorwärts/Rückwärts-Zählern 2100n und 2200n abhängig miteinander verbunden, um den einzigen Vorwärts/Rückwärts-Zähler doppelter Länge 2000n zu bilden. Spezifisch enthält das in der speziellen Einheit enthaltene integrierte Schaltungselement ein Paar der Logikschaltungen und das erste und das zweite Port. Das Paar von Logikschaltungseinheiten kann als zwei separate Vorwärts/Rückwärts-Zähler oder als einzelner Vorwärts/Rückwärts-Zähler doppelter Länge verwendet werden. Daher können beispielsweise die Vorwärts/Rückwärts-Zähler auf die folgende Weise verwendet werden. Jeder der Vorwärts/Rückwärts-Zähler ist als l6-Bit-Zähler konfiguriert. Einer der Vorwärts/Rückwärts-Zähler kann als ein 16-Bit-Hochgeschwindigkeitszähler verwendet werden, während der andere Vorwärts/Rückwärts-Zähler als eine 16-Bit-Pulsausgabeschaltung verwendet werden kann. Alternativ dazu kann das Paar von Vorwärts/Rückwärts-Zählern als irgendeiner eines 32-Bit-Hochgeschwindigkeitszählers und einer 32-Bit-Pulsausgabeschaltung verwendet werden. Als Ergebnis kann die Größe des integrierten Schaltungselements reduziert werden, um zuzulassen, dass die integrierte Schaltung für verschiedene Anwendungen verwendet wird.
  • Das integrierte Schaltungselement 30 oder die spezielle Einheit 340 mit dem integrierten Schaltungselement 30 enthält den Karteninformationsspeicherungsspeicher 9000. Der Systemspeicher 112E enthält ein Steuerprogramm, das als Einstellanormalitäts-Detektionsmittel 905 dient. Der Karteninformationsspeicherungsspeicher 9000 speichert die erste Identifikationsanschlussinformation 34a und die zweite Identifikationsanschlussinformation 34b zum Identifizieren, ob die Schnittstellenschaltungen für ein logisches Signal oder für ein analoges Signal mit dem ersten Port 31 und dem zweiten Port 32 verbunden sind. Der Karteninformationsspeicherungsspeicher 9000 ist mit der CPU-Einheit 111E durch den Datenbus verbunden, um zuzulassen, dass der Inhalt des Karteninformationsspeicherungsspeichers 9000 durch den Mikroprozessor 111 gelesen wird. Das Einstellanormalitäts-Detektionsmittel 905 detektiert, dass die Typen der mit dem ersten Port 31 und dem zweiten Port 32 verbundenen I/O-Schnittstellenschaltungen und der Inhalt der im Programmspeicher 113E gespeicherten Anweisung einander nicht entsprechen, um den Betrieb zu stoppen und die Anormalität mitzuteilen. Spezifisch werden zum Starten des Betriebs die Karteninformation für den Typ der I/O-Schnittstellenschaltung der speziellen Einheit und der Inhalt der Anweisung im Programmspeicher verifiziert und verglichen. Wenn eine ungeeignete Anweisung verwendet wird, stoppt das Einstellanormalitäts-Detektionsmittel 905 den Betrieb und teilt die Anormalität mit. Daher ist es möglich, das Vorhandensein eines fehlerhaften Steuerprogramms zu finden, um einen Debug-Prozess durchzuführen. Zusätzlich kann ein gefährlicher Betrieb vermieden werden. Demgemäß wird die Sicherheit verbessert.
  • Weiterhin enthält jeder von einigen oder allen der Vorwärts/Rückwärts-Zähler 2100n und 2200n, die in den Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, die Standby-Pufferregister 4104n und 4204n. Die Standby-Pufferregister 4104n und 4204n speichern temporär die vom Pufferspeicher 114b gesendeten numerischen Daten. Die Inhalte der Standby-Pufferregister werden zu den ersten Einstellregistern 3101n und 3201n oder den zweiten Einstellregistern 3102n und 3202n basierend auf dem von den Logikschaltungseinheiten 1100n und 1200n erzeugten Zeitgabesignal gesendet. Ob die von dem Pufferspeicher 114b gesendeten numerischen Daten zu den ersten und den zweiten Einstellregistern durch das Standby-Pufferregister mit einem Zeitunterschied gesendet werden oder direkt zu den ersten und den zweiten Einstellregistern ohne durch das Standby-Pufferregister gesendet werden, wird basierend auf dem Inhalt der speziellen Anweisung bestimmt.
  • Der Systemspeicher 112E enthält das Steuerprogramm, das als das Transferverhinderungsmittel 920 dient, das während des Betriebs der programmierbaren Steuerung 110E ausgeführt wird. Die für die spezielle Einheit 340 verwendete spezielle Anweisung ist eine Anweisung zum Erzeugen des Betriebsbeendigungssignals. Ab dem Start der Ausführung der speziellen Anweisung bis zu der Erfassung des Betriebsbeendigungssignals verhindert das Transferverhinderungsmittel 920 das Senden der Einstelldaten wenigstens zu den ersten Einstellregistern 3101n und 3201n und den zweiten Einstellregistern 3102n und 3202n. Das Betriebsbeendigungssignal wird durch Lesen des Inhalts der Benachrichtigungsbitspeicher 7100n und 7200n erhalten, wenn die Anzahl der zu dem ersten Port 31 eingegebenen Pulssignale oder der von dem zweiten Port 32 erzeugten Pulssignale eine voreingestellte Sollanzahl von Pulsen erreicht oder das Erzeugen/Zählen der Pulse durch das Befehlssignal beendet wird.
  • Weiterhin enthält jede von einigen oder allen der Vorwärts/Rückwärts-Zähler 2100n und 2200n, die in den Logikschaltungseinheiten 1100n und 1200n vorgesehen sind, die Variations-Einstellregister 4103n und 4203n. Die Variations-Einstellregister 4103n und 4203n werden aktiviert, wenn eine Aufwärts/Abwärts-Zähleingabe zu den Vorwärts/Rückwärts-Zählern 2100n und 2200n zugeführt wird. Die in den Variations-Einstellregistern 4103n und 4203n gespeicherten Werte werden zu den aktuellen Werten der Register für einen aktuellen Wert 4101n und 4201n addiert oder von diesen subtrahiert.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • - JP 2002-169602 A [0003, 0003, 0006]
    • - JP 2002-222003 A [0003, 0004, 0006]
    • - JP 2002-006907 A [0005, 0006]

Claims (30)

  1. Programmierbare Steuerung (100A: 100B; 100C: 100D; 100E), die folgendes aufweist: eine CPU-Einheit (110A: 110B; 110C: 110D; 110E), die einen Mikroprozessor (111), einen Systemspeicher (112A: 112B; 112C: 112D; 112E), der in Zusammenarbeit mit dem Mikroprozessor arbeitet, einen Programmspeicher (113A: 113B; 113C: 113D; 113E) zum Speichern eines sequentiellen Programms und einen Vorrichtungsspeicher (114a) zum Speichern von I/O-Information und Steuerinformation enthält; und wenigstens eine I/O-Einheit (120180; 220260B; 340), die mit der CPU-Einheit durch einen Bus verbunden ist, wobei wenigstens eine der I/O-Einheiten eine spezielle Einheit (130180; 230250: 260B; 340) aufweist, die ein integriertes Schaltungselement (10; 20; 30) zum gemeinsamen Nutzen einer speziellen I/O-Verarbeitungsfunktion zum Komplementieren einer Steuerfunktion des Mikroprozessors enthält, wobei: die spezielle Einheit (130180; 230250: 260B; 340) ein elektronisches Substrat enthält, auf welchem eine Mehrkanal-Eingangsschnittstellenschaltung und eine Mehrkanal-Ausgangsschnittstellenschaltung, die jeweils mit externen Verbindungsanschlüssen verbunden sind, und das integrierte Schaltungselement (10; 20; 30), das für eine I/O-Steuerung verwendet wird, deren Steuerungsspezifikationen teilweise variabel eingestellt werden können, vorgesehen sind; das integriert Schaltungselement (10; 20; 30) einen Parameterspeicher (8000n; 8100n: 8200n; 8100n: 8200n) entsprechend jeder Kanalnummer und eine Logikschaltungseinheit (1000n; 1100n: 1200n; 1100n: 1200n), deren Betriebsspezifikationen für eine I/O-Verarbeitung durch von dem Mikroprozessor zu dem Parameterspeicher gesendete Schaltungsorganisationsdaten bestimmt werden, entsprechend jeder Kanalnummer enthält; die Logikschaltungseinheit (1000n; 1100n: 1200n; 1100n: 1200n) einen Benachrichtigungsbitspeicher (7000n; 7100n: 7200n; 7100n: 7200n) zum Zählen eines logischen Eingangssignals, das durch die Eingangsschnittstellenschaltung erhalten ist, mit hoher Geschwindigkeit, um eine Aufwärtszählausgabe als Benachrichtigungssignal zum Mikroprozessor zu senden, ein Berechnungsregister (4000n; 4100n: 4200n; 4100n: 4200n) zum Senden von Zähldaten als Berechnungsdaten zu dem Mikroprozessor, ein Einstellregister (3000n; 3100n: 3200n; 3100n: 3200n) zum Speichern von von dem Mikroprozessor empfangenen Einstelldaten, einen Befehls-Latch-Speicher (6000n; 6100n: 6200n; 6100n: 6200n) zum Speichern eines von dem Mikroprozessor empfangenen Befehlssignals und einen Vorwärts/Rückwärts-Zähler (2000n; 2100n: 2200n; 2100n: 2200n) zum Zuführen einer Hochgeschwindigkeits-Pulsausgabe basierend auf Inhalten des Einstellregisters und des Befehls-Latch-Speichers zu der Ausgangsschnittstellenschaltung enthält; ob der Vorwärts/Rückwärts-Zähler (2000n; 2100n: 2200n; 2100n: 2200n) eine Hochgeschwindigkeits-Zählerschaltung für ein von der Eingangsschnittstellenschaltung zugeführtes Eingangssignal bildet, um eine Hochgeschwindigkeits-Eingabeverarbeitung zum Senden der Aufwärtszählausgabe zu der CPU-Einheit durchzuführen, oder eine Hochgeschwindigkeits-Pulsausgabeschaltung basierend auf den von der CPU-Einheit empfangenen Einstelldaten bildet, um eine Hochgeschwindigkeits-Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung durchzuführen, für jeden Kanal gemäß einem Inhalt einer in einem im Programmspeicher (113A: 113B; 113C: 113D; 113E) gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt wird; eine Vielzahl von Typen der Hochgeschwindigkeits-Eingabeverarbeitung und eine Vielzahl von Typen der Hochgeschwindigkeits-Ausgabeverarbeitung durch die zu dem Parameterspeicher (8000n; 8100n: 8200n; 8100n: 8200n) gesendeten Schaltungsorganisationsdaten durchgeführt werden; und die Eingangsschnittstellenschaltung einen Puls mit einer Frequenz proportional zu einem Eingangssignal zu dem integrierten Schaltungselement (113A: 113B; 113C: 113D; 113E) zuführt, wenn das Eingangssignal von einem externen Sensor, der an den externen Verbindungsanschluss angeschlossen ist, ein analoges Signal ist, während das integrierte Schaltungselement eine Pulsausgabe bei einem befohlenen EIN/AUS-Verhältnis als Ausgangssignal erzeugt und die Ausgangsschnittstellenschaltung das empfangene Pulsausgangssignal glättet, um das geglättete Pulsausgangssignal zu einer externen Last zuzuführen, wenn die externe Last eine analoge Last ist.
  2. Programmierbare Steuerung nach Anspruch 1, wobei: die CPU-Einheit (110A: 110B; 110C: 110D; 110E) einen Pufferspeicher (114b) für eine Datenkommunikation mit einer speziellen Einheit enthält; der Systemspeicher (112A: 112B; 112C: 112D; 112E) Steuerprogramme enthält, die als Organisationsverarbeitungsmittel (908) und Daten-Umwandlungs/Transfer-Mittel (921) dienen; das Organisationsverarbeitungsmittel (908) einen Inhalt des Programmspeichers direkt nach einem Start eines Betriebs der programmierbaren Steuerung durchsucht, um eine spezielle Anweisung entsprechend der speziellen Einheit zu extrahieren, um die Schaltungsorganisationsdaten entsprechend einem Typ der Logikschaltungseinheit und einem Betriebsmode, die in der speziellen Einheit verwendet werden, zu dem Parameterspeicher gemäß einem Inhalt der speziellen Anweisung zu senden und um eine Adressenorganisation des Pufferspeichers für eine Kommunikation mit jeder von Logikschaltungseinheiten durchzuführen, deren Schaltungsorganisation spezifiziert ist; das Daten-Umwandlungs/Transfer-Mittel (921) einen Inhalt des durch die spezielle Anweisung spezifizierten Vorrichtungsspeichers in Einstelldaten in einer Einheit umwandelt, die für einen Betrieb der Logikschaltungseinheit geeignet ist, und ein Befehlssignal, um die erhaltenen Einstelldaten und das Befehlssignal zu dem Einstellregister und dem Befehls-Latch-Speicher durch den Pufferspeicher zu senden, und irgendetwas von Berechnungsdaten und einem Benachrichtigungssignal, erhalten von der Logikschaltungseinheit, zu dem durch die spezielle Anweisung bestimmten Vorrichtungsspeicher durch den Pufferspeicher transferiert; und die spezielle Anweisung ein Anweisungswort enthält, das einen Typ einer Anweisung anzeigt, einen ersten Operanden und wenigstens einen eines zweiten Operanden und eines dritten Operanden, wobei die ersten bis dritten Operanden in keiner bestimmten Reihenfolge enthalten sind, wobei der erste Operand eine Identifikationsnummer zum Spezifizieren einer Soll-I/O-Nummer der speziellen Einheit bestimmt, wobei der zweite Operand irgendetwas von einer Nummer des Datenregisters, das die von dem Berechnungsregister erhaltenen Berechnungsdaten speichert, und einer Nummer des Datenregisters, das die zu dem Einstellregister gesendeten Einstelldaten speichert, und einer direkt eingestellten Konstante bestimmt und der dritte Operand irgendetwas von einer Nummer des Hilfsrelais, das das von dem Benachrichtigungsbitspeicher erhaltene Benachrichtigungssignal speichert, und einer Nummer des Hilfsrelais, das das zu dem Befehls-Latch-Speicher gesendete Befehlssignal speichert, bestimmt.
  3. Programmierbare Steuerung nach Anspruch 2, wobei: der Vorwärts/Rückwärts-Zähler (2000n; 2100n: 2200n; 2100n: 2200n) ein Register für einen aktuellen Wert (4001n; 4101n: 4201n; 4101n: 4201n) zum Erhöhen/Erniedrigen der Anzahl von Operationen einer Zähleingabe gemäß einer Zählrichtung enthält, um einen kumulativen Wert ab einem Anfangswert bei einem Start eines Betriebs des Vorwärts/Rückwärts-Zählers zu speichern, ein erstes Einstellregister (3001n; 3101n: 3201n; 3101n: 3201n) zum Speichern eines oberen Grenz-Zählwerts, ein zweites Einstellregister (3002n; 3102n: 3202n; 3102n: 3202n) zum Speichern eines Zwischenwerts, der kleiner als der obere Grenz-Zählwert ist, eine erste Vergleichsschaltung (5001n; 5101n: 5102n; 5101n: 5201n), die eine Wert-Vergleichsschaltung zum Erzeugen einer ersten Vergleichsübereinstimmungsausgabe enthält, wenn ein in dem ersten Einstellregister gespeicherter Wert und ein in dem Register für einen aktuellen Wert gespeicherter Wert identisch zueinander sind, und eine zweite Vergleichsschaltung (5002n; 5102n: 5202n; 5102n: 5202n), die eine Wertvergleichsschaltung zum Erzeugen einer zweiten Vergleichsübereinstimmungsausgabe enthält, wenn ein in dem zweiten Einstellregister gespeicherter Wert und der in dem Register für einen aktuellen Wert gespeicherte Wert identisch zueinander sind; und ein Wert für irgendetwas des aktuellen Registers und jedes des ersten Einstellregisters und des zweiten Einstellregisters von dem Mikroprozessor durch den Pufferspeicher auf eine Ausführung der speziellen Anweisung hin eingestellt wird.
  4. Programmierbare Steuerung nach Anspruch 2, wobei: die Logikschaltungseinheit (1000n) eine Eingangsschaltung für allgemeine Zwecke (1091) zum Transferieren eines Eingangssignals zu einem in dem Vorrichtungsspeicher durch einen Datenselektor zugeteilten Eingangsabbildungsspeicherbereich für eine Eingabeverarbeitung basierend auf einer Ausführung eines Eingabeverarbeitungsmittels entsprechend dem im Systemspeicher gespeicherten Steuerprogramm und eine Ausgangsschaltung für allgemeine Zwecke (1092) zum Transferieren von Daten in einem in dem Vorrichtungsspeicher zugeteilten Ausgangsabbildungsspeicherbereich zu einer in der Logikschaltungseinheit vorgesehenen Ausgangs-Latch-Speicher auf eine Ausführung eines Ausgabeverarbeitungsmittels entsprechend dem im Systemspeicher gespeicherten Steuerprogramm hin; und die Eingangsschaltung für allgemeine Zwecke (1091) und die Ausgangsschaltung für allgemeine Zwecke (1092) freigegeben werden, wenn die Logikschaltungseinheit weder als Hochgeschwindigkeits-I/O-Schaltung noch als analoge I/O-Schaltung verwendet wird.
  5. Programmierbare Steuerung nach Anspruch 4, wobei: die Eingangsschnittstellenschaltung (139X179X) als irgendeine einer Eingangsschnittstellenschaltung (139X: 149X: 169X) für einen EIN/AUS-Schaltsensor mit irgendeinem eines Eingangsfilters mit einer kleinen Zeitkonstanten für einen Hochgeschwindigkeits-Eingabepuls und eines Eingangsfilters mit einer größeren Zeitkonstanten, zu welchem der Hochgeschwindigkeits-Eingabepuls nicht eingegeben wird, und einer Eingangsschnittstellenschaltung (159X179X) für einen analogen Sensor mit einem Spannung/Frequenz-Wandler klassifiziert ist; die Ausgangsschnittstellenschaltung (139Y179Y) als irgendeine einer Ausgangsschnittstellenschaltung (149Y: 139Y: 159Y) mit irgendeinem eines Transistors zum Durchführen einer Hochgeschwindigkeits-EIN/AUS-Schaltoperation für einen Hochgeschwindigkeits-Ausgabepuls als Ausgabeelement und eines Transistors zum Durchführen einer EIN/AUS-Schaltoperation niedriger Geschwindigkeit, von welcher der Hochgeschwindigkeits-Ausgabepuls nicht ausgegeben wird, als Ausgabeelement und einer Ausgangsschnittstellenschaltung (169Y: 179Y) für eine analoge Last mit einer Glättungsschaltung (168n: 178n) für eine Pulsbreitenmodulationssignalausgabe, die von der Logikschaltungseinheit erzeugt ist, klassifiziert ist; und eine Vielzahl von Typen der speziellen Einheiten (130170) anwendbar konfiguriert ist mit einer beliebigen Kombination aus irgendeiner einer Hochgeschwindigkeits-Logikeingabe, einer Logikeingabe niedriger Geschwindigkeit und einer analogen Eingabe und irgendeiner einer logischen Ausgabe hoher Geschwindigkeit, einer logischen Ausgabe niedriger Geschwindigkeit und einer analogen Ausgabe, außer für eine Kombination der logischen Eingabe niedriger Geschwindigkeit und der logischen Ausgabe niedriger Geschwindigkeit.
  6. Programmierbare Steuerung nach Anspruch 4, wobei: die Logikschaltungseinheit (1000n) eine variable Filterschaltung (1010n) enthält, die in Reaktion auf eine in dem Programmspeicher (113A) gespeicherte variable Filteranweisung (REF) arbeitet; die variable Filterschaltung (1010n) einen Vorwärts/Rückwärts-Zähler (2000n) zum Aufwärts/Abwärts-Zählen eines vorbestimmten Taktsignals gemäß einem logischen Pegel eines Eingangssignals und einen Benachrichtigungsbitspeicher (7000n), der als Eingangsbestimmungsschaltung dient, enthält; eine als die Einstelldaten (3010n) empfangene Filterkonstante in dem ersten Einstellregister (3001n) des Vorwärts/Rückwärts-Zählers gespeichert ist und der Vorwärts/Rückwärts-Zähler eine Aufwärtszählausgabe erzeugt, um einen Aufwärtszählbetrieb zu stoppen, wenn ein Wert des Registers für einen aktuellen Wert des Vorwärts/Rückwärts-Zählers sich erhöht, um einen Einstellwert im ersten Einstellregister zu erreichen, und eine Rückkehr- bzw. Rücksprungausgabe anstelle der Aufwärtszählausgabe erzeugt, um einen Abwärtszählbetrieb zu stoppen, wenn der aktuelle Wert des Registers für einen aktuellen Wert sich erniedrigt, um Null zu sein; der Benachrichtigungsbitspeicher (7000n) durch die Aufwärtszählausgabe eingestellt und durch die Rücksprungausgabe rückgesetzt wird und eine Ausgabe von dem Benachrichtigungsbitspeicher als Benachrichtigungssignal gesendet wird; und die variable Filteranweisung (REF) eine spezielle Anweisung mit einer Soll-Eingangsrelaisnummer, irgendeiner einer Nummer des Datenregisters, das eine erforderliche Eingangsfilterkonstante und eine direkt eingestellte Konstante speichert, und einer Nummer des Hilfsrelais, das das Benachrichtigungssignal speichert, als Operanden ist und die Eingangsfilterkonstante als die Einstelldaten zu dem ersten Einstellregister des Vorwärts/Rückwärts-Zählers entsprechend der Eingangsrelaisnummer gesendet wird und das Hilfsrelais durch das Benachrichtigungssignal auf einer Ausführung der speziellen Anweisung hin betrieben wird.
  7. Programmierbare Steuerung nach Anspruch 4, wobei: die spezielle Einheit (130170) einen Karteninformationsspeicherungsspeicher (9000) enthält; der Systemspeicher (112A: 112B) ein Steuerprogramm enthält, das als ein Einstellanormalitäts-Detektionsmittel (905) dient; der Karteninformationsspeicherungsspeicher (9000) erste Identifikationsanschlussinformation zum Identifizieren speichert, ob eine Schnittstellenschaltung für logische Signale oder eine Schnittstellenschaltung für analoge Signale an dem ersten Port angeschlossen ist, und zweite Identifikationsanschlussinformation zum Identifizieren, ob die Schnittstellenschaltung für logische Signale oder die Schnittstellenschaltung für analoge Signale an das zweite Port angeschlossen ist, und dann, wenn die Schnittstellenschaltung für logische Signale angeschlossen ist, erste Signalanschlussinformation und zweite Signalanschlussinformation, jeweils zum Identifizieren, ob die Schnittstellenschaltung für logische Signale niedriger Geschwindigkeit oder für logische Signale hoher Geschwindigkeit dient, der Karteninformationsspeicherungsspeicher (9000) an die CPU-Einheit (110A: 110B) durch den Datenbus angeschlossen ist, um zuzulassen, dass der Inhalt des Karteninformationsspeicherungsspeichers durch den Mikroprozessor gelesen wird; und das Einstellanormalitäts-Detektionsmittel (905) detektiert, dass Typen der I/O-Schnittstellenschaltungen, die an das erste Port und das zweite Port angeschlossen sind, und ein Inhalt der im Programmspeicher gespeicherten Anweisung nicht miteinander übereinstimmen, um den Betrieb zu stoppen und eine Mitteilung einer Anormalität durchzuführen.
  8. Programmierbare Steuerung nach Anspruch 2, wobei: das integrierte Schaltungselement (20) ein erstes Mehrkanalport (21) mit einem ersten Moden-Umschaltanschluss (28a) und ein zweites Mehrkanalport (22) mit einem zweiten Moden-Umschaltanschluss (28b) enthält; und ein Paar der Logikschaltungseinheiten (1100n: 1200n) entsprechend jeder Kanalnummer (n); das erste Port (21) ein I/O-Port ist, das an irgendeinen eines Eingangsanschlusses und eines Ausgangsanschlusses zur Verbindung mit einer außerhalb des integrierten Schaltungselements vorgesehenen externen Vorrichtung durch irgendeine einer Eingangsschnittstellenschaltung und einer Ausgangsschnittstellenschaltung angeschlossen ist; ob das erste Port (21) als Eingangsport oder Ausgangsport verwendet wird, basierend auf einer logischen Pegeleingabe zu dem ersten Moden-Umschaltanschluss ausgewählt und bestimmt wird; das zweite Port (22) ein I/O-Port ist, das an irgendeinen eines Eingangsanschlusses und eines Ausgangsanschlusses zur Verbindung mit einer außerhalb des integrierten Schaltungselements vorgesehenen externen Vorrichtung durch irgendeine einer Eingangsschnittstellenschaltung und einer Ausgangsschnittstellenschaltung angeschlossen ist; ob das zweite Port (22) als Eingangsport oder Ausgangsport verwendet wird, basierend auf einer logischen Pegeleingabe zu dem zweiten Moden-Umschaltanschluss ausgewählt und bestimmt wird; ob das Paar von Logikschaltungseinheiten (1100n: 1200n) eine Hochgeschwindigkeits-Zählerschaltung für ein von der Eingangsschnittstellenschaltung zugeführtes Eingangssignal bildet, um irgendeine einer Hochgeschwindigkeits-Eingabeverarbeitung und einer analogen Eingabeverarbeitung zum Senden einer Aufwärtszählausgabe zu der CPU-Einheit durchzuführen, oder das Paar von Logikschaltungseinheiten eines Hochgeschwindigkeits-Pulsausgangsschaltung basierend auf den von der CPU-Einheit empfangenen Einstelldaten bildet, um irgendeine einer Hochgeschwindigkeits-Ausgabeverarbeitung und einer analogen Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung durchzuführen, gemäß dem Inhalt der in dem im Programmspeicher gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt wird; und jede des Paar von Logikschaltungseinheiten (1100n: 1200n) den Vorwärts/Rückwärts-Zähler (2100n: 2200n), das Einstellregister (3100n: 3200n), das Berechnungsregister (4100n: 4200n), den Befehls-Latch-Speicher (6100n: 6200n), eine Vergleichsschaltung (5100n: 5200n), den Benachrichtigungsbitspeicher (7100n: 7200n) und den Parameterspeicher (8100n: 8200n) entsprechend jeder Kanalnummer n enthält.
  9. Programmierbare Steuerung nach Anspruch 8, wobei: die Logikschaltungseinheit (1100n: 1200n) irgendeine einer Eingangsschaltung für allgemeine Zwecke (1110n: 1210n) und einer Ausgangsschaltung für allgemeine Zwecke (1290n: 1190n) entsprechend jeder der Kanalnummern enthält; die Eingangsschaltung für allgemeine Zwecke (1110n: 1210n) eine Eingangssignal-Relaisschaltung zum Senden eines logischen Eingangssignals, das mit irgendeinem des ersten Ports (21) und des zweiten Ports (22) verbunden ist, zu dem in dem Vorrichtungsspeicher (114a) zugeteilten Eingangsabbildungsspeicherbereich durch den Benachrichtigungsbitspeicher (7101n: 7201n) ist, wobei der Transfer von dem Benachrichtigungsbitspeicher zu dem Eingangsabbildungsspeicher durch ein Eingabeverarbeitungsmittel (911) entsprechend dem im Systemspeicher (112C) gespeicherten Steuerprogramm ausgeführt wird; die Ausgangsschaltung für allgemeine Zwecke (1290n: 1190n) eine Ausgangssignal-Relaisschaltung zum Ausgeben eines durch den Befehls-Latch-Speicher (6200n: 6100n), der in der Logikschaltungseinheit vorgesehen ist, empfangenen Befehlssignals von dem Ausgangsabbildungsspeicherbereich, der in dem Vorrichtungsspeicher (114a) zugeteilt ist, zu der Ausgangsschaltung (249Y; 259Y), die an irgendeines des ersten Ports (21) und des zweiten Ports (22) angeschlossen ist, wobei der Transfer von dem Ausgangsabbildungsspeicher zu dem Befehls-Latch-Speicher durch ein Ausgabeverarbeitungsmittel (923) entsprechend dem im Systemspeicher (112C) gespeicherten Steuerprogramm ausgeführt wird; und die Eingangsschaltung für allgemeine Zwecke (1110n: 1210n) und die Ausgangsschaltung für allgemeine Zwecke (1290n: 1190n) freigegeben werden, wenn die Logikschaltungseinheit weder als Hochgeschwindigkeits-I/O-Schaltung noch als analoge I/O-Schaltung verwendet wird.
  10. Programmierbare Steuerung nach Anspruch 9, wobei: die Eingangsschaltung für allgemeine Zwecke eine variable Filterschaltung (1110n: 1210n) entsprechend jeder Kanalnummer enthält; der Systemspeicher (112C) ein Steuerprogramm enthält, das als Anfangseinstellmittel (931) dient; die variable Filterschaltung (1110n: 1210n) einen Vorwärts/Rückwärts-Zähler (2100n: 2200n) zum Vorwärts/Rückwärts-Zählen eines vorbestimmten Taktsignals gemäß einem logischen Pegel eines Eingangssignals und einen Benachrichtigungsbitspeicher (7101n: 7201n), der als Eingangsbestimmungsschaltung dient, enthält; das erste Einstellregister (3101n: 3201n) eine als die Einstelldaten empfangene Filterkonstante speichert und die Aufwärtszählausgabe erzeugt, um eine Aufwärtszähloperation zu stoppen, wenn ein Wert des Registers für einen aktuellen Wert sich erhöht, um den Einstellwert in dem ersten Einstellregister zu erreichen, und eine Rücksprungausgabe anstelle der Aufwärtszählausgabe erzeugt, um eine Abwärtszähloperation zu stoppen, wenn der aktuelle Wert des Registers für einen aktuellen Wert sich erniedrigt, um Null zu sein; der Benachrichtigungsbitspeicher (7101n: 7201n) durch die Aufwärtszählausgabe eingestellt und durch die Rücksprungausgabe rückgesetzt wird und eine Ausgabe von dem Benachrichtigungsbitspeicher zu dem Eingangsabbildungsspeicherbereich in dem Vorrichtungsspeicher durch das Eingabeverarbeitungsmittel gesendet wird; das Anfangseinstellmittel (931) auf einen Start eines Betriebs der programmierbaren Steuerung hin fungiert, um nach einem Vorhandensein einer variablen Filteranweisung im Programmspeicher zu suchen, und eine vorbestimmte Filterkonstante, die als Referenz dient, zu dem ersten Einstellregister für das Eingangssignal sendet, für welches die variable Filteranweisung nicht verwendet wird; und die variable Filteranweisung (REF) eine spezielle Anweisung mit einer Nummer eines Soll-Eingangsrelais und irgendeiner einer Nummer des Datenregisters, das die erforderliche Eingangsfilterkonstante als die Einstelldaten und eine direkt eingestellte Konstante als Operanden speichert, ist, wobei die Einstelldaten zu dem ersten Einstellregister entsprechend der Eingangsrelaisnummer auf eine Ausführung der speziellen Anweisung hin gesendet werden.
  11. Programmierbare Steuerung nach Anspruch 8, wobei: das integrierte Schaltungselement (20) ein erstes Gatterelement (25n) und ein zweites Gatterelement (27n) entsprechend jeder Kanalnummer und eine minimale Filtereinstellschaltung (52) enthält und eine Monitor- bzw. Überwachungsleseanweisung (EXRD) im Programmspeicher (113C) speichert; das erste Gatterelement (25n) zwischen einem Ausgangsanschluss der Logikschaltungseinheit und dem ersten Port angeschlossen ist, während das zweite Gatterelement (27n) zwischen dem Ausgangsanschluss der Logikschaltungseinheit und dem zweiten Port angeschlossen ist, wobei das erste Gatterelement und das zweite Gatterelement eine Vielzahl von Gatterelementen zum Blockieren von jedem der Ausgangssignale gemäß logischen Pegeln des ersten Moden-Umschaltanschlusses und des zweiten Moden-Umschaltanschlusses sind, wobei das erste Gatterelement und das zweite Gatterelement zum Blockieren des Ausgangssignals dienen, wenn die Eingangsschnittstellenschaltung an das erste Port und das zweite Port angeschlossen ist, und zum Freigeben des Ausgangssignals, wenn die Ausgangsschnittstellenschaltung an das erste Port und das zweite Port angeschlossen ist; die minimale Filtereinstellschaltung (52) funktioniert bzw. arbeitet, wenn die Ausgangsschnittstellenschaltung an das erste Port und das zweite Port angeschlossen ist, um das Ausgangssignal von dem ersten Gatterelement und dem zweiten Gatterelement freizugeben, um dadurch das Ausgangssignal im Benachrichtigungsbitspeicher ohne durch die Filterschaltung zu speichern; und die Überwachungsleseanweisung (EXRD) eine spezielle Anweisung mit Operanden zum Bestimmen einer Nummer des Ausgangsrelais und einer Transferzielortvorrichtungsnummer von dem Vorrichtungsspeicher (114) ist, wobei die Überwachungsleseanweisung zum Lesen eines Inhalts des Benachrichtigungsbitspeichers (7102n: 7202n) dient, der durch die minimale Filtereinstellschaltung eingegeben ist, als Benachrichtigungssignal.
  12. Programmierbare Steuerung nach Anspruch 8, wobei: die spezielle Einheit (230250: 260B) einen Karteninformationsspeicherungsspeicher (9000) hat; der Systemspeicher (112C: 112D) ein Steuerprogramm enthält, das als Einstellanormalitäts-Detektionsmittel (905) dient; der Karteninformationsspeicherungsspeicher (9000) wenigstens eine einer logischen Information des ersten Moden-Umschaltanschlusses und des zweiten Moden-Umschaltanschlusses enthält, welche anzeigt, ob ein jeweiliges des ersten Ports und des zweiten Ports als Eingangsport oder Ausgangsport eingestellt ist, und einer logischen Information des ersten Identifikationsanschlusses und des zweiten Identifikationsanschlusses zum Identifizieren, ob die I/O-Schnittstellenschaltung eine Logiksignalschaltung oder eine analoge Signalschaltung ist; der Karteninformationsspeicherungsspeicher (9000) an die CPU-Einheit durch den Datenbus angeschlossen ist, um zuzulassen, dass ein Inhalt des Karteninformationsspeicherungsspeichers durch den Mikroprozessor gelesen wird; und das Einstellanormalitäts-Detektionsmittel (905) detektiert, dass ein Typ der an das erste Port und das zweite Port angeschlossenen I/O-Schnittstellenschaltung und ein Inhalt der im Programmspeicher gespeicherten Anweisung nicht miteinander übereinstimmen, um den Betrieb zu stoppen und eine Mitteilung einer Anormalität durchzuführen.
  13. Programmierbare Steuerung nach Anspruch 2, wobei: das integrierte Schaltungselement (30) ein erstes Mehrkanalport (31), ein zweites Mehrkanalport (32) und ein Paar von Logikschaltungseinheiten (1100n: 1200n) entsprechend jeder Kanalnummer (n) enthält; das erste Port (31) an einen Eingangsanschluss zur Verbindung mit einer außerhalb des integrierten Schaltungselements (30) vorgesehenen externen Vorrichtung durch eine Eingangsschnittstellenschaltung für logische Signale oder für analoge Signale angeschlossen ist; das zweite Port (32) an einen Eingangsanschluss zur Verbindung mit einer außerhalb des integrierten Schaltungselements (30) vorgesehenen externen Vorrichtung durch eine Ausgangsschnittstellenschaltung für logische Signale oder für analoge Signale angeschlossen ist; ob das Paar von Logikschaltungseinheiten (1100n: 1200n) eine Hochgeschwindigkeits-Zählerschaltung für ein von der Eingangsschnittstellenschaltung zugeführtes Eingangssignal bildet, um irgendeine einer Hochgeschwindigkeits-Eingabeverarbeitung und einer analogen Eingabeverarbeitung zum Senden einer Aufwärtszählausgabe zu der CPU-Einheit durchzuführen, oder das Paar von Logikschaltungseinheiten eine Hochgeschwindigkeits-Ausgangsschaltung basierend auf den von der CPU-Einheit empfangenen Einstelldaten bildet, um irgendeine einer Hochgeschwindigkeits-Ausgabeverarbeitung und einer analogen Ausgabeverarbeitung zum Zuführen einer vorbestimmten Pulsausgabe zu der Ausgangsschnittstellenschaltung durchzuführen, gemäß dem Inhalt der in dem im Programmspeicher gespeicherten Steuerprogramm enthaltenen speziellen Anweisung bestimmt wird; jede des Paar von Logikschaltungseinheiten (1100n: 1200n) den Vorwärts/Rückwärts-Zähler (2100n: 2200n), das Einstellregister (3100n: 3200n), das Berechnungsregister (4100n: 4200n), den Befehls-Latch-Speicher (6100n: 6200n), eine Vergleichsschaltung (5100n: 5200n), den Benachrichtigungsbitspeicher (7100n: 7200n) und den Parameterspeicher (8100n: 8200n) entsprechend jeder Kanalnummer enthält; und das Paar von Vorwärts/Rückwärts-Zählern (2100n: 2200n) abhängig miteinander verbunden sind, um einen einzigen Vorwärts/Rückwärts-Zähler doppelter Länge (2000n) zu bilden, wenn die spezielle Anweisung eine Anweisung doppelter Länge ist.
  14. Programmierbare Steuerung nach Anspruch 13, wobei: die spezielle Einheit (340) einen Karteninformationsspeicherungsspeicher (9000) hat; der Systemspeicher (112E) ein Steuerprogramm enthält, das als ein Einstellanormalitäts-Detektionsmittel (905) dient; der Karteninformationsspeicherungsspeicher (9000) erste Identifikationsanschlussinformation (34a) zum Identifizieren, ob die Schnittstellenschaltung für logische Signale oder die Schnittstellenschaltung für analoge Signale an das erste Port (31) angeschlossen ist, und zweite Identifikationsanschlussinformation (34b) zum Identifizieren, ob die Schnittstellenschaltung für logische Signale oder die Schnittstellenschaltung für analoge Signale an das zweite Port (32) angeschlossen ist, enthält; der Karteninformationsspeicherungsspeicher (9000) an die CPU-Einheit (111E) durch den Datenbus angeschlossen ist, um zuzulassen, dass ein Inhalt des Karteninformationsspeicherungsspeichers durch den Mikroprozessor gelesen wird; und das Einstellanormalitäts-Detektionsmittel (905) detektiert, dass ein Typ der an das erste Port (31) und das zweite Port (32) angeschlossenen I/O-Schnittstellenschaltung und ein Inhalt der im Programmspeicher (113E) gespeicherten Anweisung nicht miteinander übereinstimmen, um den Betrieb zu stoppen und eine Mitteilung einer Anormalität durchzuführen.
  15. Programmierbare Steuerung nach Anspruch 3, wobei: wenigstens einer der Vorwärts/Rückwärts-Zähler (2000n; 2100n: 2200n; 2100n: 2200n), für die Logikschaltungseinheit (1000n; 1100n: 1200n; 1100n: 1200n) vorgesehen sind, ein Standby-Pufferregister (4004n; 4104n: 4204n; 4104n: 4204n) enthält; das Standby-Pufferregister (4004n; 4104n: 4204n; 4104n: 4204n) von dem Pufferspeicher (114b) gesendete numerische Daten temporär speichert und ein Inhalt des Standby-Pufferregisters zu irgendeinem des ersten Einstellregisters (3001n; 3101n: 3201n; 3101n: 3201n) und des zweiten Einstellregisters (3002n; 3102n: 3202n; 3102n: 3202n) basierend auf einem von der Logikschaltungseinheit (1000n; 1100n: 1200n; 1100n: 1200n) erzeugten Zeitgabesignal transferiert wird; und ob die von dem Pufferspeicher (114b) gesendeten numerischen Daten zu dem ersten Einstellregister und dem zweiten Einstellregister mit einem Zeitunterschied durch das Standby-Pufferregister transferiert werden oder direkt zu dem ersten Einstellregister und dem zweiten Einstellregister ohne durch das Standby-Pufferregister transferiert werden, basierend auf dem Inhalt der speziellen Anweisung bestimmt wird.
  16. Programmierbare Steuerung nach Anspruch 3, wobei: der Systemspeicher (112A: 112B; 112C: 112D; 112E) ein Steuerprogramm enthält, das als Transferverhinderungsmittel (920) dient, das während eines Betriebs der programmierbaren Steuerung (100A: 100B; 100C: 100D; 100E) ausgeführt wird; wenn die an die spezielle Einheit (130180; 230250: 260B; 340) angelegte spezielle Anweisung eine Anweisung zum Erzeugen eines Betriebsbeendigungssignals ist, das Transferverhinderungsmittel (920) ein Senden der Einstelldaten wenigstens zu dem ersten Einstellregister (3001n; 3101n: 3201n; 3101n: 3201n) und dem zweiten Einstellregister (3002n; 3102n: 3202n; 3102n: 3202n) ab dem Start einer Ausführung der speziellen Anweisung, bis das Betriebsbeendigungssignal erhalten wird, verhindert; und das Betriebsbeendigungssignal durch Lesen des Inhalts des Benachrichtigungsbitspeichers (7000n; 7100n: 7200n; 7100n: 7200n) erhalten wird, wenn irgendeines der Anzahl von zu dem ersten Port (11; 21; 31) eingegebenen Pulssignale und der Anzahl von von dem zweiten Port (12; 22; 32) erzeugten Pulssignalen eine voreingestellte Sollanzahl von Pulsen erreicht oder die Erzeugung/das Zählen der Pulse durch das Befehlssignale beendet wird.
  17. Programmierbare Steuerung nach Anspruch 16, wobei: wenigstens einer der Vorwärts/Rückwärts-Zähler (2000n; 2100n: 2200n; 2100n: 2200n), die zu der Logikschaltungseinheit (1000n; 1100n: 1200n; 1100n: 1200n) vorgesehen sind, ein Variations-Einstellregister (4003n; 4103n: 4203n; 4103n: 4203n) enthält; und das Variations-Einstellregister (4003n; 4103n: 4203n; 4103n: 4203n) auf ein Anlegen einer Aufwärts/Abwärts-Zähleingabe an den Vorwärts/Rückwärts-Zähler hin arbeitet bzw. funktioniert, um einen in dem Variations-Einstellregister (4003n; 4103n: 4203n; 4103n: 4203n) gespeicherten Wert zu/von dem Wert des Registers für einen aktuellen Wert (4001n; 4101n: 4201n; 4101n: 4201n) zu addieren oder zu subtrahieren.
  18. Programmierbare Steuerung nach Anspruch 16, wobei: die Logikschaltungseinheit (1000n) eine Hochgeschwindigkeits-Zählerschaltung (1030n: 1040m) enthält, die in Reaktion auf eine im Programmspeicher (113A) gespeicherte Hochgeschwindigkeits-Zähleranweisung (HSC) arbeitet; die Hochgeschwindigkeits-Zählerschaltung (1030n: 1040m) irgendeiner eines 1-Phasen-1-Eingangs-Vorwärts/Rückwärts-Zählers, dessen Zählrichtung durch das Befehlssignal bestimmt wird, eines 1-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, zu welchem eine Aufwärtszähleingabe und eine Abwärtszähleingabe individuell zugeführt werden, und eines 2-Phasen-2-Eingangs-Vorwärts/Rückwärts-Zählers, dessen Aufwärts/Abwärts-Richtung durch eine Phasendifferenz zwischen zweiphasigen Eingaben bestimmt wird, ist; als ein Betriebsmode der Hochgeschwindigkeits-Zählerschaltung (130n: 1040m) die Hochgeschwindigkeits-Zählerschaltung ein Zählen auf einer Ausführung der Hochgeschwindigkeits-Zähleranweisung hin startet, die Hochgeschwindigkeits-Zählerschaltung mit einer Zählstartbefehlseingabe versehen ist oder die Hochgeschwindigkeits-Zählerschaltung mit einer voreingestellten Befehlseingabe zum Transferieren von Anfangswertdaten zu dem Register für einen aktuellen Wert versehen ist und die 2-Phasen-2-Eingangs-Hochgeschwindigkeits-Zählerschaltung irgendeines einer Einzelflankenauswertung, einer Doppelflankenauswertung und einer Vierfachflankenauswertung als Zählmode in Abhängigkeit davon hat, ob ein Zählen bei einer Anstiegsflanke oder einer Abfallflanke des Pulssignals bei jeder Phase durchgeführt wird, wobei die Hochgeschwindigkeits-Zählerschaltung mit einer eindeutigen Identifikationsnummer versehen ist; die Identifikationsnummer eine mehrziffrige Nummer ist, die aus einer Kombination einer Platzierungsnummer besteht, die eine Position eines Anschlusses der speziellen Einheit mit der Hochgeschwindigkeits-Zählerschaltung anzeigt, und einer Erweiterungsnummer zum Identifizieren einer Kanalnummer, die eine Eingangsanschlussnummer der speziellen Einheit anzeigt und einem jeweiligen der Betriebsmoden entspricht; die Hochgeschwindigkeits-Zähleranweisung eine spezielle Anweisung mit Operanden zum Bestimmen einer Identifikationsnummer bzw. -zahl der Soll-Hochgeschwindigkeits-Zählerschaltung, irgendeiner einer Zahl bzw. Nummer D des Datenregisters, das eine Soll-Zählnummer zum Erzeugen der Aufwärtszählausgabe und einer direkt eingestellten Konstanten K speichert, einer Nummer M des Hilfsrelais zum Bestimmen einer Zählrichtung in dem Fall des 1-Phasen-1-Eingangs-Zählers und einer Nummer C des Zählers, der die Aufwärtszählausgabe speichert, ist; und auf eine Ausführung der speziellen Anweisung hin die Einstelldaten und ein Zählrichtungsbefehlssignal zu dem ersten Einstellregister entsprechend der Identifikationsnummer und zu dem Befehls-Latch-Speicher gesendet werden, um die Aufwärtszählausgabe als Zählbeendigungsbenachrichtigungssignal von dem Benachrichtigungsbitspeicher zu dem Vorrichtungsspeicher der bestimmten Zählernummer zu senden.
  19. Programmierbare Steuerung nach Anspruch 18, wobei: die Hochgeschwindigkeits-Zählerschaltung (1030n: 1040m) eine Hochgeschwindigkeits-Ausgabefunktion hat, die in Reaktion auf eine im Programmspeicher (113A) gespeicherte Hochgeschwindigkeits-Vergleichsanweisung (HCMP) arbeitet; die Hochgeschwindigkeits-Vergleichsanweisung (HCMP) eine spezielle Anweisung mit einer Identifikationsnummer der Soll-Hochgeschwindigkeits-Zählerschaltung, irgendeiner einer Nummer D des Datenregisters, das einen Vergleichssollwert und eine direkt eingestellte Konstante K speichert, und eine Nummer M des Hilfsrelais zum Speichern einer Vergleichsübereinstimmungsausgabe als Operanden ist; die spezielle Anweisung freigegeben wird, wenn das erste Port als das Hochgeschwindigkeits-Eingangsport verwendet wird und das zweite Port als ein logisches Ausgangsport verwendet wird; und auf eine Ausführung der speziellen Anweisung hin der Vergleichssollwert als die Einstelldaten zu dem zweiten Einstellregister des Vorwärts/Rückwärts-Zählers entsprechend der Identifikationsnummer gesendet wird, eine Aufwärtszählvergleichsübereinstimmungsausgabe entsprechend einem Vergleichsübereinstimmungsspeicherungssignal bei einer Aufwärtszähloperation der zweiten Vergleichsschaltung zu einem Ausgangsanschluss einer Kanalnummer entsprechend derjenigen einer Zähleingabe der Hochgeschwindigkeits-Zählerschaltung ausgegeben wird, die Aufwärtszählvergleichsübereinstimmungsausgabe das bestimmte Hilfsrelais M als Benachrichtigungssignal antreibt und das Hilfsrelais M angetrieben wird, um rückgesetzt zu werden, um die Aufwärtszählvergleichsübereinstimmungsausgabe rückzusetzen.
  20. Programmierbare Steuerung nach Anspruch 16, wobei: die Logikschaltungseinheit (1000n) eine erste Pulsausgabeschaltung (1060m) enthält, die jeder geraden oder ungeraden Kanalnummer zugeteilt ist; die erste Pulsausgabeschaltung (1060m) in Reaktion auf eine im Programmspeicher gespeicherte erste Pulsausgabeanweisung arbeitet und irgendetwas eines Paars von Pulsausgaben zum Erzeugen von irgendeiner einer Vorwärtspulsausgabe und einer Rückwärtspulsausgabe und eines Pulsausgabemodes, in welchem eine Drehrichtungsbefehlsausgabe zu einer Vorwärts/Rückwärts-Pulsausgabe hinzugefügt ist, als Betriebsmode hat; eine Pulsausgabeschaltung in jedem der Ausgabemoden eine eindeutige Identifikationsnummer hat, die zwei Vorwärts/Rückwärts-Zähler (200m: 200m+1) von benachbarten Kanälen besitzt, wobei einer der Vorwärts/Rückwärts-Zähler ein erstes Einstellregister (3001m) und ein zweites Einstellregister (3002m) enthält, zu welchen Konstanten proportional zu einem Pulszyklus niedriger Geschwindigkeit und einem Pulszyklus hoher Geschwindigkeit geschrieben werden, während ein weiterer Vorwärts/Rückwärts-Zähler ein erstes Einstellregister (3001m+1) und ein zweites Einstellregister (3002m+1) enthält, zu welchen Konstanten, die zu der Anzahl von bei einem Hochgeschwindigkeitsbetrieb erzeugten Pulsen und der Anzahl von bei einem Betrieb niedriger Geschwindigkeit erzeugten Pulsen gehören, geschrieben werden; die Identifikationsnummer eine mehrziffrige Nummer ist, die besteht aus einer Kombination einer Platzierungsnummer, die eine Position eines Anschlusses der speziellen Einheit anzeigt, die die erste Pulsausgabe enthält, und einer Erweiterungsnummer zum Identifizieren einer Kanalnummer, die eine Ausgangsanschlussnummer der speziellen Einheit anzeigt, wobei die Erweiterungsnummer einem jeweiligen der Betriebsmoden entspricht; die erste Pulsausgabeanweisung eine spezielle Anweisung mit einer Identifikationsnummer einer Soll-Pulsausgabeschaltung, einem Operanden zum Spezifizieren einer Nummer des Datenregisters, das eine Sollanzahl von zu erzeugenden Pulsen speichert, wobei die Sollanzahl gemäß einer Drehrichtung negativ oder positiv ist, der Nummer von Pulsen bei dem Betrieb niedriger Geschwindigkeit, eines Pulszyklus bei dem Betrieb hoher Geschwindigkeit und eines Pulszyklus bei dem Betrieb niedriger Geschwindigkeit, und einem Operanden zum Spezifizieren einer Nummer des Hilfsrelais, das einen Befehl für einen erzwungenen Stopp speichert, irgendeinen eines Vorwärtsdrehbegrenzungs-Stoppbefehls und eines Rückwärtsdrehungsbegrenzungs-Stoppbefehls, und ein Pulserzeugungsbeendigungssignal; und auf eine Ausführung der speziellen Anweisung hin die Sollanzahl von zu erzeugenden Pulsen, die Anzahl von Pulsen bei dem Betrieb niedriger Geschwindigkeit, der Pulszyklus bei dem Betrieb hoher Geschwindigkeit und der Pulszyklus bei dem Betrieb niedriger Geschwindigkeit als Einstelldaten gesendet werden und der Drehrichtungsbefehl, der Befehl für einen erzwungenen Stopp und irgendeiner des Vorwärtsdrehungsbegrenzungs-Stoppbefehls und des Rückwärtsdrehungsbegrenzungs-Stoppbefehls als Befehlssignal zu dem ersten Einstellregister und dem zweiten Einstellregister des Vorwärts/Rückwärts-Zählers entsprechend der Identifikationsnummer und dem Befehls-Latch-Speicher gesendet werden, um das Pulserzeugungsbeendigungssignal als Benachrichtigungssignal von dem Benachrichtigungsbitspeicher zu dem bestimmten Hilfsrelais M zu senden.
  21. Programmierbare Steuerung nach Anspruch 17, wobei: die Logikschaltungseinheit (1000n) eine zweite Pulsausgabeschaltung (1070·0: 1070·4) enthält, die in Reaktion auf eine im Programmspeicher gespeicherte zweite Pulsausgabeanweisung arbeitet; die zweite Pulsausgabeschaltung (1070·0: 1070·4) irgendeinen eines Pulsausgabemodes mit einem Paar von Pulsausgaben zum Erzeugen von irgendeiner einer Vorwärtspulsausgabe und einer Rückwärtspulsausgabe und eines Pulsausgabemodes, bei welche eine Drehrichtungsbefehlsausgabe zu einer Vorwärts/Rückwärts-Pulsausgabe hinzugefügt ist, als Betriebsmode hat, eine Pulsausgabeschaltung in jedem der Moden wenigstens ein Einstellregister für die Anzahl erzeugter Pulse hat, ein Einstellregister für eine Pulsfrequenz und ein Einstellregister für eine Beschleunigungs/Abbrems-Geschwindigkeit, und mit einer eindeutigen Identifikationsnummer zum Besetzen von vier Vorwärts/Rückwärts-Zählern entsprechend zwei Eingängen und drei Ausgängen versehen ist; die zweite Pulsausgabe (1070·0: 1070·4) einen Vorwärts/Rückwärts-Zähler (2002·2: 2000·6) mit einer Addierfunktion enthält, die eine Addition eines in dem Variations-Einstellregister (4003·2: 4006·6) gespeicherten Werts zu einem Wert des Registers für einen aktuellen Wert (4001·2: 4001·6) auf ein Anlegen einer Aufwärtszähleingabe hin ermöglicht, und eine Speicherung eines vorbestimmten Koeffizientenwerts im ersten Einstellregister des Vorwärts/Rückwärts-Zählers und einer Soll-Pulsfrequenz im Variations-Einstellregister zulässt, das eine Aufwärtszählausgabe in einem Zyklus umgekehrt proportional zu der Pulsfrequenz erhalten wird, um eine Aufwärtszählausgabe entsprechend dem Soll-Pulszyklus zu erhalten, indem das Register für einen aktuellen Wert mit der Erzeugung der Aufwärtszählausgabe rückgesetzt wird; die Identifikationsnummer eine mehrziffrige Nummer ist, die besteht aus einer Kombination einer Platzierungsnummer, die eine Position eines Anschlusses der speziellen Einheit anzeigt, die die zweite Pulsausgabeschaltung enthält, und einer Erweiterungsnummer zum Identifizieren einer Kanalnummer, die eine Ausgangsanschlussnummer der speziellen Einheit anzeigt, wobei die Erweiterungsnummer einem jeweiligen der Betriebsmoden entspricht; die zweite Pulsausgabeanweisung eine spezielle Anweisung ist, die eine Operanden zum Spezifizieren einer Identifikationsnummer einer Soll-Pulsausgabeschaltung hat, einen Operanden zum Spezifizieren einer Nummer D des Datenregisters, das eine Sollanzahl von zu erzeugenden Pulsen speichert, wobei die Sollanzahl positiv oder negativ gemäß einer Drehrichtung ist, und von irgendeinem eines Pulszyklus und einer Pulsfrequenz, einen Operanden zum Spezifizieren der Nummer D des Datenregisters, das Daten zum Einstellen der Beschleunigungs/Abbrems-Geschwindigkeit speichert, und einen Operanden zum Spezifizieren einer Nummer M des Hilfsrelais, das einen Befehl für einen erzwungenen Stopp speichert, irgendeinen eines Vorwärtsdrehungsbegrenzungs-Stoppbefehls und eines Rückwärtsdrehungsbegrenzungs-Stoppbefehls und eines Pulserzeugungsbeendigungssignals; und auf eine Ausführung der speziellen Anweisung hin die Sollanzahl von zu erzeugenden Pulsen, die Beschleunigungs/Abbrems-Geschwindigkeitsdaten, die Soll-Pulsfrequenz und Abbremsstartpositionsdaten als Einstelldaten gesendet werden und der Drehrichtungsbefehl, der Befehl für einen erzwungenen Stopp und irgendeiner des Vorwärtsdrehungsbegrenzungs-Stoppbefehls und des Rückwärtsdrehungsbegrenzungs-Stoppbefehls als Befehlssignal zu dem ersten Einstellregister und dem zweiten Einstellregister von jedem der Vorwärts/Rückwärts-Zähler entsprechend der Identifikationsnummer und dem Befehls-Latch-Speicher gesendet werden, um das Pulserzeugungsbeendigungssignal als ein Benachrichtigungssignal von dem Benachrichtigungsbitspeicher zu dem bestimmten Hilfsrelais M zu senden.
  22. Programmierbare Steuerung nach Anspruch 21, wobei: die Logikschaltungseinheit (1000n) eine modifizierte Pulsausgabeschaltung (1080·0: 1080·4) hat, die durch teilweises Modifizieren der zweiten Pulsausgabeschaltung (1070·0: 1070·4) erhalten wird, die modifizierte Pulsausgabeschaltung (1080·0: 1080·4) mit einem im Programmspeicher (113A) gespeicherten Positionierungs-I/O-Signal versehen ist, um in Reaktion auf eine Anweisung für ein Zurückkehren zu Null zu arbeiten; der Systemspeicher (112A) ein Steuerprogramm enthält, das als Parameteränderungsmittel (918) dient, zum Erhalten der modifizierten Pulsausgabeschaltung (1080·0: 1080·4); das Positionierungs-Eingangssignal ein Nahstellenklemmzapfensignal hat, das in einer Nähe einer Nullstelle arbeitet, und ein Nullstellensignal, das einem Servomotor geliefert wird, der durch die Pulsausgabe angetrieben wird, zu welchem ein Z-Phasensignal zum Erzeugen einer Ausgabe von einem Puls für jede Umdrehung des Servomotors eingegeben wird; das Positionierungs-Ausgangssignal ein Löschsignal zum Rücksetzen eines Restpulses einer Positionierungsabweichung eines Servoverstärkers zum Antreiben des Servomotors bei der Beendigung eines Zurückkehrens zu Null hat; die Anweisung für ein Zurückkehren zu Null eine spezielle Anweisung ist, die eine Identifikationsnummer einer modifizierten Soll-Pulsausgabeschaltung hat, einen Operanden zum Spezifizieren einer Nummer D des Datenregisters, das wenigstens irgendetwas von einer Pulsfrequenz hoher Geschwindigkeit und einem Pulszyklus für ein Zurückkehren zu Null, irgendetwas von einer Pulsfrequenz niedriger Geschwindigkeit und einem Pulszyklus für eine Kriechoperation in der Nähe der Nullstelle, Beschleunigungs/Abbrems-Geschwindigkeitseinstelldaten und der Nummer von Nullstellensignalen speichert, und einen Operanden zum Spezifizieren einer Nummer M des Hilfsrelais, das einen Richtungsbefehl für ein Zurückkehren zu Null, einen Befehl für einen erzwungenen Stopp, irgendetwas von einem Vorwärtsdrehungsbegrenzungs-Stoppbefehl und einem Rückwärtsdrehungsbegrenzungs-Stoppbefehl und ein Beendigungssignal für ein Zurückkehren zu Null speichert; auf eine Ausführung der speziellen Anweisung hin die Pulsfrequenz für einen Betrieb hoher Geschwindigkeit, die Pulsfrequenz für einen Kriechbetrieb niedriger Geschwindigkeit, die Beschleunigungs/Abbrems-Geschwindigkeitseinstelldaten, die Anzahl von Nullstellensignalen als Einstelldaten gesendet werden, während der Richtungsbefehl für ein Zurückkehren zu Null, der Befehl für einen erzwungenen Stopp, irgendetwas von dem Vorwärtsdrehungsbegrenzungs-Stoppbefehl und dem Rückwärtsdrehungsbegrenzungs-Stoppbefehl als Befehlssignal zu dem ersten Einstellregister und dem zweiten Einstellregister von jedem der Vorwärts/Rückwärts-Zähler entsprechend der Identifikationsnummer und den Befehls-Latch-Speicher gesendet werden, um das Beendigungssignal für ein Zurückkehren zu Null aus Benachrichtigungssignal von dem Benachrichtigungsbitspeicher zu dem bestimmten Hilfsrelais M zu senden; und das Parameteränderungsmittel (918) die I/O-Schaltung von dem letzten Vorwärts/Rückwärts-Zähler modifiziert, der die Anzahl erzeugter Pulse in Reaktion auf die zweite Pulsausgabeanweisung gezählt hat, um den Vorwärts/Rückwärts-Zähler als den letzten Vorwärts/Rückwärts-Zähler zum Zählen der Anzahl von Nullstellensignalen in Reaktion auf die Anweisung für ein Zurückkehren zu Null zu verwenden, die Änderung bezüglich eines Anschlusses für eine begrenzte Periode ab dem Start einer Ausführung der Anweisung für ein Zurückkehren zu Null bis zu der Beendigung davon freigegeben wird und normalerweise reproduzierbar auf eine Verbindungsschaltung für die zweite Pulsausgabeschaltung eingestellt wird.
  23. Programmierbare Steuerung nach Anspruch 20, wobei: jede der ersten Pulsausgabeschaltung und der zweiten Pulsausgabeschaltung (1060m: 1070·0: 1070·4) mit einem Überwachungsmittel versehen ist, das eine im Programmspeicher (113A) gespeicherte Leseanweisung für eine aktuelle Position verwendet; die Leseanweisung für eine aktuelle Position eine spezielle Anweisung ist, die einen Operanden zum Spezifizieren einer Identifikationsnummer einer Soll-Pulsausgabeschaltung und einen Operanden zum Spezifizieren einer Nummer D des Datenregisters, das Information für aktuelle Position in Bezug auf irgendeine einer Vorwärtsdrehungsbegrenzungsposition, einer Rückwärtsdrehungsbegrenzungsposition und einer Nullstellenposition speichert, hat; und auf eine Ausführung der speziellen Anweisung hin ein Inhalt des Registers für einen aktuellen Wert, das Pulsausgabeinformation der Pulsausgabeschaltung entsprechend der Identifikationsnummer nach einer Beendigung einer Bewegung speichert, als Berechnungsdaten gesendet wird, um die Berechnungsdaten sequentiell algebraisch zu dem Datenregister D gemäß einer Bewegungsrichtung zu addieren, und vorbestimmte Anfangspositionsdaten im Voraus bei einer Referenzposition geschrieben werden, die irgendetwas der Nullstellenposition und der Vorwärts/Rückwärtsdrehungsbegrenzungsposition enthält, und zwar in dem Datenregister D durch ein sequentielles Programm.
  24. Programmierbare Steuerung nach Anspruch 23, wobei: eine dritte Pulsausgabeanweisung (ABS) an die erste Pulsausgabeschaltung und die zweite Pulsausgabeschaltung (1060m: 1070·0: 1070·4) anstelle der ersten Pulsausgabeanweisung und der zweiten Pulsausgabeanweisung, die Programmspeicher gespeichert sind, angelegt wird; die dritte Pulsausgabeanweisung (ABS) eine Soll-Bewegungsposition anstelle eines Sollausmaßes einer Bewegung, das durch die erste Pulsausgabeanweisung (PLS) und die zweite Pulsausgabeanweisung (DRV) bestimmt ist, bestimmt; und das Daten-Umwandlungs/Transfer-Mittel (921) ein aktuelles Sollausmaß einer Bewegung basierend auf einer Abweichung zwischen einer aktuellen Position, die durch die Leseanweisung für eine aktuelle Position detektiert und gespeichert ist, und der Soll-Bewegungsposition berechnet, um das Soll-Ausmaß einer Bewegung durch den Pufferspeicher zu dem ersten Einstellregister und dem zweiten Einstellregister zu senden.
  25. Programmierbare Steuerung nach Anspruch 16, wobei: die Logikschaltungseinheit (1000n) eine Pulsbreitenmessschaltung (1022n) enthält, die in Reaktion auf eine im Programmspeicher (113A) gespeicherte Pulsbreitenmessanweisung arbeitet; die Pulsbreitenmessschaltung (1022n) einen Vorwärts/Rückwärts-Zähler (2000n) zum Zählen eines Taktsignals in einem vorbestimmten Zyklus gemäß einem eingegebenen logischen Übergang des Kanalanschlusses (11n) enthält, der mit der Eingangsschnittstellenschaltung (239X) für logische Signale hoher Geschwindigkeit verbunden ist, und einen aktuellen Zählwert von einem Übergang der Eingangslogik zu einem nächsten Übergang in einem Spitzenhalteregister (4002n) speichert, um den aktuellen Zählwert als Berechnungsdaten (4022n) und ein Messbeendigungssignal als Benachrichtigungssignal (7022n) zu senden, und der Mikroprozessor (111) der das Benachrichtigungssignal (7022n) empfängt, das Messbeendigungssignal durch das Befehlssignal (6022n) zurücksetzt, so dass die Pulsbreitenmessschaltung die Messung der Pulsbreite erneut startet; die Pulsbreitenmessanweisung für die spezielle Einheit verwendet wird, mit welcher die Eingangsschnittstellenschaltung für logische Signale hoher Geschwindigkeit verbunden ist, und eine spezielle Anweisung ist, die eine Soll-Eingangsnummer X, eine Nummer D des Datenregisters, das das Ergebnis einer Messung speichert, und eine Nummer M des Hilfsregisters, das ein Messbeendigungssignal speichert, als Operanden hat; und auf eine Ausführung der speziellen Anweisung hin ein Inhalt des Spitzenhalteregisters als Berechnungsdaten zu dem Datenregister gesendet wird, um darin gespeichert zu werden, während das Messbeendigungssignal das Hilfsrelais M antreibt, um einen Betrieb des Hilfsrelais M rückzusetzen, um einen Befehl für ein erneutes Starten einer Messung zu dem Befehls-Latch-Speicher (6000n) durch ein Befehlssignal zu senden.
  26. Programmierbare Steuerung nach Anspruch 3, wobei: die Logikschaltungseinheit (1000n) eine Flankenerfassungsschaltung (1031n) enthält, die in Reaktion auf eine Flankenerfassungsanweisung (EDGE) arbeitet, die im Programmspeicher (113A) gespeichert ist; die Flankenerfassungsschaltung (1031n) einen Vorwärts/Rückwärts-Zähler für ein einzelnes Zählen enthält, der in Reaktion auf einen eingegebenen logischen Übergang des Kanalanschlusses arbeitet, der mit der Eingangsschnittstellenschaltung für logische Signale hoher Geschwindigkeit verbunden ist, um wenigstens eine einer Anstiegsflanke und einer Abfallflanke zu erfassen und zu speichern, um die erfasste Flanke als Benachrichtigungssignal zu senden, der Mikroprozessor, der das Benachrichtigungssignal empfängt, ein Erfassungsspeicherungssignal durch das Befehlssignal zurücksetzt, so dass die Flankenerfassungsschaltung eine nächste Flankenerfassung erneut startet; die Flankenerfassungsanweisung (EDGE) für die spezielle Einheit verwendet wird, mit welcher die Eingangsschnittstellenschaltung für logische Signale hoher Geschwindigkeit verbunden ist, und eine spezielle Anweisung ist, die eine Soll-Eingangsnummer X und eine Nummer M des Hilfsrelais, das das Ergebnis einer Erfassung speichert, als Operanden hat; auf eine Ausführung der speziellen Anweisung hin, ein Wert, der 1 übersteigt, in dem ersten Einstellregister des Vorwärts/Rückwärts-Zählers gespeichert wird, während ein Einstellwert von 1 in dem zweiten Einstellregister gespeichert wird, und die Anstiegsflanke durch eine Aufwärtszählvergleichsübereinstimmungsausgabe zum Speichern einer Vergleichsübereinstimmung während einer Aufwärtszähloperation der zweiten Vergleichsschaltung erfasst wird und die Erzeugung der Aufwärtszählvergleichsübereinstimmungsausgabe eine Zählrichtung und eine Zähleingangslogik invertiert; die Abfallflanke durch eine Abwärtszählvergleichsübereinstimmungsausgabe zum Speichern einer Vergleichsübereinstimmung während einer Abwärtszähloperation der zweiten Vergleichsschaltung erfasst wird; und die Aufwärtszählvergleichsübereinstimmungsausgabe und die Abwärtszählvergleichsübereinstimmungsausgabe als Benachrichtigungssignal zu dem Hilfsrelais M gesendet werden, um den Betrieb des Hilfsrelais M zurückzusetzen, um einen Befehl für ein erneutes Starten einer Erfassung zu dem Befehls-Latch-Speicher durch ein Befehlssignal zu senden.
  27. Programmierbare Steuerung nach Anspruch 3, wobei: die Logikschaltungseinheit (1000n) eine Pulsdichtemessschaltung (1020n; 1021n) enthält, die in Reaktion auf irgendeine einer Pulsdichtemessanweisung und einer A/D-Umwandlungsanweisung, die im Programmspeicher (113A, 113B) gespeichert sind, arbeitet; die Pulsdichtemessschaltung (1020n; 1021n) ein Hochgeschwindigkeitszähler ist, dessen aktueller Zählwert für jede vorbestimmte Zeitperiode rückgesetzt wird, und einen maximalen Zählwert direkt vor einem Rücksetzen speichert, um einen digitalen Wert proportional zu einer Frequenz des eingegebenen Pulssignals zu erhalten, um die gemessene Frequenz in einem Spitzenhalteregister zu speichern; die Pulsdichtemessanweisung für die spezielle Einheit verwendet wird, mit welcher die Eingangsschnittstellenschaltung für logische Signale hoher Geschwindigkeit verbunden ist, und eine spezielle Anweisung ist, die eine Soll-Eingangsnummer X und eine Nummer D des Datenregisters, das das Ergebnis einer Messung speichert, als Operanden hat, und auf eine Ausführung der speziellen Anweisung hin ein Inhalt des Spitzenhalteregisters als Berechnungsdaten zu dem Datenregister D transferiert wird, um darin gespeichert zu werden; und ein A/D-Umwandlungsbefehl für die spezielle Einheit verwendet wird, mit welcher die Eingangsschnittstellenschaltung für analoge Signale verbunden ist, und eine spezielle Anweisung ist, die die Soll-Eingangsnummer X und die Nummer D des Datenregisters, das das Ergebnis einer Messung der von einem Spannung/Frequenz-Wandler der Eingangsnummer erzeugten Pulsfrequenz speichert, als Operanden hat, und auf eine Ausführung der speziellen Anweisung hin ein Inhalt des Spitzenhalteregisters als Berechnungsdaten zu dem Datenregister D transferiert wird, um darin gespeichert zu werden.
  28. Programmierbare Steuerung nach Anspruch 27, wobei: die Pulsdichtemessschaltung (1021n) so konfiguriert ist, dass eine Aufwärtszählvergleichsübereinstimmungsausgabe zum Speichern einer Erzeugung einer Vergleichsübereinstimmungsausgabe durch die zweite Vergleichsschaltung bei einer Aufwärtszähloperation arbeitet, wenn ein Zwischen-Einstellwert in dem zweiten Einstellregister des Vorwärts/Rückwärts-Zählers gespeichert ist und ein Durchschnittswert von Eingangssignalspannungen durch einen analogen Sensor gleich einer Eingangsspannung entsprechend dem Zwischen-Einstellwert oder höher als diese ist, während die zweite Vergleichsschaltung die Vergleichsübereinstimmungsausgabe während der Aufwärtszähloperation nicht erzeugt, um die Aufwärtszählvergleichsübereinstimmungsausgabe rückzusetzen, wenn der Durchschnittswert der Eingangssignalspannungen zu dem Kanalanschluss kleiner als die Eingangsspannung entsprechend dem Zwischen-Einstellwert ist; und die A/D-Umwandlungsanweisung an die spezielle Einheit angelegt wird, mit welcher die Eingangsschnittstellenschaltung für analoge Signale verbunden ist, und eine spezielle Anweisung ist, die eine Soll-Eingangsnummer X und eine Nummer M des Hilfsrelais, das das Benachrichtigungssignal speichert, als Operanden hat, und auf eine Ausführung der speziellen Anweisung hin ein Inhalt der Aufwärtszählvergleichsübereinstimmungsausgabe als Benachrichtigungssignal gesendet wird, um das Hilfsrelais M anzutreiben.
  29. Programmierbare Steuerung nach Anspruch 15, wobei: die Logikschaltungseinheit (1000n) eine PWM-Ausgabeschaltung (1050n: 1051n) enthält, die in Reaktion auf irgendeine einer PWM-Ausgabeanweisung und einer D/A-Umwandlungsanweisung, die im Programmspeicher gespeichert sind, arbeitet; die PWM-Ausgabeschaltung (1050n: 1051n) ein Pulsbreitenmodulationssignal mit einem variablen Abtastverhältnis (Verhältnis einer EIN-Zeit und eines EIN/AUS-Zyklus) in einem vorbestimmten Zyklus basierend auf Inhalten des ersten Einstellregisters und des zweiten Einstellregisters erzeugt; die PWM-Ausgabeanweisung an die spezielle Einheit angelegt wird, mit welcher die Ausgangsschnittstellenschaltung für logische Signale verbunden ist, und eine spezielle Anweisung ist, die eine Soll-Ausgangsnummer und eine Nummer D des Datenregisters, das Daten zum Bestimmen eines Zyklus des Ausgangspulses und einer EIN-Breite speichert, als Operanden hat, und auf eine Ausführung der speziellen Anweisung hin zwei Daten, die zu einem Zyklus des Ausgangspulses und irgendeiner der EIN-Breite und einer AUS-Breite gehören, als Einstelldaten temporär in dem Standby-Pufferregister gespeichert werden, wobei die temporär gespeicherten Daten bei einer Beendigung einer Erzeugung von einem Puls zu dem ersten Einstellregister und dem zweiten Einstellregister transferiert werden; und die D/A-Umwandlungsanweisung an die spezielle Einheit angelegt wird, mit welcher die Ausgangsschnittstellenschaltung für analoge Signale verbunden ist und eine spezielle Anweisung ist, die die Soll-Ausgangsnummer und die Nummer D des Datenregisters, das Daten zum Bestimmen eines Zyklus des Ausgangspulses und der EIN-Breite speichert, als Operanden hat, und auf eine Ausführung der speziellen Anweisung hin zwei Daten, die zu einem Zyklus des Ausgangspulses und irgendeiner der EIN-Breite und einer AUS-Breite gehören, temporär als Einstelldaten im Standby-Pufferregister gespeichert werden, wobei die temporär gespeicherten Daten bei einer Beendigung einer Erzeugung von einem Puls erneut zu dem ersten Einstellregister und dem zweiten Einstellregister transferiert werden.
  30. Programmierbare Steuerung nach Anspruch 29, wobei: die spezielle Einheit (180) sowohl eine Mehrkanal-Eingangsschnittstellenschaltung (189X) als auch eine Mehrkanal-Ausgangsschnittstellenschaltung (189Y) enthält, die mit den externen Verbindungsanschlüssen verbunden sind; die Ausgangsschnittstellenschaltung (189Y) eine Schnittstellenschaltung für eine analoge Last ist, einschließlich einer Glättungsschaltung für ein von dem zweiten Port der Logikschaltungseinheit ausgegebenes Pulsbreitenmodulationssignal; die Eingangsschnittstellenschaltung (189X) eine Schnittstellenschaltung mit einer Vergleichsschaltung zum Vergleichen eines Eingangssignals von dem analogen Sensor und eines geglätteten Signals des ausgegebenen Pulsbreitenmodulationssignals ist; um ein binarisiertes logisches Signal zu erzeugen, um zu dem ersten Port eingegeben zu werden; und die spezielle Einheit (180) die analoge Last für einen nicht überlagernden I/O-Kanal antreibt oder ein Vergleichsergebnissignal zwischen einem analogen Eingangssignal und einem variablen Vergleichswert erhält.
DE102008019089A 2007-09-10 2008-04-16 Programmierbare Steuerung Active DE102008019089B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007234092A JP4507125B2 (ja) 2007-09-10 2007-09-10 プログラマブルコントローラ
JP2007-234092 2007-09-10

Publications (2)

Publication Number Publication Date
DE102008019089A1 true DE102008019089A1 (de) 2009-03-12
DE102008019089B4 DE102008019089B4 (de) 2011-12-08

Family

ID=40340214

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008019089A Active DE102008019089B4 (de) 2007-09-10 2008-04-16 Programmierbare Steuerung

Country Status (3)

Country Link
US (1) US7644220B2 (de)
JP (1) JP4507125B2 (de)
DE (1) DE102008019089B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10503138B2 (en) 2013-07-09 2019-12-10 Phoenix Contact Gmbh & Co. Kg Meter unit and control system with meter unit

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7940921B2 (en) * 2005-06-23 2011-05-10 Agere Systems Inc. Continuous power transfer scheme for two-wire serial link
US7737874B1 (en) * 2008-06-28 2010-06-15 Jefferson Science Associates, Llc Method of multi-channel data readout and acquisition
JP2010081673A (ja) * 2008-09-24 2010-04-08 Sanyo Electric Co Ltd バッテリシステム及びバッテリパック
US8441202B2 (en) * 2009-10-26 2013-05-14 Light-Based Technologies Incorporated Apparatus and method for LED light control
US8598804B2 (en) 2009-10-26 2013-12-03 Light-Based Technologies Incorporated Apparatus and method for LED light control
US8032673B2 (en) 2009-12-14 2011-10-04 Apple Inc. Transaction ID filtering for buffered programmed input/output (PIO) write acknowledgements
JP5847703B2 (ja) * 2010-03-31 2016-01-27 テルモ株式会社 集積回路およびこれを使用した医療機器
US8655561B2 (en) * 2010-06-23 2014-02-18 Shimano Inc. Bicycle control system having a value generating unit
CN101976286B (zh) * 2010-10-27 2013-11-06 中兴通讯股份有限公司 终端设备及终端设备中模拟电路的实现方法
KR101512921B1 (ko) * 2011-03-22 2015-04-16 미쓰비시덴키 가부시키가이샤 프로그래머블 로직 컨트롤러
JP2012198965A (ja) * 2011-03-22 2012-10-18 Toshiba Corp 不揮発性半導体記憶装置
US20120253481A1 (en) * 2011-03-29 2012-10-04 General Electric Company Hart channel interface component including redundancy
US9323235B2 (en) * 2011-04-11 2016-04-26 Rockwell Automation Technologies, Inc. Industrial control system with distributed motion planning
US20140068218A1 (en) * 2012-08-31 2014-03-06 Shinya IEMURA Storage device and communication method
JP2014206939A (ja) * 2013-04-15 2014-10-30 株式会社安川電機 コントローラ、制御装置、機器制御システム、コンピュータプログラム及びコンピュータ可読情報記憶媒体
JP5896964B2 (ja) * 2013-09-02 2016-03-30 三菱電機株式会社 電子制御装置
JP5870977B2 (ja) * 2013-09-09 2016-03-01 株式会社デンソー 回転角検出システム
US10437650B2 (en) * 2014-06-19 2019-10-08 Nec Corporation Controlling execution of tasks in a series of operational processing by identifying processing units based on task command, task setting information, state of operational processing
CN106662853B (zh) * 2014-09-11 2018-08-31 三菱电机株式会社 输入输出控制装置、输入输出控制方法以及存储程序的存储器
US10175673B2 (en) 2015-04-06 2019-01-08 Mitsubishi Electric Corporation Programmable controller system
GB2537856A (en) * 2015-04-28 2016-11-02 Nordic Semiconductor Asa Communication between intergrated circuits
JP2017111480A (ja) * 2015-12-14 2017-06-22 Kyb株式会社 汎用コントローラ
CN111448731B (zh) 2017-11-08 2023-06-30 伊顿智能动力有限公司 用于电动移动应用的电源分配单元和熔断器管理
US11070049B2 (en) 2017-11-08 2021-07-20 Eaton Intelligent Power Limited System, method, and apparatus for power distribution in an electric mobile application using a combined breaker and relay
US11368031B2 (en) 2017-11-08 2022-06-21 Eaton Intelligent Power Limited Power distribution and circuit protection for a mobile application having a high efficiency inverter
US11938980B2 (en) * 2018-01-16 2024-03-26 Mitsubishi Electric Corporation Signal control device and abnormality detection method
JP6479292B1 (ja) 2018-04-26 2019-03-06 三菱電機株式会社 インターフェイス回路、基板、電子機器およびプログラマブルコントローラ
CN109542040B (zh) * 2018-12-29 2020-07-28 中电智能科技有限公司 Io信号处理方法和可编程逻辑控制器
US11689010B2 (en) 2019-02-22 2023-06-27 Eaton Intelligent Power Limited Coolant fitting promoting turbulent flow
JP7324060B2 (ja) * 2019-06-11 2023-08-09 ファナック株式会社 位置検出装置
EP4000150A2 (de) 2019-07-15 2022-05-25 Eaton Intelligent Power Limited Leistungsverteilung und schaltungsschutz für eine mobile anwendung mit einem hocheffizienten wechselrichter

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002006907A (ja) 2000-06-26 2002-01-11 Omron Corp I/oユニット及びプログラマブルコントローラシステム
JP2002169602A (ja) 2000-11-30 2002-06-14 Matsushita Electric Works Ltd プログラマブルコントローラの汎用機能回路及び汎用ユニット
JP2002222003A (ja) 2001-01-26 2002-08-09 Matsushita Electric Works Ltd プログラマブルコントローラの汎用ユニット

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4303990A (en) * 1976-07-01 1981-12-01 Gulf & Western Industries, Inc. Programmable controller using microprocessor
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors
US5193189A (en) * 1987-10-07 1993-03-09 Allen-Bradley Company, Inc. Programmable controller with multiple priority level task processing
US5410717A (en) * 1991-03-22 1995-04-25 Allen-Bradley Company, Inc. Removable function card for a programmable controller processor
US5765000A (en) * 1994-12-29 1998-06-09 Siemens Energy & Automation, Inc. Dynamic user interrupt scheme in a programmable logic controller
US5909586A (en) * 1996-11-06 1999-06-01 The Foxboro Company Methods and systems for interfacing with an interface powered I/O device
TW539931B (en) * 2000-11-30 2003-07-01 Matsushita Electric Works Ltd General-purpose functional circuit and general-purpose unit for programmable controller
US7024495B2 (en) * 2001-03-30 2006-04-04 Omron Corporation Programmable controller
JP4451010B2 (ja) * 2001-04-09 2010-04-14 三菱電機株式会社 プログラマブルコントローラ
JP3526293B2 (ja) * 2001-11-30 2004-05-10 三菱電機株式会社 プログラマブルコントローラ
DE10393401B4 (de) * 2003-05-28 2007-07-26 Mitsubishi Denki K.K. Programmierbare Steuerung
EP2228698B1 (de) * 2005-03-14 2012-06-27 Omron Corporation Programmierbares Steuersystem
EP1703347B1 (de) * 2005-03-15 2018-10-17 Omron Corporation Speicherprogrammierbares Steuerungsgerät und speicherprogrammierbares Steuerungssystem
DE502005006659D1 (de) * 2005-09-28 2009-04-02 Siemens Ag Peripheriebaugruppe für ein Automatisierungsgerät
JP2007234092A (ja) 2006-02-28 2007-09-13 Victor Co Of Japan Ltd 光ディスク及び光ディスクの製造方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002006907A (ja) 2000-06-26 2002-01-11 Omron Corp I/oユニット及びプログラマブルコントローラシステム
JP2002169602A (ja) 2000-11-30 2002-06-14 Matsushita Electric Works Ltd プログラマブルコントローラの汎用機能回路及び汎用ユニット
JP2002222003A (ja) 2001-01-26 2002-08-09 Matsushita Electric Works Ltd プログラマブルコントローラの汎用ユニット

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10503138B2 (en) 2013-07-09 2019-12-10 Phoenix Contact Gmbh & Co. Kg Meter unit and control system with meter unit

Also Published As

Publication number Publication date
DE102008019089B4 (de) 2011-12-08
US7644220B2 (en) 2010-01-05
JP4507125B2 (ja) 2010-07-21
JP2009069864A (ja) 2009-04-02
US20090070514A1 (en) 2009-03-12

Similar Documents

Publication Publication Date Title
DE102008019089B4 (de) Programmierbare Steuerung
DE10049025B4 (de) Prozesssteuersystem, Verfahren zur Konfiguration eines Prozesssteuersystems
EP2260357B1 (de) Vorrichtung zur steuerung einer anlage und verfahren zur einrichtung und bedienung der steuerung einer anlage
EP2422243B1 (de) Sicherheitssteuerung zum steuern einer automatisierten anlage und verfahren zum erstellen eines anwenderprogramms für eine sicherheitssteuerung
DE3218114C2 (de) Vorrichtung an einer Karde zur Vergleichmäßigung von Kardenbändern
DE102008007230A1 (de) Verfahren und Vorrichtungen zum Konfigurieren von Prozesssteuerungssystem-Eingängen und -Ausgängen
DE202008017894U1 (de) Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung
DE102014001462B4 (de) Feldbusmodul, Maschinensteuerung und Verfahren zur Parametrierung eines, insbesondere sicherheitsgerichteten, Feldbusmoduls
EP2707999B1 (de) Signalverarbeitungssystem und verfahren zur verarbeitung von signalen in einem busknoten
EP0782722B1 (de) Verfahren und vorrichtung zur steuerung und aktivierung von miteinander mittels eines bussystems vernetzten sensoren und/oder aktuatoren
CH659087A5 (de) Vorrichtung zur steuerung und regelung einer karde oder krempel.
DE202008017893U1 (de) Vorrichtung zum Programmieren und/oder Konfigurieren einer Sicherheitssteuerung
EP4182645B1 (de) Autarker, mehrdimensional messender radarsensor
EP2557464B1 (de) Verfahren zum Betrieb eines Automatisierungssystems
EP0809162B1 (de) Verfahren zur Prozesssteuerung und Gerätesteuersystem
DE102021133338A1 (de) Verfahren zur Überwachung mittels maschinellem Lernen
EP2687930B1 (de) Automatisierungseinheit zur Steuerung eines Geräts oder einer Anlage
DE102012025228A1 (de) Steuerungsübergreifende Energieverwaltung in einer Anlage
EP2796951A1 (de) Steuerungssystem für eine Automatisierungsanlage und zugehöriges Entwicklungssystem
EP1119802B1 (de) Vorrichtung zur steuerung und/oder überwachung externer technischer prozesse
EP3557338B1 (de) Verfahren zum programmieren einer sicherheitssteuerung
DE102017204544A1 (de) Netzwerk der Automatisierungstechnik
EP1351109A1 (de) Integriertes Entwurfs-, Programmier- und Dokumentationssystem für Automatisierungsgeräte
EP4453674A1 (de) Technik zur parametrierung und/oder konfiguration für eine auf einer speicher-programmierbaren steuerung basierenden vorrichtung
EP0503255B1 (de) Steuermodul

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20120309