DE112013006971T5 - Programmierbare Steuerung, deren Peripheriegerät und Programm für Zugriff auf Tabellendaten der programmierbaren Steuerung - Google Patents

Programmierbare Steuerung, deren Peripheriegerät und Programm für Zugriff auf Tabellendaten der programmierbaren Steuerung Download PDF

Info

Publication number
DE112013006971T5
DE112013006971T5 DE112013006971.7T DE112013006971T DE112013006971T5 DE 112013006971 T5 DE112013006971 T5 DE 112013006971T5 DE 112013006971 T DE112013006971 T DE 112013006971T DE 112013006971 T5 DE112013006971 T5 DE 112013006971T5
Authority
DE
Germany
Prior art keywords
database
command
programmable controller
access
data
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
DE112013006971.7T
Other languages
English (en)
Inventor
Hajime Tanide
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 DE112013006971T5 publication Critical patent/DE112013006971T5/de
Granted legal-status Critical Current

Links

Images

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/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13004Programming the plc
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13041Display ladder or logic diagram, mnemonics, switch between two display
    • 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/15Plc structure of the system
    • G05B2219/15064MMU, memory management unit
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2241Real time database, each processor stores in local memory used variables

Abstract

Eine programmierbare Steuerung (10) umfasst eine Befehlsausführungseinheit, die mehrere Befehle in einem Anwendungsprogramm der Reihe nach ausführt; eine Datenbankspeichereinheit (13), in der eine Datenbank gespeichert ist, die Daten enthält, die in einem Prozess verwendet werden, der durch die Befehlsausführungseinheit in einem Tabellenformat ausgeführt wird; eine Einheit zum Generieren von Datenbankabfragebefehlen, die, wenn die Befehle einen Datenbankzugriffsbefehl enthalten, den Zugriffsbefehl in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl umwandeln; und eine Datenbankverwaltungseinheit, die auf die Datenbank in der Datenbankspeichereinheit (13) zugreift und die durch den Datenbankabfragebefehl spezifizierten Daten erfasst.

Description

  • Gebiet
  • Diese Erfindung betrifft eine (speicher-)programmierbare Steuerung, deren Peripheriegerät und ein Programm für den Zugriff auf Tabellendaten, das mit einer programmierbaren Steuerung verwendet wird.
  • Hintergrund
  • Eine programmierbare Steuerung führt das Lesen oder Schreiben von Gerätedaten, die in der programmierbaren Steuerung enthalten sind, entsprechend einem vom Nutzer erstellten Ablaufprogramm aus. Als Reaktion darauf wird z. B. ein Zustand eines mit der programmierbaren Steuerung verbundenen Eingabegeräts, wie z. B. eines Relais, eines Schalters und eines Sensors, erfasst, oder ein Ausgabegerät, wie z. B. ein Stellantrieb und ein Ventil, gesteuert. Zum Beispiel werden auch Rezepturdaten, wie die Größe und Farbe eines hergestellten Produkts, und Ergebnisdaten, wie die Fertigungsnummer und die Anzahl fehlerhafter Produkte pro hergestelltem Produkt, als Gerätedaten gespeichert. Wenn somit ein Bediener ein Ablaufprogramm erstellt und die zur Ansteuerung eines Eingabe-/Ausgabegeräts erforderlichen Daten aus den Rezepturdaten erfasst, können Produkte flexibel verändert werden. Wenn weiterhin ein Ablaufprogramm zur Speicherung der Kontrollergebnisse als Ergebnisdaten erstellt wird, ist die Lagerverwaltung der für die Produktion erforderlichen Elemente einfach durchzuführen.
  • Daten wie Rezepturdaten und Ergebnisdaten werden im Allgemeinen in einer programmierbaren Steuerung in einem zweidimensionalen Datentabellen(nachstehend bezeichnet als „Tabellen”)-Format wie CSV (durch Komma getrennte Werte) gespeichert, um von einem übergeordneten Computersystem einfach verarbeitet werden zu können. Wenn die programmierbare Steuerung auf die Daten zugreift, muss die programmierbare Steuerung die Daten in einen Gerätespeicher einlesen. Um ausschließlich Tabellendaten (wie die Rezepturdaten und die Ergebnisdaten) zu erkennen, die die Funktion von Tabellenelementen haben, können eine Spaltennummer und eine Zeilennummer der Tabelle angegeben werden. Der Gerätespeicher weist jedoch keine Spalten und Zeilen auf, die Tabellendaten werden ihm nur sukzessive zur Verfügung gestellt, und wenn die programmierbare Steuerung somit auf die Gerätedaten im Gerätespeicher zugreift, ist die Berechnung einer Geräteadresse erforderlich.
  • Konventionell wird eine Technik angeboten, mit der eindimensionale Daten als zweidimensionale Tabellendaten auch in einer programmierbaren Steuerung verarbeitet werden können (z. B. Patentliteratur 1). Bei dieser Technik wird zunächst für jede Tabelle ein Tabellendefinitionsbefehl einschließlich einer Tabellenidentifikationsnummer, der Anzahl der Tabellenspalten, der Anzahl der Tabellenzeilen und einer Kopf-Geräteadresse einer Tabelle definiert. Anschließend wird durch einen Tabellenelement-Lesebefehl ein Element aus den eindimensionalen Daten extrahiert, um ein Lese-Zielelement unter Verwendung einer Spalten- und einer Zeilennummer in der zweidimensionalen Tabelle als Parameter zu bestimmen. Die Geräteadresse des Lese-Zielelements auf einem Gerätespeicher wird unter Verwendung der Kopf-Geräteadresse und der Anzahl der Tabellenzeilen des Tabellendefinitionsbefehls und einer Spaltennummer und einer Zeilennummer des Tabellenelement-Lesebefehls berechnet.
  • Literaturhinweise
  • Patentliteratur
    • Patentliteratur 1: Japanische Patentanmeldung Offenlegung Nr. 2010-198132
  • Kurzdarstellung
  • Technisches Problem
  • Wenn jedoch bei der in Patentliteratur 1 beschriebenen programmierbaren Steuerung ein Lese-Zielelement der Tabellendaten gelesen wird, müssen zwei Schritte ausgeführt werden, nämlich ein Schritt „Einlesen von Tabellendaten in einen Gerätespeicher” und ein Schritt „Suchen eines Lese-Zielelements im Gerätespeicher”. Deshalb besteht bisher das Problem, dass die Suche des Lese-Zielelements zeitaufwändig ist. Des Weiteren muss der Gerätespeicher über ausreichend Speicherkapazität verfügen, um die Tabellendaten zu lesen, was die Herstellungskosten einer programmierbaren Steuerung erhöht.
  • Die vorliegende Erfindung wurde im Hinblick auf die vorstehend beschriebenen Probleme entwickelt, und ein Zweck der vorliegenden Erfindung besteht darin, Folgendes bereitzustellen: eine programmierbare Steuerung, die beim Lesen von Daten aus einer Datenbank die Anzahl der Schritte zum Auslesen aus der Datenbank im Vergleich zum Stand der Technik reduzieren kann, ein Programm für den Zugriff auf Tabellendaten einer derartigen programmierbaren Steuerung, und ein Peripheriegerät, das ein Programm, das mit einer derartigen programmierbaren Steuerung verwendet wird, programmieren kann.
  • Problemlösung
  • Zur Verwirklichung des oben genannten Ziels bezieht sich die vorliegende Erfindung auf eine programmierbare Steuerung, die Folgendes enthält: eine Befehlsausführungseinheit, die mehrere Befehle in einem Anwendungsprogramm der Reihe nach ausführt; eine Datenbankspeichereinheit, in der eine Datenbank gespeichert ist, die Daten enthält, die in einem durch die Befehlsausführungseinheit in einem Tabellenformat ausgeführten Prozess verwendet werden; eine Einheit zum Generieren von Datenbankabfragebefehlen, die, wenn die Befehle einen Datenbankzugriffsbefehl enthalten, den Zugriffsbefehl in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl umwandeln; und eine Datenbankverwaltungseinheit, die auf die Datenbank in der Datenbankspeichereinheit zugreift und durch den Datenbankabfragebefehl vorgegebene Daten erfasst.
  • Vorteilhafte Auswirkungen der Erfindung
  • Nach der vorliegenden Erfindung wandelt eine Einheit zum Generieren von Datenbankabfragebefehlen einen Datenbankzugriffsbefehl in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl um; eine Datenbankverwaltungseinheit greift auf eine Datenbank einer Datenbankspeichereinheit zu, um durch den Datenbankabfragebefehl vorgegebene Daten zu erfassen; und eine END-Befehlsverarbeitungseinheit schreibt die erfassten Daten in eine durch einen Zugriffsbefehl einer Benutzerdaten-Speichereinheit festgelegte Adresse. Wenn somit Daten aus einer Datenbank in eine programmierbare Steuerung eingelesen werden, ist es möglich, die Anzahl der Schritte zum Auslesen aus der Datenbank im Vergleich zu konventionellen Techniken zu reduzieren.
  • Kurzbeschreibung der Zeichnungen
  • 1 stellt ein Blockdiagramm dar, das die funktionale Konfiguration einer programmierbaren Steuerung nach einer ersten Ausführungsform schematisch veranschaulicht.
  • 2 stellt ein Diagramm dar, das eine Konfiguration einer Programmspeichereinheit schematisch veranschaulicht.
  • 3 stellt ein Diagramm dar, das ein Beispiel einer Datenbank veranschaulicht.
  • 4 stellen Diagramme dar, die ein Beispiel des Inhalts eines DB_OPEN-Befehls veranschaulichen.
  • 5 stellen Diagramme dar, die ein Beispiel des Inhalts eines DB_SELECT-Befehls veranschaulichen.
  • 6 stellen Diagramme dar, die ein Beispiel des Inhalts eines DB_CLOSE-Befehls veranschaulichen.
  • 7 stellt ein Diagramm dar, das ein Beispiel einer Anweisung zum Lesen einer Datenbank in einem Kontaktplanprogramm veranschaulicht.
  • 8 stellt einen Ablaufplan dar, der ein Beispiel für einen Ablauf des gesamten Prozesses der programmierbaren Steuerung veranschaulicht.
  • 9 stellt einen Ablaufplan dar, der ein Beispiel für einen Prozessablauf zur Ausführung eines Datenbankzugriffsbefehls veranschaulicht.
  • 10 stellt ein Diagramm dar, das einen Prozess eines Datenbankzugriffsbefehls schematisch veranschaulicht.
  • 11 stellen Diagramme dar, die ein Beispiel für einen Prozess zum Generieren eines Datenbankabfragebefehls aus einem Datenbankzugriffsbefehl veranschaulichen.
  • 12 stellt einen Ablaufplan dar, der ein Beispiel für einen Prozessablauf zur Vollständigkeitsprüfung während eines END-Prozesses veranschaulicht.
  • 13 stellt ein Blockdiagramm dar, das die funktionale Konfiguration einer programmierbaren Steuerung nach einer zweiten Ausführungsform veranschaulicht.
  • 14 stellt ein Diagramm dar, das ein Beispiel für den Inhalt von Datenbankzugriff-Einstellungsinformationen nach der zweiten Ausführungsform veranschaulicht.
  • 15 stellt ein Diagramm dar, das ein Beispiel für ein Anwendungsprogramm einer Datenbankleseanweisung nach der zweiten Ausführungsform veranschaulicht.
  • 16 stellt ein Diagramm dar, das ein Beispiel für Befehlsumwandlungsinformationen beim Generieren eines Datenbankabfragebefehls aus den Datenbankzugriff-Einstellungsinformationen veranschaulicht.
  • 17 stellt Diagramme dar, die einen Fall für das Lesen von Daten aus anderen mit einem Netzwerk verbundenen programmierbaren Steuerungen schematisch veranschaulichen.
  • 18 stellt ein Blockdiagramm dar, das ein Beispiel für eine funktionale Konfiguration eines Engineering-Tools schematisch veranschaulicht.
  • Beschreibung der Ausführungsformen
  • Ausführungsbeispiele einer (speicher-)programmierbaren Steuerung, eines zugehörigen Peripheriegeräts und eines Programms für den Zugriff auf Tabellendaten, das mit einer programmierbaren Steuerung nach der vorliegenden Erfindung verwendet wird, werden nachstehend im Detail unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. Die vorliegende Erfindung ist nicht auf die Ausführungsformen beschränkt.
  • Erste Ausführungsform
  • 1 stellt ein Blockdiagramm dar, das die funktionale Konfiguration einer programmierbaren Steuerung nach einer ersten Ausführungsform schematisch veranschaulicht. Eine programmierbare Steuerung 10 enthält eine Anwendungsprogramm-Speichereinheit 11, eine Nutzerdaten-Speichereinheit 12, die als Nutzerdaten-Speichereinheit fungiert, eine Datenbankspeichereinheit 13, die als Datenbankspeichereinheit fungiert, eine Systemprogramm-Speichereinheit 14, eine Recheneinheit 15 und eine Systemdaten-Speichereinheit 16, die als Systemdaten-Speichereinheit fungiert.
  • In der Anwendungsprogramm-Speichereinheit 11 ist ein Anwendungsprogramm, z. B. ein durch die programmierbare Steuerung 10 ausgeführtes Kontaktplanprogramm, gespeichert. 2 stellt ein Diagramm dar, das eine Konfiguration einer Programmspeichereinheit schematisch veranschaulicht. Bei einem Anwendungsprogramm 111 handelt es sich um eine Reihe aus mehreren Befehlen 111-1, 111-2, ..., 111-E. Es wird angenommen, dass ein Datenbankzugriffsbefehl zum Zugriff auf eine Datenbank in diesen Befehlen 111-1, 111-2, ..., 111-E enthalten ist. Die Befehle enthalten normale Befehle 111-1, 111-2, ... zum Ausführen eines Programmausführungsprozesses und einen END-Befehl 111-E, der am Ende des Anwendungsprogramms 111 ausgeführt wird. Der Datenbankzugriffsbefehl wird zu einem späteren Zeitpunkt beschrieben. Die Anwendungsprogramm-Speichereinheit 11 besteht aus einem nicht-flüchtigen Speichergerät wie einem ROM (Nurlesespeicher) oder einem EEPROM (elektrisch löschbarem Nurlesespeicher).
  • Bei der Nutzerdaten-Speichereinheit 12 handelt es sich um einen Gerätespeicher, in dem die während der Ausführung eines Anwendungsprogramms verwendeten Daten gespeichert sind. Die Nutzerdaten-Speichereinheit 12 umfasst einen Speicherbereich 121 für Suchbedingungen, in dem eine während der Ausführung eines Datenbankzugriffsbefehls erforderliche Suchbedingung und dergleichen gespeichert ist, und einen Sicherungsbereich 122, in dem Daten während der Ausführung eines Anwendungsprogramms temporär gespeichert werden. Im Speicherbereich 121 für Suchbedingungen ist ein Speicherort einer Datenbank einschließlich zu erfassender Daten und eine Suchbedingung für die zu erfassenden Daten gespeichert. Die Suchbedingung wird im Vorfeld von einem Nutzer mittels eines nicht dargestellten Engineering-Tools festgelegt. Der Speicherort und die Suchbedingung stellen Parameter eines Datenbankzugriffsbefehls dar, der zu einem späteren Zeitpunkt beschrieben wird. Im Sicherungsbereich 122 wird das Ergebnis der Ausführung eines Datenbankabfragebefehls gespeichert. Ein DRAM (dynamischer Direktzugriffsspeicher), ein SRAM (statischer Direktzugriffsspeicher) und dergleichen können als die Nutzerdaten-Speichereinheit 12 verwendet werden.
  • In der Datenbankspeichereinheit 13 sind zum Beispiel Datenbanken von Rezepturdaten, wie der Größe und Farbe eines hergestellten Produkts, und von Ergebnisdaten, wie der Anzahl der hergestellten Produkte und der Anzahl der fehlerhaften Produkte pro hergestelltem Produkt, gespeichert. Eine Datenbank besteht aus zweidimensionalen Tabellendaten. 3 stellt ein Diagramm dar, das ein Beispiel einer Datenbank veranschaulicht. 3 stellt beispielhaft eine Produktgrößentabelle dar, in der die Größe für jeden Produkttyp aufgeführt ist. In Zeile 0 ist eine Produktnummer zur Kennzeichnung eines Produkts gespeichert, und in den Zeilen 1 bis 3 sind die Länge, die Breite bzw. die Höhe eines Produkts gespeichert. In den Spalten 0 bis 4 sind Aufzeichnungen zu den jeweiligen Produkten gespeichert. Bei der Datenbankspeichereinheit 13 handelt es sich um ein Sekundärspeichergerät, das aus einem nicht-flüchtigen Speichergerät wie einem Flash-Speicher und einer Festplatte besteht.
  • In der Systemprogramm-Speichereinheit 14 ist ein Systemprogramm gespeichert, das von der Recheneinheit 15, bei der es sich um so genannte Firmware handelt, ausgeführt wird. Beispiele für das Systemprogramm umfassen ein Befehlsausführungsprogramm, das einen normalen Befehl eines Anwendungsprogramms ausführt; ein Programm zum Generieren von Datenbankabfragebefehlen, das einen Datenbankzugriffsbefehl aus einem Anwendungsprogramm in einen Datenbankabfragebefehl in einem Format umwandelt, das es der Recheneinheit 15 ermöglicht, auf Daten in der Datenbankspeichereinheit 13 zuzugreifen; ein Datenbankverwaltungsprogramm, das gemäß einem Datenbankabfragebefehl auf die Datenbankspeichereinheit 13 zugreift; ein END-Befehlsverarbeitungsprogramm, das einen END-Befehl eines Anwendungsprogramms ausführt, und dergleichen. Die Systemprogramm-Speichereinheit 14 besteht aus einem nicht-flüchtigen Speichergerät wie einem ROM und einem EEPROM.
  • Bei dem Befehlsausführungsprogramm handelt es sich um ein Programm, das die Recheneinheit 15 dazu veranlasst, nacheinander das in der Anwendungsprogramm-Speichereinheit 11 gespeicherte Anwendungsprogramm 111 zu interpretieren und auszuführen. Genauer gesagt werden Befehle der Reihe nach, beginnend beim im Anwendungsprogramm 111 enthaltenen ersten Befehl 111-1 bis zu einem Befehl unmittelbar vor dem letzten END-Befehl 111-E, ausgeführt. Wenn ein Datenbankzugriffsbefehl im Anwendungsprogramm 111 enthalten ist, wird dieser Prozess an ein Programm zum Generieren von Datenbankabfragebefehlen gesendet.
  • Bei dem Programm zum Generieren von Datenbankabfragebefehlen handelt es sich um ein Programm, das, wenn ein Datenbankabfragebefehl im Anwendungsprogramm 111 der Anwendungsprogramm-Speichereinheit 11 enthalten ist, die Recheneinheit 15 dazu veranlasst, aus einem in einem Anwendungsprogramm(z. B. einem Kontaktplanprogramm)-Format beschriebenen Datenbankzugriffsbefehl einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl zu generieren. Bei der Datenbankabfragesprache handelt es sich zum Beispiel um SQL. Der Datenbankabfragebefehl ist ein Befehl, mit dem in der Praxis während der Ausführung eines Datenbankverwaltungsprogramms auf eine Datenbank zugegriffen werden kann, und genauer gesagt handelt es sich dabei um einen SQL-Befehl. Der generierte Datenbankabfragebefehl wird in der Systemdaten-Speichereinheit 16 gespeichert.
  • Bei dem Datenbankverwaltungsprogramm handelt es sich um ein Programm, das die Recheneinheit 15 dazu veranlasst, einen in einem Speicherbereich 161 für Datenbankabfragebefehle der Systemdaten-Speichereinheit 16 gespeicherten Datenbankabfragebefehl auszuführen. Genauer gesagt liest das Datenbankverwaltungsprogramm einen Datenbankabfragebefehl und extrahiert direkt Zieldaten (ein Element) aus einer Datenbank in der Datenbankspeichereinheit 13.
  • Bei dem END-Befehlsverarbeitungsprogramm handelt es sich um ein Programm, das die Recheneinheit 15 dazu veranlasst, den letzten END-Befehl 111-E eines in der Systemprogramm-Speichereinheit gespeicherten Anwendungsprogramms auszuführen. Der END-Befehl 111-E führt einen Prozess aus, der sich von der Ausführung eines normalen Befehls unterscheidet, der einen Prozess zur Kommunikation mit einem PC oder einem externen Gerät sowie einen Prozess zum Erfassen des Ergebnisses der Ausführung eines Datenbankabfragebefehls durch ein Datenbankverwaltungsprogramm umfasst. Im Prozess zum Erfassen des Ergebnisses der Ausführung eines Datenbankabfragebefehls werden Daten, die von einem Datenbankverwaltungsprogramm extrahiert wurden, an einen Speicherort geschrieben, der durch den Datenbankzugriffsbefehl im Sicherungsbereich 122 der Nutzerdaten-Speichereinheit 12 vorgegeben ist.
  • Die Recheneinheit 15 führt ein in der Systemprogramm-Speichereinheit 14 gespeichertes Systemprogramm (Firmware) aus. Eine Befehlsausführungseinheit entspricht der Recheneinheit 15, die ein Befehlsausführungsprogramm ausführt, eine Einheit zum Generieren von Datenbankabfragebefehlen entspricht der Recheneinheit 15, die ein Programm zum Generieren von Datenbankabfragebefehlen ausführt, eine Datenbankverwaltungseinheit entspricht der Recheneinheit 15, die ein Datenbankverwaltungsprogramm ausführt, und eine END-Befehlsverarbeitungseinheit entspricht der Recheneinheit 15, die ein END-Befehlsverarbeitungsprogramm ausführt.
  • Bei der Systemdaten-Speichereinheit 16 handelt es sich um einen Arbeitsspeicher, in den Daten von der Firmware temporär abgelegt werden. Ein von der Recheneinheit 15 generierter Datenbankabfragebefehl wird darin temporär gespeichert. Ein DRAM, ein SRAM und dergleichen können als Systemdaten-Speichereinheit 16 verwendet werden.
  • Eine derart konfigurierte programmierbare Steuerung umfasst eine CPU (Zentraleinheit), ein ROM, ein Hauptspeichergerät, ein Sekundärspeichergerät und eine Netzwerkeinheit. Da eine durch die Recheneinheit 15 beschriebene Funktion in einem Programm beschrieben und das Programm in der Systemprogramm-Speichereinheit 14 gespeichert und durch eine CPU ausgeführt wird, kann eine programmierbare Steuerung mit der vorstehend beschriebenen Konfiguration erfasst werden.
  • In der ersten Ausführungsform greift die programmierbare Steuerung 10 direkt auf Zieldaten in einer Datenbank in der Datenbankspeichereinheit 13 zu, erfasst die Zieldaten und speichert das Ergebnis im Sicherungsbereich 122 der Nutzerdaten-Speichereinheit 12. Ein Datenbankzugriffsbefehl, der einen derartigen Prozess bewirkt, ist durch ein Kontaktplanprogramm (ein Anwendungsprogramm) definiert.
  • In diesem Fall werden drei Befehle, nämlich ein DB_OPEN-Befehl, ein DB_SELECT-Befehl und ein DB CLOSE-Befehl definiert.
  • (1) DB_OPEN-Befehl
  • Die 4 stellen Diagramme dar, die ein Beispiel des Inhalts eines DB_OPEN-Befehls veranschaulichen, wobei 4(a) ein Diagramm darstellt, das ein Beispiel für eine Konfiguration des DB-OPEN-Befehls veranschaulicht, 4(b) ein Diagramm darstellt, das ein Beispiel für den DB-OPEN-Befehl veranschaulicht, und 4(c) ein Diagramm darstellt, das die Beziehung zwischen einem Gerätespeicher und einem Parameter des DB OPEN-Befehls schematisch veranschaulicht. Bei dem DB OPEN-Befehl handelt es sich um einen Befehl zum Öffnen einer Operations-Zieldatenbank in der Datenbankspeichereinheit 13. Wie in 4(a) veranschaulicht, umfasst der DB_OPEN-Befehl drei Parameter A1 bis A3. Der Parameter A1 spezifiziert eine Operations-Zieldatenbank (Zieldatenbank zu öffnen). Der Parameter A2 spezifiziert eine Datenbankkennung zur Kennzeichnung einer offenen Zieldatenbank. Der Parameter A3 spezifiziert ein Gerät zur Anzeige, dass ein offener Prozess abgeschlossen ist.
  • Wie in 4(b) veranschaulicht, kann ein Gerät (eine Adresse) der Nutzerdaten-Speichereinheit 12 mithilfe der Parameter A1 und A2 spezifiziert werden. Zum Beispiel wird ein Gerät (eine Adresse) der Nutzerdaten-Speichereinheit 12 in die Parameter A1 und A2 eingegeben, und es werden Informationen aus einer offenen Zieldatenbank im Gerät gespeichert. In Bezug auf 4(c) werden zum Beispiel Werte einer IP(Internetprotokoll)-Adresse „127.0.0.1” eines Geräts (einer programmierbaren Steuerung), das die Datenbankspeichereinheit 13 umfasst, in die Geräte D1000 bis D1003 eingegeben und es wird ein Name „MyDB” einer offenen Zieldatenbank in der Datenbankspeichereinheit 13 in die Geräte D1004 bis D1006 eingegeben. Ein Abschlussgerät M0, das eingeschaltet wird, wenn ein offener Prozess einer offenen Zieldatenbank abgeschlossen ist, wird im Parameter A3 eingestellt.
  • (2) DB_SELECT-Befehl
  • Die 5 stellen Diagramme dar, die ein Beispiel des Inhalts eines DB_SELECT-Befehls veranschaulichen, wobei 5(a) ein Diagramm darstellt, das ein Beispiel für eine Konfiguration des DB_SELECT-Befehls veranschaulicht, 5(b) ein Diagramm darstellt, das ein Beispiel für den DB_SELECT-Befehl veranschaulicht, und 5(c) ein Diagramm darstellt, das die Beziehung zwischen einem Gerätespeicher und einem Parameter des DB SELECT-Befehls schematisch veranschaulicht. Bei dem DB_SELECT-Befehl handelt es sich um einen Befehl, um gewünschte Daten aus einer Datenbank zu holen, die durch einen DB_OPEN-Befehl geöffnet wird. Wie in 5(a) veranschaulicht, umfasst der DB_SELECT-Befehl fünf Parameter B1 bis B5. Der Parameter B1 spezifiziert eine Datenbankkennung zur Spezifizierung einer Operations-Zieldatenbank. Der Parameter B2 spezifiziert eine Bedingung, die eine Aufzeichnung kennzeichnet, die aus einer Operations-Zieltabelle einer Operations-Zieldatenbank gelesen wird. Der Parameter B3 spezifiziert ein Feld, das aus der durch Parameter B2 spezifizierten Aufzeichnung gelesen wird. Der Parameter B4 spezifiziert einen Speicherort der durch die Parameter B2 und B3 gelesenen Daten. Der Parameter B5 spezifiziert ein Gerät, das anzeigt, dass ein Leseprozess abgeschlossen ist.
  • Wie in 5(b) veranschaulicht, kann ein Gerät (eine Adresse) der Nutzerdaten-Speichereinheit 12 mithilfe der Parameter B1 bis B4 spezifiziert werden. Der Parameter B1 entspricht der Datenbankkennung, die durch den Parameter A2 eines DB_OPEN-Befehls spezifiziert ist. Der Parameter B2 spezifiziert ein Gerät der Nutzerdaten-Speichereinheit 12, in dem die Spezifizierungsinformationen für die Lesezielaufzeichnung gespeichert werden, die eine Lesezieltabelle und eine Lesezielaufzeichnung einer Operations-Zieldatenbank umfassen. In diesem Beispiel umfassen, wie in 5(c) veranschaulicht, die Spezifizierungsinformationen für die Lesezielaufzeichnung die „Produktgröße”, die einen Namen einer in „D1200” bis „D1205” in der Nutzerdaten-Speichereinheit 12 gespeicherten Operations-Zieltabelle darstellt, die „Produktnummer”, die einen Namen eines in „D1206” bis D1210” gespeicherten Bedingungsfelds darstellt, „=”, das eine in „D1211 und D1212” gespeicherte Bedingung darstellt, und „3”, die den Wert einer in „D1213” gespeicherten Bedingung darstellt. Das heißt, es wird eine Bedingung gespeichert, die eine Aufzeichnung mit einer Produktnummer „3” aus einer Produktgrößentabelle extrahiert.
  • Der Parameter B3 spezifiziert ein Gerät in der Nutzerdaten-Speichereinheit 12, in dem Lesefeld-Spezifizierungsinformationen gespeichert sind, die die Anzahl der Felder und einen Feldnamen, der aus der durch den Parameter B2 spezifizierten Aufzeichnung erfasst wird, umfassen. In diesem Beispiel umfassen, wie in 5(c) veranschaulicht, die Lesefeld-Spezifizierungsinformationen folgende Angaben: „2”, d. h. die Anzahl der Felder, die in „D0” in der Nutzerdaten-Speichereinheit 12 gespeichert sind; „Länge”, d. h. einen Feldnamen 1, der in „D1 bis D3” gespeichert ist; und „Höhe”, d. h. einen Feldnamen 2, der in „D4 bis D6” gespeichert ist. Das heißt, es wird eine Bedingung gespeichert, die Daten extrahiert, die zwei Feldnamen „Länge” und „Höhe” aus der Aufzeichnung einer Produktgrößentabelle mit einer Produktnummer „3” entsprechen.
  • Der Parameter B4 wird durch die Parameter B2 und B3 spezifiziert, und spezifiziert einen Speicherort in der Nutzerdaten-Speichereinheit 12, an dem Lesedaten gespeichert werden. In diesem Beispiel, wie in 5(c) veranschaulicht, ist „1”, das die Anzahl der Leseaufzeichnungen angibt, „D100” in der Nutzerdaten-Speichereinheit 12 spezifiziert; der Lesewert 1 „9000”, der dem durch den Parameter B3 spezifizierten Feldnamen 1 entspricht, ist in „D101” gespeichert und der Lesewert 2 „700”, der dem durch den Parameter B3 spezifizierten Feldnamen 2 entspricht, ist in „D102” gespeichert. Ein Abschlussgerät M1, das eingeschaltet wird, wenn ein Leseprozess aus einer Operations-Zieldatenbank abgeschlossen ist, wird im Parameter B5 eingestellt.
  • (3) DB_CLOSE-Befehl
  • Die 6 stellen Diagramme dar, die ein Beispiel des Inhalts eines DB_CLOSE-Befehls veranschaulichen, wobei 6(a) ein Diagramm darstellt, das ein Beispiel für eine Konfiguration des DB-CLOSE-Befehls veranschaulicht und 6(b) ein Diagramm darstellt, das ein Beispiel für den DB_CLOSE-Befehl veranschaulicht. Bei dem DB_CLOSE-Befehl handelt es sich um einen Befehl zum Schließen einer Operations-Zieldatenbank in der Datenbankspeichereinheit 13. Wie in 6(a) veranschaulicht, umfasst der DB_CLOSE-Befehl einen Parameter C1. Der Parameter C1 spezifiziert eine Datenbankkennung zur Vorgabe einer CLOSE-Zieldatenbank. Die Datenbankkennung entspricht der durch den Parameter A2 des DB_OPEN-Befehls oder durch den Parameter B1 des DB_SELECT-Befehls spezifizierten Datenbankkennung. Wie in 6(b) veranschaulicht, kann ein Gerät (eine Adresse) der Nutzerdaten-Speichereinheit 12 als Parameter C1 spezifiziert werden.
  • Mit diesen drei Datenbankzugriffsbefehlen wird ein Befehl zum Zugriff auf die Datenbankspeichereinheit 13 in ein Kontaktplanprogramm geschrieben. 7 stellt ein Diagramm dar, das ein Beispiel einer Anweisung zum Lesen einer Datenbank in einem Kontaktplanprogramm veranschaulicht. Eine Übersicht eines derartigen Ablaufs eines Kontaktplanprogramms wird hier beschrieben.
  • Als Erstes wird bei Ausgabe einer Anweisung zum Lesen einer Datenbank (Schritt S11) ein DB_OPEN-Befehl ausgeführt (Schritt S12). Wie in 4 veranschaulicht, wird eine Datenbank „MyDB” eines Geräts mit einer IP-Adresse „127.0.0.1” aus den entsprechenden Geräten der Nutzerdaten-Speichereinheit 12 geöffnet. Wenn ein Öffnungsprozess einer Operations-Zieldatenbank abgeschlossen ist, wird ein Gerät „M0” eingeschaltet.
  • Wenn das Gerät „M0” eingeschaltet ist, wird ein DB_SELECT-Befehl ausgeführt (Schritt S13). Im DB_SELECT-Befehl ein Prozess zum Lesen von Daten entsprechend der „Länge” und „Höhe” aus einer Aufzeichnung der „Produktgrößentabelle” mit „Produktnummer” „3” aus den entsprechenden Geräten der Nutzerdaten-Speichereinheit 12. Wenn der Leseprozess abgeschlossen ist, wird ein Gerät „M1” eingeschaltet.
  • Wenn die Geräte „M0” und „M1” eingeschaltet sind, wird ein DB_CLOSE-Befehl ausgeführt (Schritt S14). Im DB_CLOSE-Befehl wird die Datenbank „MyDB”, die als Operations-Zieldatenbank fungiert, geschlossen. Auf diese Weise endet ein Prozess des Zugriffs auf eine Datenbank.
  • Als Nächstes wird ein Prozessablauf der programmierbaren Steuerung 10 beschrieben. 8 stellt einen Ablaufplan dar, der ein Beispiel für einen Ablauf des gesamten Prozesses der programmierbaren Steuerung veranschaulicht. Die Recheneinheit 15 der programmierbaren Steuerung 10 führt zuerst einen Programmausführungsprozess aus, der in der Ausführung eines normalen Befehls des in der Anwendungsprogramm-Speichereinheit 11 gespeicherten Anwendungsprogramms 111 besteht (Schritt S31). In diesem Fall werden Befehle vom Befehl 111-1 bis zu einem Befehl vor dem END-Befehl 111-E im Anwendungsprogramm 111, veranschaulicht in 2, in der vorstehend beschriebenen Reihenfolge ausgeführt.
  • Nachdem die Recheneinheit 15 normale Befehle vor dem END-Befehl 111-E des Anwendungsprogramms 111 ausgeführt hat, führt die Recheneinheit 15 einen END-Prozess mit dem END-Befehl 111-E nach einem END-Befehl-Verarbeitungsprogramm aus (Schritt S32). Im END-Prozess findet Kommunikation mit einem PC oder einem externen Gerät, der/das über eine Kommunikationsleitung mit der programmierbaren Steuerung 10 verbunden ist, statt, und es wird ebenfalls ein weiterer Prozess neben der Ausführung der normalen Befehle ausgeführt.
  • Wenn der END-Prozess endet, kehrt der Prozess zu Schritt S31 zurück, und die Recheneinheit 15 verarbeitet der Reihe nach Befehle des Anwendungsprogramms 111, angefangen vom Befehl 111-1. Auf die gleiche Weise werden in der programmierbaren Steuerung 10 die Befehle 111-1 bis 111-E des Anwendungsprogramms 111 wiederholt in der vorstehend beschriebenen Reihenfolge ausgeführt.
  • Wenn ein Datenbankzugriffsbefehl im Programmausführungsprozess bei Schritt S31 erkannt wird, wird der Prozess zur Ausführung des Datenbankzugriffsbefehls ausgeführt. 9 stellt einen Ablaufplan dar, der ein Beispiel für einen Prozessablauf zur Ausführung eines Datenbankzugriffsbefehls veranschaulicht; 10 stellt ein Diagramm dar, das einen Prozess eines Datenbankzugriffsbefehls schematisch veranschaulicht; und die 11 stellen Diagramme dar, die ein Beispiel für einen Prozess zum Generieren eines Datenbankabfragebefehls aus einem Datenbankzugriffsbefehl veranschaulichen.
  • Wenn die Recheneinheit 15 beim Programmausführungsprozess bei Schritt S31 in 8 einen Datenbankzugriffsbefehl erkennt und den erkannten Datenbankzugriffsbefehl an ein Programm zum Generieren eines Datenbankabfragebefehls sendet, wird der Prozess zur Ausführung des Datenbankzugriffsbefehls, der in 9 veranschaulicht ist, durchgeführt. Die Recheneinheit 15 führt einen offenen Prozess einer Zieldatenbank basierend auf dem Programm zum Generieren von Datenbankabfragebefehlen durch und erfasst Informationen, die zum Generieren von SQL aus Parametern des erfassten Datenbankzugriffsbefehls (ein DB_SELECT-Befehl) erforderlich sind (Schritt S51).
  • In diesem Beispiel wird auf die Parameter B2 und B3 des DB_SELECT-Befehls Bezug genommen und es wird eine Operations-Zieltabelle aus einer Operations-Zieldatenbank extrahiert; es wird eine Aufzeichnung aus der Operations-Zieltabelle extrahiert; und es wird ein Feld aus der Operations-Zielaufzeichnung extrahiert. Wie in 5 beispielhaft veranschaulicht, werden diese Bedingungen in durch die Parameter B2 und B3 der Nutzerdaten-Speichereinheit 12 spezifizierten Adressen gespeichert.
  • Als Nächstes generiert die Recheneinheit 15 einen Datenbankabfragebefehl (einen SQL-Satz) aus den erfassten Informationen (Schritt S52). 11(a) veranschaulicht einen SQL-Satz, der aus einem Datenbankzugriffsbefehl des in 5(b) veranschaulichten Kontaktplanprogramms generiert wird. Der SQL-Satz umfasst einen SELECT-Ausdruck, einen FROM-Ausdruck und einen WHERE-Ausdruck, und es wird für jeden der Ausdrücke ein Parameter festgelegt. Der SQL-Satz wird aus dem Datenbankzugriffsbefehl nach den Befehlsumwandlungsinformationen generiert, in denen ein Parameter eines Datenbankzugriffsbefehls einem Parameter eines SQL-Satzes entspricht. 11(b) veranschaulicht ein Beispiel für die Befehlsumwandlungsinformationen. In den Befehlsumwandlungsinformationen ist ein Parameter eines SQL-Satzes durch Verwendung eines Geräts der Nutzerdaten-Speichereinheit 12 definiert. Dementsprechend ist es möglich, einen SQL-Satz (einen Datenbankabfragebefehl) aus einem in 5(b) veranschaulichten Datenbankzugriffsbefehl zu generieren. Die vorstehend beschriebenen Befehlsumwandlungsinformationen sind nur ein Beispiel, und es können Befehlsumwandlungsinformationen je nach Typ eines SQL-Satzes erstellt werden.
  • Als Nächstes speichert die Recheneinheit 15 den generierten SQL-Satz im Speicherbereich 161 für Datenbankabfragebefehle der Systemdaten-Speichereinheit 16 (Schritt S53).
  • Die Recheneinheit 15 gibt den generierten SQL-Satz an eine Datenbank aus, die durch den Parameter B1 des DB_SELECT-Befehls, der als Datenbankzugriffsbefehl basierend auf einem Datenbankverwaltungsprogramm fungiert, spezifiziert ist (Schritt S54). Dementsprechend greift die Recheneinheit 15 direkt auf eine in der Datenbankspeichereinheit 13 gemäß dem SQL-Satz spezifizierte Datenbank zu und erfasst Zieldaten. Der Prozess zur Ausführung des Datenbankzugriffsbefehls endet dann und der Prozess kehrt zu Schritt S31 in 8 zurück.
  • Im Allgemeinen läuft ein Prozess einer Datenbank langsamer ab als ein Prozess der Durchführung der programmierbaren Steuerung 10, und somit wird der Prozess zur Ausführung des Datenbankzugriffsbefehls nach Ausgabe des SQL abgeschlossen, ohne das Verarbeitungsergebnis einer Datenbank abzuwarten. Die Vollständigkeitsprüfung des Ergebnisses der Verarbeitung einer Datenbank wird in einem END-Prozess durchgeführt.
  • Es wird ein Prozess der Vollständigkeitsprüfung, wenn SQL im END-Prozess bei Schritt S32 in 8 ausgegeben wird, beschrieben. 12 stellt einen Ablaufplan dar, der ein Beispiel für einen Prozessablauf zur Vollständigkeitsprüfung während eines END-Prozesses veranschaulicht.
  • Als Erstes stellt die Recheneinheit 15 fest, ob SQL ausgegeben wurde (Schritt S71). Falls SQL nicht ausgegeben wurde (NEIN bei Schritt S71), bedeutet dies, dass die Recheneinheit 15 SQL nicht ausgibt und eine Vollständigkeitsprüfung daher nicht notwendig ist, sodass der Prozess endet.
  • Falls SQL ausgegeben wurde (JA bei Schritt S71), wird festgestellt, ob ein Prozess des ausgegebenen SQL abgeschlossen ist (Schritt S72). Falls der Prozess des ausgegebenen SQL nicht abgeschlossen ist (NEIN bei Schritt S72), wird kein Prozess durchgeführt und der Prozess zur Vollständigkeitsprüfung endet. In diesem Fall wird die Prüfung beim nächsten END-Prozess erneut durchgeführt.
  • Wenn der Prozess des ausgegebenen SQL inzwischen abgeschlossen ist (JA bei Schritt S72), speichert die Recheneinheit 15 das Ergebnis des erfassten SQL an einem durch den Parameter B4 eines DB_SELECT-Befehls spezifizierten Speicherplatz der Nutzerdaten-Speichereinheit 12 (Schritt S73). Die Recheneinheit 15 schaltet anschließend ein durch den Parameter B5 des DB_SELECT-Befehls spezifiziertes Abschlussgerät ein (Schritt S74) und es wird ein Prozess zum Schließen einer Zieldatenbank ausgeführt. Auf diese Weise endet der Prozess der Vollständigkeitsprüfung während des END-Prozesses.
  • Im vorstehenden Beispiel wurde zwar ein Datenbankzugriffsbefehl zum Auslesen von Daten aus einer Datenbank beschrieben, die vorliegende Erfindung ist jedoch nicht darauf beschränkt. Zum Beispiel ist es möglich, einen Datenschreibbefehl zu definieren, um Daten einer Datenbank hinzuzufügen, Daten zu verändern oder Daten aus einer Datenbank zu löschen. Ein derartiger Datenbankschreibbefehl umfasst als Parameter mindestens eine Datenbankkennung (Datenbankspezifizierungsinformation) zur Spezifizierung einer Operations-Zieldatenbank, einen Namen einer Tabelle, der Daten in einer Operations-Zieldatenbank hinzugefügt werden, einen Namen eines Felds, in das Daten einer Operations-Zieltabelle geschrieben werden, sowie den Inhalt der zu schreibenden Daten. Wie vorstehend beschrieben, handelt es sich beim Datenbankzugriffsbefehl um einen Befehl zum Zugriff auf eine Datenbank, wie einen Befehl zum Lesen oder Schreiben von in der Datenbank gespeicherten Daten.
  • In der ersten Ausführungsform wird ein in einem Kontaktplanprogramm verwendeter Datenbankzugriffsbefehl definiert, ein durch den Datenbankzugriffsbefehl spezifizierter Parameter entspricht einem Parameter eines SQL-Satzes, und wenn der Datenbankzugriffsbefehl in einem Anwendungsprogramm vorhanden ist, wird ein SQL-Satz aus einem Datenbankzugriffsbefehl gemäß der Übereinstimmung generiert und SQL ausgegeben. Dementsprechend ist es in der programmierbaren Steuerung 10 möglich, direkt auf eine Datenbank zuzugreifen und die gewünschten Daten zu erfassen, ohne eine zweidimensionale Datenbank in die Datenbankspeichereinheit 13 zu laden, die wie bei herkömmlichen Techniken als Sekundärspeichergerät in der eindimensionalen Nutzerdaten-Speichereinheit 12 fungiert. Somit ist es möglich, Daten aus einer Datenbank in einem einzigen Schritt zu erfassen, und es können Daten schneller erfasst werden als bei herkömmlichen Techniken.
  • Es ist nicht erforderlich, eine Datenbank in die Nutzerdaten-Speichereinheit 12 zu laden, und es ist demnach auch nicht erforderlich, die Kapazität der Nutzerdaten-Speichereinheit 12 im Hinblick auf die Größe einer Datenbank festzulegen. Dies bedeutet, dass die Datenmenge, die aus der Datenbankspeichereinheit 13 in die Nutzerdaten-Speichereinheit 12 eingelesen wird, auf das für einen Prozess erforderliche Minimum reduziert wird. Dementsprechend kann die Kapazität (die Verwendung) der Nutzerdaten-Speichereinheit 12 im Vergleich zu herkömmlichen Techniken reduziert werden.
  • Weiterhin ist, da beim Erfassen von für die programmierbare Steuerung 10 erforderlichen Daten eine Datenbank verwendet wird, die Berechnung eines Daten-Speicherplatzes (einer Adresse) beim Laden einer zweidimensionalen Datenbank in eine eindimensionale Nutzerdaten-Speichereinheit 12 in einem Kontaktplanprogramm nicht erforderlich. Somit wird das Programmieren vereinfacht. Weiterhin ist es selbst bei einer Änderung der Datenstruktur einer Datenbank, falls Daten desselben Felds erfasst werden, nicht erforderlich, den durch ein Anwendungsprogramm generierten Datenbankzugriffsbefehl zu verändern.
  • Weiterhin wird ein Befehl nur für ein Anwendungsprogramm definiert und es ist daher möglich, von der programmierbaren Steuerung 10 aus auf eine Datenbank zuzugreifen, und es kann selbst ein Nutzer der programmierbaren Steuerung 10, der mit einer datenbankspezifischen Sprache wie SQL nicht vertraut ist, ein Programm unter Verwendung von Daten in einer Datenbank erstellen.
  • Zweite Ausführungsform
  • Die erste Ausführungsform beschreibt einen Fall, in dem ein Datenbankzugriffsbefehl definiert wird, wobei der Datenbankzugriffsbefehl in ein Anwendungsprogramm (ein Kontaktplanprogramm) integriert wird, und der Datenbankzugriffsbefehl verwendet wird. Eine zweite Ausführungsform beschreibt einen Fall, in dem Einstellungsinformationen für den Datenbankbetrieb anstelle eines Datenbankzugriffsbefehls definiert werden, und es werden, wenn eine Datenbankleseanweisung ausgeführt wird, die Einstellungsinformationen für den Datenbankbetrieb gelesen und Prozesse analog zu denen der ersten Ausführungsform ausgeführt.
  • 13 stellt ein Blockdiagramm dar, das die funktionale Konfiguration einer programmierbaren Steuerung nach der zweiten Ausführungsform veranschaulicht. Die programmierbare Steuerung 10 nach der zweiten Ausführungsform unterscheidet sich von der nach der ersten Ausführungsform insofern, als dass kein Datenbankzugriffsbefehl in einem Anwendungsprogramm der Anwendungsprogramm-Speichereinheit 11 enthalten ist; und die Systemdaten-Speichereinheit 16 umfasst zusätzlich zum Speicherbereich 161 für Datenbankabfragebefehle einen Speicherbereich 162 für Datenbankzugriff-Einstellungsinformationen, in dem Datenbankzugriff-Einstellungsinformationen gespeichert sind. Wenn eine Datenbankleseanweisung eines Anwendungsprogramms (eines Kontaktplanprogramms) eingeschaltet wird, generiert die Recheneinheit 15 einen Datenbankabfragebefehl entsprechend den Datenbankzugriff-Einstellungsinformationen 162A.
  • 14 stellt ein Diagramm dar, das ein Beispiel für den Inhalt von Datenbankzugriff-Einstellungsinformationen nach der zweiten Ausführungsform veranschaulicht. Die Datenbankzugriff-Einstellungsinformationen 162A umfassen als Einstellelemente eine Zieldatenbank, eine Zieltabelle, eine Beziehung zwischen einem Feldnamen und einem Gerät, eine Lesebedingung und einen Ausführungsauslöser.
  • Die Zieldatenbank spezifiziert eine Operations-Zieldatenbank. Zum Beispiel spezifiziert die Zieldatenbank eine Adresse (eine IP-Adresse) eines Geräts (einer programmierbaren Steuerung), in der eine Operations-Zieldatenbank gespeichert ist, und einen Datenbanknamen eines durch die IP-Adresse spezifizierten Geräts. Die Zieltabelle spezifiziert eine Operations-Zieltabelle einer Zieldatenbank.
  • Die Beziehung zwischen einem Feldnamen und einem Gerät spezifiziert einen Feldnamen von aus einer Zieltabelle zu erfassenden Daten und einen Speicherplatz der erfassten Daten in der Nutzerdaten-Speichereinheit 12. Die Lesebedingung spezifiziert eine aus einer Zieltabelle auszulesenden Zielspalte (eine Zielaufzeichnung). Der Ausführungsauslöser spezifiziert eine Zeitvorgabe für das Speichern von Lesedaten in der Nutzerdaten-Speichereinheit 12.
  • Das heißt, es wird eine Operations-Zieldatenbank durch eine IP-Adresse und einen Datenbanknamen des Elements „Zieldatenbank” ermittelt und eine Operations-Zieltabelle der Operations-Zieldatenbank durch einen Tabellennamen des Elements „Zieltabelle” spezifiziert. Basierend auf einer durch einen Feldnamen des Elements „Lesebedingung” ermittelten Aufzeichnung werden Daten, die durch einen Feldnamen des Elements „Beziehung zwischen Feldnamen und Gerät” ermittelt wurden, als Lesedaten eingestellt, und diese Daten werden in einem Gerät eines Gerätespeichers gespeichert, der durch die Beziehung zwischen einem Feldnamen und einem Gerät spezifiziert ist. Die Daten werden gelesen, wenn ein Auslösegerät des Elements „Ausführungsauslöser” eingeschaltet wird.
  • 15 stellt ein Diagramm dar, das ein Beispiel für ein Anwendungsprogramm einer Datenbankleseanweisung nach der zweiten Ausführungsform veranschaulicht. Im Anwendungsprogramm werden, wenn eine Datenbankleseanweisung eingeschaltet wird (Schritt S91), ein Prozess zum Speichern von „K3”, das einen Produktnamen aus einer Produkttabelle in „D1212” der Nutzerdaten-Speichereinheit 12 kennzeichnet (Schritt S92), und ein Prozess zum Aktivieren von Bits eines Geräts „M0” (Schritt S93) ausgeführt.
  • Die Recheneinheit 15 generiert somit einen Datenbankabfragebefehl nach einer in den Datenbankzugriff-Einstellungsinformationen 162A eingestellten Bedingung und speichert diese Datenbankzugriff-Einstellungsinformationen 162A in der Systemdaten-Speichereinheit 16. 16 stellt ein Diagramm dar, das ein Beispiel für Befehlsumwandlungsinformationen beim Generieren eines Datenbankabfragebefehls aus den Datenbankzugriff-Einstellungsinformationen veranschaulicht. Wie in 16 veranschaulicht, ist in den Befehlsumwandlungsinformationen ein Parameter eines SQL-Satzes durch Verwendung des Inhalt der Datenbankzugriff-Einstellungsinformationen 162A definiert. Die Recheneinheit 15 generiert somit den in 11(a) veranschaulichten SQL-Satz.
  • Dabei stellt das Beispiel der Datenbankzugriff-Einstellungsinformationen 162A, das in 14 veranschaulicht ist, einen Fall dar, in dem das Element „Zieldatenbank” die programmierbare Steuerung 10 selbst spezifiziert. Die programmierbare Steuerung 10 ist jedoch gewöhnlich über ein Netzwerk angeschlossen und Daten können somit auch aus Datenbanken in den Datenbankspeichereinheiten 13 anderer programmierbarer Steuerungen 10 (oder anderer Geräte) erfasst werden.
  • Die 17 stellen Diagramme dar, die einen Fall für das Lesen von Daten aus anderen mit einem Netzwerk verbundenen programmierbaren Steuerungen schematisch veranschaulichen. 17(a) veranschaulicht schematisch eine Systemkonfiguration, in der programmierbare Steuerungen 10A und 10B mit einem Netzwerk 30 verbunden sind. In diesem Fall ist eine Datenbankspeichereinheit 13A vorgesehen, und die programmierbare Steuerung 10A mit einer IP-Adresse „192.168.1.1” und die programmierbare Steuerung 10B mit einer IP-Adresse „192.168.1.2” sind miteinander über das Netzwerk 30 verbunden. Wie in 17(b) veranschaulicht, werden in der programmierbaren Steuerung 10B die IP-Adresse und der Datenbankname der programmierbaren Steuerung 10A in einem Element „Zieldatenbank” der Datenbankzugriff-Einstellungsinformationen 152B eingestellt. Wenn somit ein Anwendungsprogramm, das in 17(c) dargestellt ist, gelesen wird, ist es möglich, auf eine Datenbank in der Datenbankspeichereinheit 13A der programmierbaren Steuerung zuzugreifen und Daten zu erfassen.
  • In der zweiten Ausführungsform wird eine Bedingung für den Datenbankzugriff in den Datenbankzugriff-Einstellungsinformationen eingestellt, und wenn eine Datenbankleseanweisung während der Ausführung eines Anwendungsprogramms eingeschaltet wird, generiert die Recheneinheit 15 einen Datenbankabfragebefehl nach den Datenbankzugriff-Einstellungsinformationen. Die Recheneinheit 15 greift anschließend nach dem generierten Datenbankabfragebefehl auf eine Datenbank zu. Auf diese Weise ist, anders als bei der ersten Ausführungsform, ein Datenbankzugriffsbefehl nicht in einem Kontaktplanprogramm definiert, und es ist somit zusätzlich zu den Effekten der ersten Ausführungsform für einen Benutzer der programmierbaren Steuerung 10 einfach, die Einstellungen für den Datenbankzugriff vorzunehmen.
  • Eine Bedingung für zu erfassende Daten kann in den Datenbankzugriff-Einstellungsinformationen spezifiziert werden, und es ist somit, anders als bei der ersten Ausführungsform, nicht notwendig, eine Bedingung zum Erfassen von Zieldaten in der Nutzerdaten-Speichereinheit 12 zu speichern. Folglich ist es im Vergleich zur ersten Ausführungsform möglich, die Kapazität der Nutzerdaten-Speichereinheit 12 noch weiter zu reduzieren.
  • Während in der zweiten Ausführungsform ein Fall des Lesens von Daten aus einer Datenbank beispielhaft beschrieben wurde, auch in einem Fall des Schreibens von Daten wie dem Hinzufügen von Daten zu einer Datenbank, dem Verändern von Daten in einer Datenbank und dem Löschen von Daten aus einer Datenbank, kann – wenn in den Datenbankzugriff-Einstellungsinformationen eine Schreibbedingung eingestellt ist – ein Datenbankabfragebefehl basierend auf den Datenbankzugriff-Einstellungsinformationen generiert werden.
  • Dritte Ausführungsform.
  • Eine dritte Ausführungsform beschreibt ein Engineering-Tool zum Einstellen eines Anwendungsprogramms in der ersten Ausführungsform oder von Datenbankzugriff-Einstellungsinformationen in der zweiten Ausführungsform.
  • 18 stellt ein Blockdiagramm dar, das ein Beispiel für eine funktionale Konfiguration eines Engineering-Tools schematisch veranschaulicht. Ein Engineering-Tool 50 umfasst eine Kommunikationseinheit 51, eine Eingabeeinheit 52, eine Anzeigeeinheit 53, einen Displayprozessor 54 für den Programmerstellungsbildschirm, einen Displayprozessor 55 für den Gerätespeicher-Einstellungsbildschirm, einen Displayprozessor 56 für den Einstellungsbildschirm für Einstellungsinformationen, eine Einstelleinheit 57 und eine Steuereinheit 58, die diese Prozessoren steuert.
  • Die Kommunikationseinheit 51 kommuniziert mit der programmierbaren Steuerung 10. Bei der Eingabeeinheit 52 handelt es sich um eine Eingabeschnittstelle mit einem Benutzer, wie eine Tastatur und ein Zeigegerät. So empfängt z. B. die Eingabeeinheit 52 Eingaben eines Datenbankzugriffsbefehls oder Datenbankzugriff-Einstellungsinformationen, die in der programmierbaren Steuerung 10 eingestellt sind. Bei der Anzeigeeinheit 53 handelt es sich um ein Gerät, das einem Benutzer Informationen anzeigt, zum Beispiel ein Flüssigkristallanzeigegerät.
  • Der Displayprozessor 54 für den Programmerstellungsbildschirm verfügt über eine Funktion zum Anzeigen eines Anwendungsprogramm-Erstellungsbildschirms auf der Anzeigeeinheit 53. Wenn ein Kontaktplanprogramm als Anwendungsprogramm verwendet wird, stellt der Displayprozessor 54 für den Programmerstellungsbildschirm dem Nutzer die Umgebung zum Erstellen eines Kontaktplanprogramms bereit. Wenn ein in der ersten Ausführungsform beschriebener Datenbankzugriffsbefehl als Anwendungsprogramm verwendet wird, verarbeitet der Displayprozessor 54 für den Programmerstellungsbildschirm einen Datenbankzugriffsbefehl so, dass dieser auf einem Programmerstellungsbildschirm verwendbar ist.
  • Der Displayprozessor 55 für den Gerätespeicher-Einstellungsbildschirm verfügt über eine Funktion zum Anzeigen eines Geräte-Einstellungsbildschirms auf der Anzeigeeinheit 53. Wie vorstehend beschrieben, werden ein Speicherplatz für die zu lesende Datenbank, eine Bedingung für aus der Datenbank auszulesende Daten, aus der Datenbank ausgelesene Daten und dergleichen in der Nutzerdaten-Speichereinheit 12 gespeichert. Bei dem Gerätespeicher-Einstellungsbildschirm handelt es sich um einen Bildschirm zur Vornahme der Einstellungen, wobei festgelegt wird, an welcher Adresse jede dieser Informationen gespeichert wird.
  • Der Displayprozessor 56 für den Gerätespeicher-Einstellungsbildschirm verfügt über eine Funktion zum Anzeigen eines Einstellungsbildschirms für Datenbankzugriff-Einstellungsinformationen auf der Anzeigeeinheit 53. In einem Fall, bei dem zum Beispiel unter Verwendung der in der zweiten Ausführungsform beschriebenen Datenbankzugriff-Einstellungsinformationen auf eine Datenbank zugegriffen wird, wird ein Einstellungsbildschirm für die Datenbankzugriff-Einstellungsinformationen, die in 14 veranschaulicht sind, auf der Anzeigeeinheit 53 angezeigt.
  • Die Einstelleinheit 57 stellt die Inhalte ein, die durch einen Benutzer über die Eingabeeinheit 52 eingestellt (eingegeben) und im Displayprozessor 54 für den Programmerstellungsbildschirm, dem Displayprozessor 55 für den Gerätespeicher-Einstellungsbildschirm oder dem Displayprozessor 56 für den Einstellungsbildschirm für Einstellungsinformationen in der programmierbaren Steuerung 10 über die Kommunikationseinheit 51 festgelegt werden.
  • Gemäß der dritten Ausführungsform werden im Displayprozessor 54 für den Programmerstellungsbildschirm, im Displayprozessor 55 für den Gerätespeicher-Einstellungsbildschirm und im Displayprozessor 56 für den Einstellungsbildschirm für Einstellungsinformationen einem Nutzer Bildschirme zum Einstellen eines Anwendungsprogramms, eines Gerätespeichers und Datenbankzugriff-Einstellungsinformationen angezeigt; und die Einstelleinheit 57 stellt die auf den jeweiligen Bildschirmen der programmierbaren Steuerung 10 eingestellten Inhalte ein. Deshalb ist es möglich, einen Datenbankzugriffsbefehl oder Datenbankzugriff-Einstellungsinformationen zu generieren, die es der programmierbaren Steuerung 10 ermöglichen, direkt auf eine Datenbank in der Datenbankspeichereinheit 13 zuzugreifen und gewünschte Daten zu erfassen und den generierten Befehl bzw. die generierten Informationen in der programmierbaren Steuerung 10 einzustellen.
  • Das Verfahren zum Auslesen von Daten aus einer Datenbank in einem Anwendungsprogramm einschließlich eines Datenbankzugriffsbefehls, oder ein Verfahren zum Auslesen von Daten aus einer Datenbank nach den Datenbankzugriff-Einstellungen in der programmierbaren Steuerung 10, die vorstehend beschrieben wurden, können als ein Programm konfiguriert werden, in dem ein Prozessablauf gespeichert ist. Das Programm kann so umgesetzt werden, dass es in der programmierbaren Steuerung 10 ausgeführt wird. Das Programm wird auf einem computerlesbaren Aufzeichnungsmedium wie einer Festplatte, einem SSD (Solid State Drive – Festkörperlaufwerk), einer Floppy® Disk, einer CD(Compact Disc)-ROM, einer MO (magnetooptischen Diskette) und einer DVD (Digital Versatile Disc oder Digital Video Disc) aufgezeichnet. In diesem Fall kann das Programm von einem Aufzeichnungsmedium durch die programmierbare Steuerung 10 gelesen werden oder kann von einem Aufzeichnungsmedium durch ein Informationsverarbeitungs-Endgerät wie dem mit der programmierbaren Steuerung 10 verbundenen Engineering-Tool 50 gelesen werden, in die programmierbare Steuerung 10 über ein Netzwerk installiert werden und von der programmierbaren Steuerung 10 gelesen werden. Darüber hinaus kann das Programm über ein Netzwerk (eine Kommunikationsleitung) wie das Internet verteilt werden.
  • Industrielle Anwendbarkeit
  • Wie vorstehend beschrieben ist die programmierbare Steuerung nach der vorliegenden Erfindung geeignet als programmierbare Steuerung, die Daten aus einer in einem Sekundärspeichergerät gespeicherten Datenbank ausliest und Prozesse an den gelesenen Daten ausführt.
  • Bezugszeichenliste
  • 10, 10A, 10B
    programmierbare Steuerung,
    11
    Anwendungsprogramm-Speichereinheit,
    12
    Nutzerdaten-Speichereinheit,
    13, 13A
    Datenbankspeichereinheit,
    14
    Systemprogramm-Speichereinheit,
    15
    Recheneinheit,
    16
    Systemdaten-Speichereinheit,
    30
    Netzwerk,
    50
    Engineering-Tool,
    51
    Kommunikationseinheit,
    52
    Eingabeeinheit,
    53
    Anzeigeeinheit,
    54
    Displayprozessor für den Programmerstellungsbildschirm,
    55
    Displayprozessor für den Gerätespeicher-Einstellungsbildschirm,
    56
    Displayprozessor für den Einstellungsbildschirm für Einstellungsinformationen,
    57
    Einstelleinheit,
    58
    Steuereinheit,
    121
    Speicherbereich für Suchbedingungen,
    122
    Sicherungsbereich,
    152B
    Datenbankzugriff-Einstellungsinformationen,
    161
    Speicherbereich für Datenbankabfragebefehle,
    162
    Speicherbereich für Datenbankzugriff-Einstellungsinformationen.

Claims (16)

  1. Programmierbare Steuerung, die Folgendes umfasst: eine Befehlsausführungseinheit, die mehrere Befehle in einem Anwendungsprogramm der Reihe nach ausführt; eine Datenbankspeichereinheit, in der eine Datenbank gespeichert ist, die Daten enthält, die in einem durch die Befehlsausführungseinheit in einem Tabellenformat ausgeführten Prozess verwendet werden; eine Einheit zum Generieren von Datenbankabfragebefehlen, die, wenn die Befehle einen Befehl zum Datenbankzugriff enthalten, den Zugriffsbefehl in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl umwandeln; und eine Datenbankverwaltungseinheit, die auf die Datenbank in der Datenbankspeichereinheit zugreift und durch den Datenbankabfragebefehl spezifizierte Daten erfasst.
  2. Programmierbare Steuerung nach Anspruch 1, wobei der Zugriffsbefehl als Parameter Folgendes enthält: Datenbankspezifizierungsinformationen, die die Datenbank in der Datenbankspeichereinheit spezifizieren, und eine Bedingung für Zugriffszielspezifizierung, die einen Namen einer Tabelle in der Datenbank enthält.
  3. Programmierbare Steuerung nach Anspruch 2, wobei der Zugriffsbefehl ein Befehl zum Erfassen gewünschter Daten aus der Datenbank ist und weiterhin einen Speicherplatz enthält, an dem ein Suchergebnis mit der Bedingung für Zugriffszielspezifizierung als Parameter gespeichert ist, und die Bedingung für Zugriffszielspezifizierung ein Feld von in der Tabelle erfassten Daten enthält.
  4. Programmierbare Steuerung nach Anspruch 2, wobei der Zugriffsbefehl ein Befehl zum Schreiben von Daten in eine Datenbank ist und weiterhin die als Parameter zu schreibenden Daten enthält und die Bedingung für Zugriffszielspezifizierung ein Feld der Tabelle enthält, in das die Daten geschrieben werden sollen.
  5. Programmierbare Steuerung nach Anspruch 2, wobei jede der Bedingungen für Zugriffszielspezifizierung an einer vorgegebenen Stelle der Nutzerdaten-Speichereinheit gespeichert wird und der Parameter in der Zugriffszielbedingung der Nutzerdaten-Speichereinheit als ein Speicherplatz dargestellt ist.
  6. Programmierbare Steuerung nach Anspruch 2, wobei die Einheit zum Generieren von Datenbankabfragebefehlen den Datenbankabfragebefehl aus dem Zugriffsbefehl nach den Befehlsumwandlungsinformationen generiert, in denen ein Parameter des Zugriffsbefehls einem Parameter des Datenbankabfragebefehls entspricht.
  7. Programmierbare Steuerung, die Folgendes umfasst: eine Befehlsausführungseinheit, die mehrere Befehle in einem Anwendungsprogramm der Reihe nach ausführt; eine Datenbankspeichereinheit, in der eine Datenbank gespeichert ist, die Daten enthält, die in einem durch die Befehlsausführungseinheit in einem Tabellenformat ausgeführten Prozess verwendet werden; eine Systemdaten-Speichereinheit, in der Datenbankzugriff-Einstellungsinformationen gespeichert sind, die eine Bedingung zum Erfassen von in der Datenbank in der Datenbankspeichereinheit enthaltenen Daten festlegen; eine Einheit zum Generieren von Datenbankabfragebefehlen, die, wenn die Befehle eine Anweisung zum Zugriff auf eine Datenbank enthalten, die Datenbankzugriff-Einstellungsinformationen in der Systemdaten-Speichereinheit in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl umwandelt; und eine Datenbankverwaltungseinheit, die auf die Datenbank in der Datenbankspeichereinheit zugreift und auf durch den Datenbankabfragebefehl spezifizierte Daten zugreift.
  8. Programmierbare Steuerung nach Anspruch 7, wobei die Datenbankzugriff-Einstellungsinformationen Folgendes enthalten: Datenbankspezifizierungsinformationen, die die Datenbank in der Datenbankspeichereinheit spezifizieren, und eine Bedingung für Zugriffszielspezifizierung, die einen Namen einer Tabelle der Datenbank enthält.
  9. Programmierbare Steuerung nach Anspruch 8, wobei die Datenbankzugriff-Einstellungsinformationen Informationen zum Ausführen eines Befehl zum Erfassen gewünschter Daten aus der Datenbank darstellen und weiterhin einen Speicherplatz enthalten, an dem ein Suchergebnis mit der Bedingung für Zugriffszielspezifizierung gespeichert ist und die Bedingung für Zugriffszielspezifizierung ein Feld von in der Tabelle erfassten Daten enthält.
  10. Programmierbare Steuerung nach Anspruch 9, wobei die Einheit zum Generieren von Datenbankabfragebefehlen den Datenbankabfragebefehl aus den Datenbankzugriff-Einstellungsinformationen entsprechend Befehlsumwandlungsinformationen generiert, in denen die Bedingung für Zugriffszielspezifizierung und der Speicherplatz der Datenbankzugriff-Einstellungsinformationen einem Parameter des Datenbankabfragebefehls entsprechen.
  11. Programmierbare Steuerung nach Anspruch 8, wobei die Datenbankzugriff-Einstellungsinformationen Informationen zum Ausführen eines Befehls zum Schreiben von Daten in die Datenbank darstellen und weiterhin die zu schreibenden Daten umfassen und die Bedingung für Zugriffszielspezifizierung ein Feld der Tabelle umfasst, in das die Daten geschrieben werden sollen.
  12. Programmierbare Steuerung nach Anspruch 11, wobei die Einheit zum Generieren von Datenbankabfragebefehlen den Datenbankabfragebefehl aus den Datenbankzugriff-Einstellungsinformationen nach Befehlsumwandlungsinformationen generiert, in denen die Bedingung für Zugriffszielspezifizierung und die zu schreibenden Daten der Datenbankzugriff-Einstellungsinformationen einem Parameter des Datenbankabfragebefehls entsprechen.
  13. Programmierbare Steuerung nach Anspruch 8, wobei die programmierbare Steuerung mit einer weiteren programmierbaren Steuerung verbunden ist, die mittels eines Netzwerks über ein Datenbank verfügt, und die Datenbankspezifizierungsinformationen mit der Datenbank in der Datenbankspeichereinheit der weiteren programmierbaren Steuerungen, die über ein Netzwerk angeschlossen ist, spezifiziert werden können.
  14. Programm für den Zugriff auf Tabellendaten, das mit einer programmierbaren Steuerung verwendet wird, wobei die programmierbare Steuerung eine Nutzerdaten-Speichereinheit und eine Datenbankspeichereinheit umfasst, in der eine Datenbank gespeichert ist, die Daten umfasst, die in einem Prozess der Ausführung eines normalen Befehls in einem Tabellenformat verwendet werden, die programmierbare Steuerung Befehle eines Anwendungsprogramms wiederholt der Reihe nach ausführt, angefangen von einem ersten normalen Befehl bis zu einem END-Befehl, der am Ende der Befehle beschrieben ist, und auf die Datenbank im Prozess der Ausführung eines normalen Befehls zugreift, und die programmierbare Steuerung auf die Datenbank zugreift, wenn der normale Befehl ausgeführt wird, das Programm für den Zugriff auf Tabellendaten bei Ausführung die programmierbare Steuerung dazu veranlasst, Folgendes auszuführen: einen Ablauf zum Generieren von Datenbankabfragebefehlen, bei dem, wenn der normale Befehl einen Befehl zum Datenbankzugriff umfasst, der Zugriffsbefehl in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl umgewandelt wird; und einen Datenbankverwaltungsablauf, der Folgendes umfasst: Zugriff auf die Datenbank in der Datenbankspeichereinheit und Zugriff auf Daten in der durch den Datenbankabfragebefehl spezifizierten Datenbank, um einen vorgegebenen Prozess auszuführen.
  15. Programm für den Zugriff auf Tabellendaten, das mit einer programmierbaren Steuerung verwendet wird, wobei die programmierbare Steuerung Folgendes umfasst: eine Nutzerdaten-Speichereinheit; eine Datenbankspeichereinheit, in der eine Datenbank gespeichert ist, die Daten enthält, die in einem Prozess zum Ausführen eines normalen Befehls in einem Tabellenformat verwendet werden; und eine Systemdaten-Speichereinheit, in der Datenbankzugriff-Einstellungsinformationen gespeichert werden, die eine Bedingung zum Erfassen von in der Datenbank in der Datenbankspeichereinheit enthaltenen Daten einstellen, die programmierbare Steuerung Befehle eines Anwendungsprogramms wiederholt der Reihe nach ausführt, angefangen von einem ersten normalen Befehl bis zu einem END-Befehl, der am Ende der Befehle beschrieben ist, und die programmierbare Steuerung auf die Datenbank zugreift, wenn der normale Befehl ausgeführt wird, wobei das Programm für den Zugriff auf Tabellendaten bei Ausführung die programmierbare Steuerung dazu veranlasst, Folgendes auszuführen: Ablauf zum Generieren von Datenbankabfragebefehlen, bei dem, wenn der normale Befehl eine Anweisung zum Datenbankzugriff enthält, die Datenbankzugriff-Einstellungsinformationen in der Systemdaten-Speichereinheit in einen in einer Datenbankabfragesprache beschriebenen Datenbankabfragebefehl umgewandelt werden; und einen Datenbankverwaltungsablauf, der Folgendes umfasst: Zugriff auf die Datenbank in der Datenbankspeichereinheit und Zugriff auf durch den Datenbankabfragebefehl spezifizierte Daten, um einen vorgegebenen Prozess auszuführen.
  16. Peripheriegerät einer programmierbaren Steuerung, das Folgendes umfasst: eine Eingabeeinheit; eine Anzeigeeinheit; eine Kommunikationseinheit, die mit der programmierbaren Steuerung verbunden ist; einen Displayprozessor für den Programmerstellungsbildschirm, der einen Programmerstellungsbildschirm zum Erstellen eines Anwendungsprogramms anzeigt, das durch die programmierbare Steuerung auf der Anzeigeeinheit ausgeführt wird; eine Einstelleinheit, die das vom Displayprozessor für den Programmerstellungsbildschirm erstellte Anwendungsprogramm in der programmierbaren Steuerung einstellt, wobei ein Zugriffsbefehl für den Zugriff auf eine Datenbank definiert ist, die Daten enthält, die in einem Prozess verwendet werden, der von der programmierbaren Steuerung in einem Tabellenformat als Befehl ausgeführt wird, der das von der programmierbaren Steuerung ausgeführte Anwendungsprogramm konfiguriert, wobei der Displayprozessor für den Programmerstellungsbildschirm den Programmerstellungsbildschirm anzeigt, der den von einem Benutzer durch die Eingabeeinheit auf der Anzeigeeinheit generierten Zugriffsbefehl umfasst und die Einstelleinheit das Anwendungsprogramm einschließlich des Zugriffsbefehls in der programmierbaren Steuerung einstellt.
DE112013006971.7T 2013-05-17 2013-05-17 Programmierbare Steuerung, deren Peripheriegerät und Programm für Zugriff auf Tabellendaten der programmierbaren Steuerung Granted DE112013006971T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/063855 WO2014184962A1 (ja) 2013-05-17 2013-05-17 プログラマブルコントローラとその周辺装置、およびプログラマブルコントローラのテーブルデータアクセスプログラム

Publications (1)

Publication Number Publication Date
DE112013006971T5 true DE112013006971T5 (de) 2016-02-18

Family

ID=51031279

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112013006971.7T Granted DE112013006971T5 (de) 2013-05-17 2013-05-17 Programmierbare Steuerung, deren Peripheriegerät und Programm für Zugriff auf Tabellendaten der programmierbaren Steuerung

Country Status (7)

Country Link
US (1) US9841744B2 (de)
JP (1) JP5518266B1 (de)
KR (1) KR101821032B1 (de)
CN (1) CN105209986B (de)
DE (1) DE112013006971T5 (de)
TW (1) TWI509377B (de)
WO (1) WO2014184962A1 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015186178A1 (ja) * 2014-06-02 2015-12-10 三菱電機株式会社 プログラマブルコントローラシステム、プログラマブルコントローラ、プログラム表示装置、プログラムの表示方法
WO2016009477A1 (ja) * 2014-07-14 2016-01-21 三菱電機株式会社 制御装置
WO2017009886A1 (ja) * 2015-07-10 2017-01-19 三菱電機株式会社 データ取得装置、データ取得方法及びデータ取得プログラム
JP6627571B2 (ja) * 2016-02-26 2020-01-08 オムロン株式会社 プログラマブルコントローラ、プログラマブルコントローラの制御方法、プログラマブルコントローラの制御プログラム
US20190121816A1 (en) * 2017-04-17 2019-04-25 Mitsubishi Electric Corporation Program creating device
JP6737298B2 (ja) 2018-03-15 2020-08-05 オムロン株式会社 コントローラ、制御方法、および制御プログラム
JP6720994B2 (ja) 2018-03-15 2020-07-08 オムロン株式会社 制御システム、コントローラ、および制御方法
CN108763536B (zh) 2018-05-31 2020-04-14 阿里巴巴集团控股有限公司 数据库访问方法及装置
JP7180158B2 (ja) * 2018-07-13 2022-11-30 オムロン株式会社 プログラム開発装置、およびコントローラ
KR102150335B1 (ko) * 2019-01-17 2020-09-01 주식회사 쓰리데이즈 데이터베이스 관리 시스템
JP7044086B2 (ja) 2019-03-15 2022-03-30 オムロン株式会社 制御システム、制御方法、および制御プログラム
CN112233498B (zh) * 2020-10-14 2023-01-06 烟台鼎钰电子科技有限公司 一种表格式可编程显示控制器
CN112327744B (zh) * 2020-11-20 2021-10-22 深圳市海浦蒙特科技有限公司 用于可编程逻辑控制器的梯形图与指令表互相转换方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH103303A (ja) 1996-06-14 1998-01-06 Mitsubishi Electric Corp インターフェース装置
JP2000267703A (ja) 1999-03-15 2000-09-29 Omron Corp プログラマブルコントローラ
JP3155253B2 (ja) 1999-06-29 2001-04-09 株式会社デジタル データ転送システム、データ転送方法およびデータ転送のためのプログラムが記録された記録媒体
JP2002023812A (ja) 2000-07-05 2002-01-25 Mitsubishi Materials Corp 自動制御システムおよび自動制御方法
CN100407215C (zh) * 2002-09-30 2008-07-30 东京毅力科创株式会社 用于监视和控制半导体生产过程的方法和装置
US7467018B1 (en) * 2002-11-18 2008-12-16 Rockwell Automation Technologies, Inc. Embedded database systems and methods in an industrial controller environment
JP2004280664A (ja) * 2003-03-18 2004-10-07 Yaskawa Electric Corp ビット演算装置
JP4244677B2 (ja) 2003-03-31 2009-03-25 三菱電機株式会社 Faコントローラ
JP2007080286A (ja) * 2006-11-13 2007-03-29 Omron Corp データ収集装置
US7835806B2 (en) * 2007-01-29 2010-11-16 Rockwell Automation Technologies, Inc. Method for indirect access to controller data using name stored in string tag
JP4895036B2 (ja) 2007-05-14 2012-03-14 横河電機株式会社 分散型制御装置
US20100198781A1 (en) 2007-05-29 2010-08-05 Tsutomu Yuine Plc having communication function
JP2009086863A (ja) * 2007-09-28 2009-04-23 Koyo Electronics Ind Co Ltd フロントエンドサーバ機能内蔵プログラマブルコントローラ
JP5197431B2 (ja) 2009-02-23 2013-05-15 三菱電機株式会社 プログラマブルコントローラ
JP2010250584A (ja) 2009-04-16 2010-11-04 Koyo Electronics Ind Co Ltd プログラマブル/ロジック&rfidコントローラ
CN102193922B (zh) * 2010-03-04 2013-07-24 杭州华三通信技术有限公司 一种对数据库进行访问的方法和装置
JP5549556B2 (ja) * 2010-11-16 2014-07-16 富士電機株式会社 データ収集システム、データ収集システムの異常要因判定方法
US9128479B2 (en) * 2011-11-11 2015-09-08 Rockwell Automation Technologies, Inc. Automation control and monitoring system and method

Also Published As

Publication number Publication date
KR101821032B1 (ko) 2018-01-22
US9841744B2 (en) 2017-12-12
WO2014184962A1 (ja) 2014-11-20
KR20160006738A (ko) 2016-01-19
JPWO2014184962A1 (ja) 2017-02-23
CN105209986A (zh) 2015-12-30
US20160098028A1 (en) 2016-04-07
TW201445267A (zh) 2014-12-01
JP5518266B1 (ja) 2014-06-11
TWI509377B (zh) 2015-11-21
CN105209986B (zh) 2017-03-08

Similar Documents

Publication Publication Date Title
DE112013006971T5 (de) Programmierbare Steuerung, deren Peripheriegerät und Programm für Zugriff auf Tabellendaten der programmierbaren Steuerung
DE112012006925B4 (de) Systemkonstruktions-Unterstützungswerkzeug und System
DE102004025875B4 (de) Funktionsblock mit Boolescher Logik
DE102011053846A1 (de) Verfahren und Vorrichtung zum Verwalten von Prozesssteuerungssuchergebnissen
DE112017006164T5 (de) Differenzvergleich von ausführbaren Datenflussdiagrammen
CA2497271C (en) System and method for managing a manufacturing processing operation
DE102013215009A1 (de) Verfahren und System zur Optimierung der Datenübertragung
DE102010036914A1 (de) Systemkonfiguration unter Verwendung von Vorlagen
DE112013007000T5 (de) Überwachungssteuerungsvorrichtung
DE102007043193A1 (de) Kompakte Batch-Darstellungsverfahren zur Verwendung in Batch-Prozessen
DE112010005963T5 (de) Protokollierungseinstellvorrichtung, Protokollierungseinstellverfahren und Aufzeichnungsmedium
DE112016004630T5 (de) System und Verfahren zum Bereitstellen einer Visualisierung von Sicherheitsereignissen eines Prozessleitsystems im Zeitverlauf
DE102010042288A1 (de) Vorrichtung und Verfahren zum maschinellen Erstellen eines Prozessdiagramms
DE112014007254T5 (de) Unterstützungswerkzeug zur Informationssystemkonstruktion und Unterstützungsprogramm zur Informationssystemkonstruktion
DE60305684T2 (de) Verfahren und vorrichtung zur vereinfachten systemkonfiguration
DE102017122119A1 (de) Informationsprozessor
DE102021104735A1 (de) Log-Daten Analyse
DE10063514A1 (de) Verwendung einer gespeicherten Prozedur zum Zugriff auf Indexkonfigurationsdaten in einem fernen Datenbankverwaltungssystem
EP2329374A1 (de) Testmodul und verfahren zum testen einer o/r-abbildungs-middleware
DE2102935A1 (de) Verfahren und Vorrichtung zur Be Stimmung der Leistungsfähigkeit von Maschinenprogrammen
DE102018124297A1 (de) Systeme und Verfahren zum Konfigurieren und Darstellen einer Anzeige-Navigationshierarchie in einer Prozessanlage
EP2136303B1 (de) Verfahren zum Steuern einer automatischen Aktualisierung von Datensichten in einem Computersystem
DE102017127400A1 (de) Festschreiben von technischen Entwicklungsdaten
DE102008043198A1 (de) Feldgerät der Prozessautomatisierungstechnik
DE102016121018A1 (de) Verfahren zum Erzeugen einer Datenbank unter Verwendung einer Verweistabelle

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division