DE4210015C2 - Hochgeschwindigkeitszähleinrichtung und Verfahren zum Konfigurieren der Einrichtung - Google Patents

Hochgeschwindigkeitszähleinrichtung und Verfahren zum Konfigurieren der Einrichtung

Info

Publication number
DE4210015C2
DE4210015C2 DE4210015A DE4210015A DE4210015C2 DE 4210015 C2 DE4210015 C2 DE 4210015C2 DE 4210015 A DE4210015 A DE 4210015A DE 4210015 A DE4210015 A DE 4210015A DE 4210015 C2 DE4210015 C2 DE 4210015C2
Authority
DE
Germany
Prior art keywords
counter
output
input
outputs
receiving
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.)
Expired - Fee Related
Application number
DE4210015A
Other languages
English (en)
Other versions
DE4210015A1 (de
Inventor
Gary Parker
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.)
Allen Bradley Co LLC
Original Assignee
Allen Bradley Co LLC
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 Allen Bradley Co LLC filed Critical Allen Bradley Co LLC
Publication of DE4210015A1 publication Critical patent/DE4210015A1/de
Application granted granted Critical
Publication of DE4210015C2 publication Critical patent/DE4210015C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers
    • 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/21Pc I-O input output
    • G05B2219/21012Configurable I-O
    • 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/21Pc I-O input output
    • G05B2219/21108Module, I-O module consisting of counters and comparators
    • 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/25Pc structure of the system
    • G05B2219/25432Multiplex
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Description

Die Erfindung bezieht sich auf eine Hochgeschwindig­ keitszähleinrichtung, die insbesondere in Verbindung mit Industriesteuerungssystemen, wie programmierbaren Steue­ rungen, angewendet werden soll.
Industriesteuerungssysteme sind beispielsweise aus den nachstehenden Patentschriften bekannt: US 38 10 118 A, US 39 42 158 A, US 41 65 534 A und US 44 42 504 A. Solche Industriesteuerungssysteme sind typischerweise mit Indu­ strieanlagen verbunden, beispielsweise Fertigungsstraßen oder Werkzeugmaschinen. Aufgabe der Industriesteuerungs­ systeme ist es, solche Industrieanlagen gemäß einem ge­ speicherten Programm zu betreiben. Das gespeicherte Pro­ gramm, das auf einer zentralen Verarbeitungseinheit des Systems abläuft, die Steuergerät oder Steuerung genannt wird, enthält Anweisungen, die, wenn sie ausgeführt werden, den Zustand ausgewählter Eingänge, die dem Sy­ stem zugeführt werden und von Fühlvorrichtungen oder Sensoren an der gesteuerten Anlage stammen, überprüfen und ausgewählte Ausgänge des Systems ein- oder abschalten, um auf diese Weise Vorrichtungen an der gesteuerten An­ lage zu betätigen.
Bei den Eingängen zu dem System kann es sich um ein­ zelne Binärsignale handeln, die beispielsweise von Schaltern stammen, welche Grenzen von Prozeßvariablen erfassen können, wie Bewegung, Temperatur, Zeit oder andere veränderliche Größen. Bei den Eingängen kann es sich aber auch um analoge Abmaße der Prozeßvariablen selbst handeln, die dann im allgemeinen zum Zwecke der Verarbeitung in die binäre Digitalform überführt werden. Gleichermaßen kann es sich bei den Ausgängen des Systems entweder um binäre Ausgänge handeln, wie sie beispiels­ weise von mechanischen oder elektronischen Relais bzw. Festkörperrelais erzeugt werden, oder um analoge Aus­ gänge, wie sie von einem Digital/Analog-Umsetzer erzeugt werden.
Eine Prozeßvariable, beispielsweise die Anzahl längs einer Fertigungsstraße bewegter Gegenstände, kann von der Steuerung mit Hilfe einer Fühlvorrichtung oder eines Sensors gezählt werden, der für jeden an einer bestimmten Stelle vorbeibewegten Gegenstand einen einzigen, zur Steuerung führenden digitalen Eingang setzt und rücksetzt. Die Änderungen in diesem Eingang werden mit Hilfe des Programms festgestellt, das in der Steuerung abläuft.
Diese Art und Weise der Zählung hat zwei beträchtli­ che Nachteile. Der erste besteht darin, daß die Steuerung nur relativ niedrige Zählgeschwindigkeiten oder Zählraten verkraften kann. Typischerweise werden nämlich die Eingänge und Ausgänge der Steuerung einzeln aufeinanderfolgend ab­ getastet, wobei während jedes Abtastzyklus der Zustand aller Ausgänge und Eingänge sequentiell eingeschrieben bzw. ausgelesen wird. Ist die Zählrate höher als die Ab­ tastrate, gehen einige Zählereignisse oder Zählimpulse verloren.
Bei vielen Anwendungen, insbesondere bei solchen, bei denen die zu zählenden Gegenstände zahlreiche Zähl­ posten oder Zählelemente, wie Impulse von einem hochauf­ lösenden Codierer oder dergleichen, sind, ist die durch die Abtastrate der Steuerung auferlegte Grenze unannehm­ bar niedrig. Da die tatsächliche Abtastrate davon abhängt, wie viele Eingänge und Ausgänge abgetastet werden müssen, ist es bei der Angabe der maximalen Zählrate erforderlich, diejenige Abtastzeit zugrundezulegen, die für den so­ genannten schlimmsten Fall bei maximaler Anzahl mögli­ cher Eingänge und Ausgänge auftritt. Dieser schlimmste Fall muß auch eine mögliche zukünftige Erweiterung der Steuerung mit zusätzlichen Eingängen und Ausgängen in Betracht ziehen.
Der zweite Nachteil der oben beschriebenen Art und Weise des Zählens besteht darin, daß die Steuerung in­ folge der Notwendigkeit, den zum Zählen gedachten beson­ deren Eingang wiederholt überprüfen zu müssen und einen Teil ihres Programms zum Zählen des damit verbundenen Eingangssignals wiederholt ausführen zu müssen, von der Durchführung anderer Steuerungsaufgaben abgehalten wird.
Es ist daher bereits bekannt, ein separates Binär­ zählermodul zu verwenden, das zum unabhängigen Zählen solcher Prozeßvariablen mit der Steuerung in Verbindung steht. Der vom Zähler bereitgestellte Binärzählwert kann dann von der Steuerung weniger häufig gelesen werden und wird dahingehend untersucht, ob ein vorgegebener Zählwert erreicht worden ist.
Eine Verbesserung bei der Verwendung eines separaten Zählermoduls besteht darin, einen Zähler mit einem oder mehreren Vergleichern oder Komparatoren zusammenarbeiten zu lassen, und zwar mit dem Ziel, den Zählwert fortwäh­ rend in bezug auf Schwellenwerte zu bewerten und ein Binär­ signal zu erzeugen, das angibt, ob oder ob nicht der Zählwert den Schwellenwert überschritten hat. Ein derartiger Einsatz des Komparators befreit die Steuerung davon, den Mehrbitzählwert wiederholt zu laden und ihr mit einem Schwellenwert in ihrem Programm zu vergleichen. Der ge­ schilderte Einsatz des Komparators gestattet es der Steuerung, lediglich dasjenige Einzelbit des Komparator­ ausgangs zu überprüfen, das den Zustand des Zählwerts in bezug auf den Schwellenwert darstellt.
Bei komplexeren Systemen mag es notwendig sein, den Zählwert eines Zählers in Vergleich zu einer Rehe vor Schwellenwerten zu setzen. So kann es beispielsweise er­ wünscht sein, daß das in der Steuerung ablaufende Pro­ gramm eine erste Aufgabe ausführen soll, sobald der Zähl­ wert einen ersten Schwellenwert erreicht hat, und eine zweite Aufgabe erst dann ausführen soll, wenn der Zählwert einen zweiten Schwellenwert erreicht hat, usw. Zu diesem Zweck könnte man jedem Zähler mehrere Komparatoren zuord­ nen, so daß verschiedene Schwellenwerte berücksichtigt werden können.
Schließlich besteht der Nachteil der Implementie­ rung der Zählfunktion als "Hardware", d. h. als diskrete Schaltung, anstelle von "Software" der Steuerung darin, daß die Zählfunktion viel weniger flexibel ist. Die An­ zahl der Schwellenwerte ist durch die Zählerschaltung festgelegt und kann nicht erhöht werden, wie es in Ab­ hängigkeit von einer Anwendung erforderlich sein mag. Aus diesem Grunde hat es sich als praktisch erwiesen, jedem Zähler eine Reihe zusätzlicher Komparatoren für zusätz­ lich benötigte Schwellenwerte zuzuordnen. Im Handel sind daher Zähler mit bis zu vier verschiedenen Schwellenwerten erhältlich. Diese Anzahl der Schwellenwerte mag jedoch für manche Anwendungen immer noch zu gering sein. Darüber hinaus können die Zusatzkosten für die nicht ausgenutzten Schwellenwertschaltungen in Fällen beachtlich sein, bei denen lediglich ein einziger Schwellenwert benötigt wird.
Zum allgemeinen Stand der Technik sei ferner noch auf die US 4 305 123 hinge­ wiesen. Dort ist eine Steuerung für die Gabel oder ein anderes Hilfswerkzeug eines Industriefahrzeuges offenbart. Die Bewegung der Gabel wird mit einem Wandler aufgenommen, der Signale liefert, welche die Inkremente der Bewegung darstellen. Die Inkremente werden in mehreren Zählern gezählt, die unterschiedlich zurückge­ setzt werden. Die Zählwerte werden mit gespeicherten Zählwerten verglichen, um Steuersignale zu erzeugen. Die Vergleichswerte werden aus einer Vielzahl gespei­ cherter Werte entnommen, die wiederum auf Zählwerte zurückgehen, welche für diesen Zweck aus den Zählern in eine entsprechende Mehrzahl Speicher transferiert wurden.
Aufgabe der Erfindung ist es, eine Hochgeschwindig­ keitszähleinrichtung zu schaffen, mit der sich eine Zähl­ geschwindigkeit erzielen läßt, wie sie mit einer "Hardware"- Implementation der Zählfunktion erreichbar ist, und die dennoch von einer Flexibilität ist, wie sie sich normaler­ weise aufgrund einer "Software"-Implementation der Zähl­ funktion erzielen läßt.
Diese Aufgabe wird nach der Erfindung prinzipiell dadurch gelöst, daß die Zählfunktion auf eine Reihe dis­ kreter logischer Einheiten aufgeteilt wird, die in Hard­ ware implementiert werden, und daß den diskreten logi­ schen Einheiten eine programmierbare Busstruktur zuge­ ordnet ist, die es gestattet, daß die verschiedenen lo­ gischen Einheiten flexibel miteinander verbunden werden können. Das Ergebnis der Erfindung ist daher ein Zähler, der programmierbar in effizienter Weise konfiguriert werden kann und daher im Hinblick auf eine Reihe von Zählanwendungen einen bestehenden Bedarf deckt.
Insbesondere ist nach der Erfindung ein Satz un­ abhängiger Zähler vorgesehen, die an einen Bus Zähler­ ausgänge liefern. Über den Bus gelangen die Zähleraus­ gänge zu Multiplexern, die einen Zählerausgang an den Eingang eines digitalen Komparators eines Satzes digi­ taler Komparatoren weiterleiten, deren Anzahl derjenigen der Multiplexer entspricht. Den anderen Eingang für jeden digitalen Komparator liefert ein programmierbares Register, in dem ein Schwellenwert enthalten ist.
Nach der Erfindung können die Komparatoren irgend­ einem der Zähler flexibel zugeordnet werden, so daß ein Zähler die maximale Anzahl bereitgestellter Schwellenwerte oder irgendeine Anzahl niedriger als das Maximum aus­ nutzen kann. Die Multiplexer und die Busstruktur erlauben es, daß diese Zuordnung unter der Leitung der Steuerung ausgeführt werden kann, der das Zählermodul zugeordnet ist. Auf diese Weise hat der Zähleraufbau ein wirksames Ausmaß an programmierbarer Flexibilität.
Die Ausgänge der Vergleicher kann man über eine UND/ODER-Torschaltung miteinander verknüpfen, um einen Ausgang bereitzustellen, der angibt, ob ein besonderer Zählerausgang innerhalb eines Bereiches ist, der durch zwei oder mehrere Schwellenwerte definiert sein kann.
Die Erfindung sieht daher einen zusätzlichen Grad an unabhängiger Verarbeitung des Zählwerts vor und be­ freit auf diese Weise die Steuerung von einfachen, je­ doch zeitaufwendigen Booleschen Operationen, die zum Erzeugen eines Signals erforderlich sind, das einen Be­ reich anzeigt oder durch eine Kombination von Schwellen­ werten definiert ist. Die Verwendung einer UND/ODER-Tor­ schaltung liefert ein hohes Maß an Flexibilität beim Er­ stellen dieses Bereiches.
Die Multiplexer können durch Daten in zugeordneten Registern gesteuert werden, und diese Multiplexerregister als auch die Register, die die Schwellenwerte speichern, können von der Steuerung beschrieben oder geladen werden.
Insbesondere kann nach einem erfindungsgemäßen Ver­ fahren der Zähler mit Hilfe von Datenwörtern konfi­ guriert werden, die in einer Anzahl von Datenblöcken enthalten sind, welche zu diesen Registern übertra­ gen werden. Hierbei ist jeder Datenblock jeweils einem Komparatorpaar zugeordnet, an das eine UND/ODER-Tor­ schaltung angeschlossen ist. Ein erstes Wort des Daten­ blocks gibt einen ersten Schwellenwert für den ersten Komparator einer zugeordneten UND/ODER-Torschaltung an, und ein zweites Wort des Datenblocks gibt einen zweiten Schwellenwert für den zweiten Komparator an, der derselben UND/ODER-Torschaltung zugeordnet ist. Der zweite Schwellenwert zusammen mit dem ersten Schwellenwert definieren einen Bereichsausgang. Ein drittes Datenwort gibt an, von welchem unabhängigen Zähler oder von welchen unabhängigen Zählern der Zähler­ ausgang stammt, der den ersten und zweiten Komparatoren zugeführt wird.
Nach der Erfindung wird somit eine natürliche Be­ fehlsstruktur geschaffen, die dazu dient, die Architek­ tur eines Hardwarezählers in Abhängigkeit von Befehlen oder Anweisungen einer Steuerung zu ändern.
Im folgenden wird die Erfindung an Hand von Zeich­ nungen beispielshalber erläutert. Es zeigen:
Fig. 1 eine bildliche Darstellung einer Indu­ striesteuerung, die mit einem entfernt angeordneten Baugruppenträger für Eingabe/Ausgabe-Module einschließ­ lich eines nach der Erfindung ausgebildeten Zählermoduls in Verbindung steht,
Fig. 2 eine vereinfachte schematische Darstellung des im Zusammenhang mit Fig. 1 genannten Zählermoduls zum Aufzeigen der Verbindungen zwischen einem steuernden Mikroprozessor und der Zählersystemschaltungsanordnung,
Fig. 3 eine vereinfachte schematische Darstellung der Zählersystemschaltungsanordnung nach Fig. 2 zum Dar­ stellen der Datenwege zu und von der Zähleranordnung,
Fig. 4 eine vereinfachte schematische Darstellung zum Aufzeigen der Zähleranordnung nach Fig. 3 und der Busarchitektur, die eine Gruppe unabhängiger Zähler mit verschiedenen Ausgängen verbindet,
Fig. 5 ein Blockschaltbild eines der Zähler nach Fig. 4,
Fig. 6, 7 und 8 grafische Darstellungen zum Auf­ zeigen verschiedener Beispiele für Ausgänge von dem im Zusammenhang mit Fig. 1 genannten Zählermodul,
Fig. 9 eine bildliche Darstellung eines Daten­ blocks, der zur Konfiguration des im Zusammenhang mit Fig. 1 genannten Zählermoduls verwendet wird, und
Fig. 10 ein Zeitdiagramm zur Darstellung des relativen zeitlichen Auftretens von Signalen, die zur Steuerung der Zähler nach Fig. 5 verwendet werden.
Fig. 1 zeigt eine Industriesteuerung oder ein Industriesteuerungssystem, das zur Verwendung mit einer nach der Erfindung ausgebildeten Zählerschaltung geeignet ist und eine programmierbare Steuerung 10 enthält, die über eine Rückebene 12 mit benachbarten Eingabe/Ausgabe- Modulen (E/A-Modulen) 14 innerhalb eines Modul- oder Baugruppenträgers 16, bei dem es sich um ein Gestell oder einen Rahmen handeln kann, in Verbindung steht. Zu­ sätzliche entfernt angeordnete E/A-Module 18 können in einem oder mehreren entfernt angeordneten E/A-Trägern 20, d. h. Modul- oder Baugruppenträgern wie Gestellen oder Rahmen, enthalten sein, die mit der programmierbaren Steuerung 10 über eine serielle Fern-E/A-Verbindung 22 verbunden sind. Die programmierbare Steuerung 10 adressiert sequentiell jeden Fern-E/A-Träger 20 und die in einem sol­ chen Baugruppenträger enthaltenen Module 18. In jedem Fern- E/A-Träger 20 werden die Daten von der seriellen Verbin­ dung 22 decodiert und über die Rückebene 21 weitergelei­ tet, um mit jedem der Module 18 in Verbindung zu treten.
Die Fern-E/A-Träger 20 können bis zu 1500 m von der programmierbaren Steuerung 10 entfernt angeordnet sein. Eine programmierbare Steuerung mit entfernt angeordneten E/A-Trägern ist in der US 39 97 879 A beschrieben.
Der Datendurchsatz der seriellen Fern-E/A-Verbindung 22 ist aufgrund ihres seriellen Formats begrenzt. Diese Begrenzung des Datendurchsatzes kann bei gewissen Hoch­ geschwindigkeit-E/A-Funktionen oder für einen Fall, bei dem eine hohe Anzahl von Fern-E/A-Trägern die Abtastung vieler E/A-Adressen anfordert, von Bedeutung sein. Beson­ ders bedeutsam sind digitale Codierer- oder Zählereingänge, deren hohe Datenraten den Datendurchsatz der Verbindung 22 belasten können, wenn sie direkt auf die Verbindung 22 gegeben werden, wie es oben beschrieben ist.
Ein nach der Erfindung ausgebildetes Zählermodul 24 dient zum Begrenzen des Datendurchsatzes, der zum Unter­ stützen von Codierern oder Zählern mit einer hohen Daten­ rate erforderlich ist, und zwar dadurch, daß Zähl- und Bereichsvergleichsfunktionen auf der Modulstufe anstatt auf der Steuerungsstufe, d. h. über ein Programm, das auf der programmierbaren Steuerung abläuft, ausgeführt werden. Das Zählermodul 24 ist zusammen mit anderen Fern-Modulen 18 im Fern-Träger 20 enthalten und kann ein gepulstes Gleichstromsignal oder binäres Signal von einem Drehcodierer 26 oder dergleichen empfangen. Der Drehcodierer 26 liefert in an sich bekannter Weise zwei rechteckförmige Schwingungssignale an separaten Lei­ tungen 28, deren relative Phasenlage die Drehrichtung 30 der Welle des Codierers 26 angibt und deren Rechteck­ schwingungsperiodenanzahl ein Maß für die Anzahl der Drehwinkelgrade ist. Alternativ kann das Zählermodul 24 über eine einzige Leitung (nicht gezeigt) von einem Sensor einfach eine Zählgröße ohne Zählrichtung erhalten.
Wie es aus Fig. 2 hervorgeht, wird das Zählermodul unter der Steuerung eines auf der Leiterplatte montierten Mikroprozessors 34 betrieben. Der Mikroprozessor 34 ist ein 16-Bit-Allgemeinzweckmikroprozessor, der acht bidirek­ tionale Datenleitungen 36, acht zugeordnete Adreßleitungen 38' und eine Vielzahl Steuerleitungen 44 und 56 hat.
Die Adreßleitungen 38' enthalten die höherwertigen acht Bits eines 16-Bit-Adreßfeldes. Die niedrigwertigeren acht Bits des 16-Bit-Adreßfeldes sind durch die Daten­ leitungen 36 vorgesehen, die multiplext werden, um sowohl Daten- als auch Adreßinformation zu übertragen, wobei ein Adreßlatch 40 vorgesehen ist, dem die Datenleitungen 36 und eine Adreßfreigabeleitung 42 zugeführt sind, wodurch die Möglichkeit geschaffen wird, die unteren acht Bits des Adreßfeldes im Latch zu speichern, wie es allgemein üblich ist. Durch Vereinigung mit den Adreßleitungen 38' ist es somit möglich, auf einer 16-Bit-Adreßleitung 38 eine 16-Bit-Adresse zu erzeugen.
Die 16 Adreßleitungen 38 bilden ein Drittel eines internen Busses 32. Die Datenleitungen 36 bilden ein weiteres Drittel des internen Busses 32, und die Steuer­ leitungen 44, die Lese/Schreib-Zeitgabesignale sowie Taktsignale vorsehen, wie sie auch im Stand der Technik vorkommen und allgemein üblich sind, bilden das letzte Drittel des internen Busses 32.
Der interne Bus 32 sieht einen Nachrichten- oder Kommunikationsweg zwischen den verschiedenen Funktions­ blöcken des noch zu beschreibenden Zählermoduls 24 vor und sorgt auch für die Kommunikation zwischen diesen Funktionsblöcken und der programmierbaren Steuerung 10 über die Rückebene 21 und ein TIC-Chip 30.
Das TIC-Chip 30 handhabt das Kommunikationsprotokoll, das zum Empfangen und Aussenden von Daten zwischen der Rückebene 21 und dem internen Bus 32 des Zählermoduls 24 erforderlich ist. Eine zum Ausführen dieser Kommunika­ tionsprotokolle dienende Schaltung, die zur Verwendung mit der Erfindung geeignet ist, ist aus der US 49 37 777 A bekannt.
Der interne Bus 32 steht auch mit einem löschbaren und dann wieder programmierbaren Festwertspeicher (EPROM) 45, einem statischen Direktzugriffsspeicher (SRAM) 46, einem Eingangskanal 48 und einem Ausgangskanal 50 in Verbindung. Über die Adreßleitungen 38 und die Datenlei­ tungen 36 kann jede dieser Einheiten vom Mikroprozessor 34 adressiert sowie ausgelesen oder eingeschrieben werden. Der EPROM 45 enthält das Firmwareprogramm, das in Ver­ bindung mit dem Betrieb des Zählermoduls 24 vom Mikro­ prozessor 34 ausgeführt wird. Dieser Betrieb soll noch im einzelnen beschrieben werden. Der SRAM 46 stellt einen Notizblockspeicherraum für Daten bereit, die vom Mikro­ prozessor 34 manipuliert werden, und sieht Speicherberei­ che vor, die von der programmierbaren Steuerung 10 über des TIC-Chip 30 gelesen werden können. Der Eingangskanal 48 gestattet es wahlweise, daß bestimmte Werte über programmierbare Sprünge in den Mikroprozessor eingegeben werden können. Der Ausgangskanal 50 gestattet es dem Mikroprozessor 34, mit Frontplattenanzeigelampen 50' Information anzuzeigen, und zwar insbesondere eine An­ zeige darüber vorzusehen, ob das Zählermodul 24 ungestört in Betrieb ist oder ob eine Störung oder ein Fehler aufgetreten ist.
Der interne Bus 32 steht auch mit einem programmier­ baren Zeitgeber 52 in Verbindung, der in an sich überli­ cher Weise eine genaue Zeitbasis für das Zählermodul 24 bereitstellt, und zwar für Zeitdauer- und Geschwindigkeits­ meßverfahren, wobei der Zählwert durch ein anwenderdefi­ niertes Zeitintervall torgesteuert wird, um einen mitt­ leren Frequenzwert anstelle einfach eines Gesamtzählwerts zu liefern.
Der Mikroprozessor 34 steht auch über die Datenlei­ tungen 36, die Steuerleitungen 44, die Adreßfreigabe­ leitung 42 und eine Chipauswahlleitung 56 mit einem Zählersystem 54 in Verbindung, um das Zählersystem 54 zu steuern und für eine Kommunikation zwischen dem Zäh­ lersystem 54 und der Rückebene 21 zu sorgen. Adreßdaten werden vorgesehen durch die auf den Datenleitungen 36 multiplexte Adreßinformation und durch die Chipauswahl­ leitung 56, die den Platz der sonst erforderlichen Adreß­ leitungen 38' höherer Ordnung einnimmt.
Das Zählersystem 54 erhält auch Eingänge von Ein­ gangsschaltungen 58. Die Eingangsschaltungen 58 verarbei­ ten die vom Zählermodul 24 zu zählenden Signale auf den Leitungen 28 (gezeigt in Fig. 1) und nehmen elektrische Trenn- und Filterfunktionen wahr, und zwar mit dem Ziel, daß die Eingangssignale mit den logischen Pegeln der Zählermodulschaltungsanordnung kompatibel sind. Eine verwendbare Eingangsschaltung ist beispielsweise in der US 42 75 307 beschrieben.
Die Eingangsschaltungen 58 erhalten die zu zählen­ den Signale über vier Kanäle 60(a) bis (d), wobei jeder Kanal drei Anschlüsse aufweist, die mit A, B und G be­ zeichnet sind. Nach der Verarbeitung in den Eingangs- Schaltungen 58 werden die zwölf Eingangssignale 62 vom Zählersystem 54 und auch von den Lampen 50' empfangen, wobei die Lampen den Binärzustand jedes Signals anzei­ gen. Das Signal vom Drehcodierer 26 kann beispielsweise durch einen Kanal 60 empfangen werden. Der Drehcodierer 26 liefert zwei phasenverschobene Signale, die an den Eingängen A und B des Kanals 60 auftreten.
Das Zählersystem 54 erzeugt auch acht Ausgangssignale 64(a) bis (h), die von Ausgangsschaltungen 66 und Lampen 50' empfangen werden, welche den Binärzustand jedes Signals 64 anzeigen. Die Ausgangsschaltungen 66 setzen die logischen Pegelsignale des Zählersystems 54 in ge­ schaltete Ausgänge um, die in Abhängigkeit vom Zustand des jeweiligen Signals 64 benutzer- oder anwenderzugäng­ liche offene oder geschlossene Schaltungen vorsehen. Eine Ausgangsschaltung, die für die genannten Zwecke geeignet ist, ist in der US 37 45 546 beschrieben.
Das Zählersystem 54 ist somit allgemein in die oben beschriebene Mikroprozessorarchitektur integriert und kann in Verbindung treten mit der Rückebene 21, den Eingangsschaltungen 58 oder den Ausgangsschaltungen 66 über die verschiedenen beschriebenen Signalwege. Das Zählersystem 54 erhält auch ein Zeitgabesignal 53 in Form einer periodischen Rechteckschwingung vorbestimmter Fre­ quenz vom Zeitgeber 52.
Die Schaltungsanordnung nach Fig. 2 ist auf einer gedruckten Schaltungsplatte montiert, an der die verschie­ denen Baueinheiten oder Komponenten angelötet sind. Das Zählersystem 54 ist ein kundenspezifischer Großschaltkreis. An sich bekannte Schraubklemmen dienen zum Anschluß an die Eingangsschaltungen und an die Ausgangsschaltungen, und bei den Anzeigelampen handelt es sich um Leucht­ dioden oder LEDs.
Wie es auch Fig. 3 hervorgeht, empfängt das Zähler­ system 54 die Eingangssignale 62 über eine Betriebsart­ steuer- und Synchronisationsschaltung 68, die zwei prin­ zipiellen Zwecken dient. Als erstes sei bemerkt, daß die Eingangssignale 62, die von einem Drehcodierer 26 oder dergleichen, wie es in Fig. 1 gezeigt ist, abgeleitet werden, im allgemeinen asynchron in bezug auf die interne Zeitsteuerung des Zählermoduls 24 sind. Die Betriebsart­ steuer- und Synchronisationsschaltung 68 wird daher be­ nutzt, um diese Eingangssignale 62 mit der internen Zeit­ gabe des Zählermoduls 24 zu synchronisieren, und zwar mit Hilfe von auftastbaren Tandem-Flipflops (nicht ge­ zeigt), wie es allgemein üblich ist. Als zweites liefert die Betriebsartsteuer- und Synchronisationsschaltung 68 Zeitgabe- und Torsteuersignale, die es dem Zählersystem ermöglichen, in einer Reihe von Betriebsarten zu arbei­ ten: in einer Codiererbetriebsart (1), bei der die phasenverschobenen Rechteckschwingungssignale des Dreh­ codierers 26, die an den Eingängen A und B (Fig. 2) auf­ treten, als Aufwärtszählsignal oder Abwärtszählsignal interpretiert werden, welche Signale mit einem getakteten Dualzähler kompatibel sind, der noch beschrieben wird; in einer Zählerbetriebsart (2), in der der A-Eingang ge­ zählt wird und der B-Eingang festlegt, ob der Zähler bezüglich des Eingangs A aufwärts (vorwärts) oder abwärts (rückwärts) zählt; in einer Zeitdauer/Geschwindigkeits­ betriebsart (3), in der der Zähler ein intern erzeugtes 4-MHz-Taktsignal 53 (Fig. 2) zählt, das aufgrund des Vorhandenseins eines Signals am G-Eingang für den be­ trachteten Kanal 60 torgesteuert wird, so daß der Zähl­ wert die Zeitdauer des Torsteuersignals wiederspiegelt; eine Geschwindigkeitsbetriebsart (4), in der ein Zähl­ impuls am Eingang A für eine Zeitdauer gezählt wird, die vom Signal 53 vom Zeitgeber 52 abgeleitet wird. Die Ver­ fahrensweise und Technik für diese Funktionen sind an sich üblich und bekannt, so daß diese Schaltung nicht näher erläutert wird, mit Ausnahme bezüglich bestimmter Zeit­ gabesignale, die für den Betrieb der noch zu beschreiben­ den Zähler erforderlich sind.
Die Betriebsartsteuer- und Synchronisationsschal­ tung 68 wird von Anweisungen gesteuert, die vom Mikro­ prozessor 34 über eine Busschnittstellenschaltung 70 empfangen werden. Zur Kommunikation von Daten zwischen dem Mikroprozessor 34 und dem Zählersystem 54 ist die Busschnittstellenschaltung 70 angeschlossen an die Daten­ leitungen 36, die Adreßfreigabeleitung 42, die Chipaus­ wahlleitung 56 und die Steuerleitungen 44. Die Kombination tion aus den Datenleitungen 36 und der Adreßfreigabe­ leitung 42 gestattet es, daß die verschiedenen Register des Zählersystems 54 adressiert werden können, daß in diese Register eingeschrieben und daß aus diesen Registern ausgelesen werden kann, ohne daß separate externe Stifte für die niedrigwertigere Adresse erforderlich wären. Dies bedeutet eine beträchtliche Einsparung von Zwischenverbin­ dungswegen am Zählersystemchip 54 und gestattet die ge­ meinsame Benutzung derselben Art Stifte der kundenspe­ zifischen integrierten Schaltung, die das Zählersystem 54 bildet, sowohl für Adreß- als auch Dateninformation.
Die Busschnittstelle 70 decodiert auch die Adreß­ information aus den Daten, die auf den Datenleitungen 36 multiplext sind, und erzeugt einen Satz Freigabesignale 78 zur Steuerung verschiedener Register, die noch be­ schrieben werden, wodurch es dem Benutzer gestattet wird, neue Werte in diese Register einzugeben oder daraus auszulesen, und zwar über die programmierbare Steuerung 10, wobei die Register im allgemeinen dazu dienen, Konfigu­ rationsdaten für die Zähleranordnung 72 aufzubewahren und verschiedene Zählwerte zu speichern.
Die Zähleranordnung 72, die sowohl mit der Bus­ schnittstelle 70 als auch der Betriebsartsteuer- und Synchronisationsschaltung 68 in Verbindung steht, erhält vier Paare dualer Taktsignale 80 und bestimmte Steuer­ leitungen 81 von der Betriebsartsteuer- und Synchronisa­ tionsschaltung 68 und nimmt einen 8-Bit-Datenbus 76 und entsprechende Steuersignale 78 von der Busschnittstelle 70 auf. Die Daten am Datenbus 76 sind identisch mit den Daten an den Datenleitungen 36 des Busses 32. Die Steuer­ signale 78 geben verschiedene Register frei, wie es noch beschrieben wird.
Die Zähleranordnung 72 erzeugt die acht Ausgangs­ signale 64(a) bis (h) des Zählersystemchips 54.
Die in Fig. 4 dargestellte Architektur der Zähler­ anordnung 72 gestattet eine flexible Zwischenverbindung unter einer Anzahl Funktionsblöcke, die zusammen die gewünschte Zählfunktion ausführen. Diese Funktionsblöcke sind Zähler 82(a) bis 82(d), Vergleicher 104(a) bis 104(d) und deren zugeordnete Register, und UND/ODER-Torschal­ tungen 110(a) bis 110(h). Die unabhängigen Zähler 82(a) bis 82(d) erhalten jeweils ein separates duales Takt­ signal 80 und empfangen jeweils den internen Datenbus 76 und die Steuerleitungen 78 (in Fig. 4 der besseren Über­ sicht halber nicht gezeigt). Jedem zugeführten dualen Taktsignal 80 sind zwei Leitungen zugeordnet, von denen jeweils nur eine zu einer Zeit ein zugeführtes Taktsignal empfängt. Die erste Leitung ist eine Aufwärtszählleitung und zeigt an, wie es ihr Name zu verstehen gibt, daß der Zähler seinen Gesamtzählwert inkrementieren soll. Die zweite Leitung ist die Abwärtszählleitung und gibt an, daß der Zähler seinen Gesamtzählwert dekrementieren soll.
Jeder der Zähler 82(a) bis 82(d) funktioniert wie ein 24-Bit-Aufwärts/Abwärts-Zähler mit einem einstellbaren Modulus von Null bis FFFFFF16, um einen 24-Bit-Ausgangs­ zählwert 84(a) bis 84(d) zu erzeugen. Der 24-Bit-Ausgangs­ zählwert 84(a) bis 84(d) jedes der Zähler 82(a) bis 82(d) ist über einen Zählerausgangsbus 96 bestehend aus vier parallelen 24-Bit-Kanälen mit jedem von sechzehn Multi­ plexern 98(a) bis 98(p) verbunden. Jeder dieser Multi­ plexer 98 kanalisiert einen der 24-Bit-Zählerausgänge 84 vom Zählerbus 96 zu dem einzigen 24-Bit-Ausgang 100(a) bis 100(p) dieses Multiplexers. Die Multiplexer 98 arbei­ ten daher wie ein wirksamer vierpoliger 24-Kontakt-Schal­ ter, der einen der Zählerausgänge 84 der Zähler 82(a) bis 82(d) mit seinem eigenen Ausgang 100 verbindet. Die besondere Auswahl oder Polstellung jedes Multiplexers 98 ist festgelegt durch einen Wertsatz in einem Regi­ ster (nicht gezeigt), das jedem Multiplexer zugeordnet ist und ein Programmwort vom Datenbus 76 erhält, wie es durch das Freigabesignal 87 von der Busschnittstelle 70 adressiert wird.
Register 102(a) bis 102(p) sind ebenfalls mit dem Datenbus 76 verbunden und erhalten ein 24-Bit-Schwellen­ wertwort, wie programmiert durch den Anwender, über die programmierbare Steuerung 10. Ein Register 102 ist jedem Multiplexer 98 zugeordnet.
Der Ausgang jedes Zählers 82(a) bis 82(d), wie er von jedem Multiplexer 98(a) bis 98(p) weitergeleitet wird, gelangt zu einem Eingang eines digitalen Komparators oder Vergleichers 104(a) bis 104(p). Der andere Eingang des digitalen Vergleichers 104(a) bis 104(p) erhält das 24-Bit-Schwellenwertwort, das in dem jeweils zugeordneten Register 102(a) bis 102(p) enthalten ist. So liefert beispielsweise der Multiplexer 98(a) ein 24-Bit-Ausgangs­ wort an den einen Eingang des Vergleichers 104(a), und der andere Eingang des Vergleichers 104(a) erhält das 24-Bit-Schwellenwertwort vom Register 102(a).
Die Vergleicher 104(a) bis 104(p) erzeugen drei Ausgänge, von denen nur ein einziger jeweils, d. h. zu einer vorgegebenen Zeit, einen hohen (niedrigen) Pegel hat, und zwar in Abhängigkeit von den von den Multiple­ xern 98 und den Registern 102 stammenden Eingängen zu den Vergleichern 104. Diese drei Ausgänge von den Verglei­ chern 104 zeigen an, ob der Ausgang des Multiplexers 98 größer, gleich oder kleiner als der Schwellenwert vom Register 102 ist. Jeder dieser drei Vergleicherausgänge 106 wird von einem schaltbaren ODER-Glied 108(a) bis 108(p) mit drei Eingängen empfangen, das aufgebaut ist aus drei UND-Gliedern mit dualen Eingängen, wobei deren drei Ausgänge von einem ODER-Glied mit drei Eingängen empfan­ gen werden, das mit einem oder mehreren Ausgängen, die von den drei Ausgängen des Vergleichers 104 ausgewählt sind, eine logische ODER-Verknüpfung ausführt. Die aus­ gewählten Ausgänge, die von den UND-Teilen des schalt­ baren ODER-Glieds 108(a) bis 108(p) torgesteuert werden, werden festgelegt durch einen Wert, der in einem Regi­ ster (nicht gezeigt) gespeichert ist. Allen schaltbaren ODER-Gliedern 108(a) bis 108(p) ist jeweils ein solches Register zugeordnet, das über den Datenbus 76 geladen wird und damit letztlich von dem Anwender geladen wird, der die programmierbare Steuerung 10 programmiert.
Somit wird in Abhängigkeit von der Einstellung oder dem Setzzustand des schaltbaren ODER-Glieds 108 am Ausgang des schaltbaren ODER-Glieds 108 ein hoher (niedriger) Pegel auftreten, wenn der vom Multiplexer 98 ausgewählte Zählerausgang 84 entweder größer, gleich oder kleiner als der Schwellenwert in dem Register 102 ist oder eine bestimmte Kombination aus diesen Bedin­ gungen darstellt, wobei dieser Ausgang am ODER-Teil des schaltbaren ODER-Glieds 108 auftritt.
Die Augänge von zwei schaltbaren ODER-Gliedern 108 sind mit einem von acht UND/ODER-Schaltungen 110(a) bis 110(h) verbunden, die entweder als UND-Glied oder als ODER-Glied wirken, wie gesteuert, und zwar ebenfalls durch ein Register (nicht gezeigt), wie programmiert durch den Anwender über die programmierbare Steuerung 10. Somit sind die Ausgänge jedes Paares schaltbarer ODER- Glieder 108(a) und 108(b) mit einer einzigen UND/ODER- Torschaltung 110 verbunden. Die Ausgänge der acht UND/­ ODER-Torschaltungen 110(a) bis 110(h) bilden die Aus­ gänge 64(a) bis 64(h) der Zähleranordnung 72. Diese Abstimmung von zwei schaltbaren ODER-Gliedern 108 auf jeweils eine einzige UND/ODER-Torschaltung 110 ist für jedes der schaltbaren ODER-Glieder 108(a) bis 108(p) fortgeführt, so daß acht Ausgangssignale 64 bereit­ gestellt werden, die den Ausgängen der acht UND/ODER- Torschaltungen 110(a) bis 110(h) entsprechen.
Wie es aus Fig. 5 hervorgeht, ist jeder Zähler 82(a) bis 82(d), der in Fig. 4 als Block dargestellt ist, um eine ladbare 24-Bit-Vorwärts/Abwärts-Zählereinheit 83 herum aufgebaut, die die dualen Taktleitungen 80, eine Ladeleitung 88 zum Laden des Zählwerts und eine Lösch­ leitung 93 zum Setzen des Zählwerts der Zählereinheit 83 auf Null empfängt. Die 24-Bit-Zählereinheit 83 ist funktionsmäßig einem Zähler äquivalent, der sechs syn­ chrongeschaltete 4-Bit-TTL-Zähler aufweist, wie sie beispielsweise beschrieben sind in "TTL Databook For Design Engineers", Second Edition, Texas Instruments, Inc.
Die Maßnahme zum Einstellen des Modulus oder Moduls der Zähler 82(a) bis 82(d) ist wie folgt verwirklicht: ein Unterlauf, d. h., wenn der Zähler 83 abwärtszählt und sein Zählwert gleich FFFFFF16 wird, wird von einer UND-Torschaltung 86 erfaßt, die den Ausgang 85 erhält. Die UND-Torschaltung 86, die den Nullzustand des Zähler­ ausgangs 85 feststellt, erzeugt ein Ladesignal an der Ladeleitung 88, welches die Zählereinheit 83 veranlaßt, einen Unterlaufwert vom Register 90 zu laden, wobei dieser Unterlaufwert durch den Benutzer oder Anwender bestimmt ist und über die programmierbare Steuerung 10 in das Register 90 geladen ist. Der Unterlaufwert im Register 90 ist gleich eins weniger als der gewünschte Modul des Zählers 82. Wenn daher die Zählereinheit 83 unterläuft, erhält sie den im Register 90 enthaltenen Unterlaufwert anstatt auf ihren Maximalzählwert von FFFFFF16 unterzulaufen.
Der Ausgang der Zählereinheit 83 gelangt auch zu einer Exklusiv-ODER-Torschaltung 92, die diesen Ausgang mit einem Überlaufwert vergleicht, der in einem Regi­ ster 94 enthalten ist und ebenfalls vom Anwender fest­ gelegt ist.
Der im Register 94 enthaltene Überlaufwert ist genau eins mehr als der im Register 90 enthaltene Unter­ laufwert. Wenn somit der Ausgang der Zählereinheit 83 gleich dem im Register 94 enthaltenen Überlaufwert ist, wird auf der Löschleitung 87 ein Löschsignal erzeugt, das die Zählereinheit 83 auf Null zurücksetzt.
Bezüglich der anderen Register sind die Register 90 und 94 mit den Datenleitungen 76 und den Freigabesteuer­ leitungen 78 verbunden, so daß ihre Werte geladen werden können von der programmierbaren Steuerung 10 über die Fernverbindung 22, durch das TIC-Chip 30 und die interne Busstruktur des Zählermoduls 24, wie es zuvor beschrie­ ben worden ist. Es sei bemerkt, daß ein willkürlicher Modulus oder Modul für die Zähler 82(a) bis 82(d) einfach dadurch erstellt werden kann, daß die Register 90 und 94 mit Unterlauf- bzw. Überlaufwerten programmiert werden.
Unter Bezugnahme auf Fig. 5 wird betont, daß der im Register 94 gespeicherte Überlaufwert tatsächlich um eins größer als der Maximalwert ist, bis zu dem die Zähler­ einheit 83 zählt, und zwar gegeben durch den gewünschten Modul der Zählereinheit 83. Als Ergebnis interner Tor­ verzögerungen der Exklusiv-ODER-Torschaltung 92, die feststellt, ob die Zählereinheit 83 den Zählwert erreicht hat, der durch den Wert des Registers 94 gegeben ist, wobei diese Verzögerungen eine kurze Zeitdauer beinhalten, gibt die Zählereinheit 83 einen falschen Zählwert 85 aus. Wegen ähnlicher Gründe während eines Unterlaufs der Zählereinheit 83 und wegen der internen Torverzögerungen der UND-Torschaltung 86 während eines Unterlaufzustands zeigt die Zählereinheit 83 ihren Maximalzählwert von FFFFFF16 an, bevor sie mit dem Unterlaufwert im Register 90 abgestellt auf den definierten Modul der Zählereinheit 83 geladen wird.
Die Ausgänge der Zähler 84(a) bis 84(d) gelangen daher durch ein Register 112, das so torgesteuert wird, daß falsche Übergangswerte der Zählereinheit 83 ignoriert werden. Wie es aus Fig. 10 hervorgeht, sind die Vorwärts- oder Rückwärtszählsignale I oder II mit einem 8-MHz-Takt­ signal 114 eines auf der Schaltungsplatte befindlichen Taktgebers (nicht gezeigt) synchronisiert, wie es be­ reits beschrieben wurde. Während einer Vorwärtszählung, wie es in Fig. 10 dargestellt ist, hat das Rückwärts­ zählsignal II einen hohen Pegel, und der Ausgang der Zählereinheit 83 wird bei der Anstiegsflanke des Vor­ wärtszählsignals I inkrementiert. Ein Speicher- oder Latchsignal III für das Register 112, das von der Betriebsartsteuer- und Synchronisationsschaltung 68 (Fig. 3) erzeugt wird, wird um eine Taktperiode des 8-MHz-Taktes verzögert. Zwischen den Anstiegsflanken des Vorwärtszählsignals I und der Anstiegsflanke des Latchsignals III für das Register 112 liefern Signale VI oder V, die einen Unterlauf- oder Überlaufzustand anzeigen und von der UND-Torschaltung 86 oder der EXKLUSIV-ODER-Torschaltung 92 erzeugt werden, wenn ein Überlauf oder Unterlauf für den gegebenen Zählwert existiert, einen Impuls mit einer Anstiegsflanke vor der Anstiegsflanke des Signals III.
Dieses Signal VI oder V lädt oder löscht die Zählereinheit 83 wie es bereits beschrieben worden ist, vor der Anstiegsflanke des Latchsignals III.
Zwei weitere Register 116 und 118 speichern Zähler­ ausgangswerte 85. Das Register 116 wird durch ein Signal IV getriggert, das bezüglich seines Zeitverlaufes dem Signal III ähnlich ist und das es gestattet, daß der Zählerausgang 85 vom Mikroprozessor 34 ohne Unterbrechung der Ausgänge 84(a) bis 84(d) gelesen werden kann. Das Register 118 wird zum Einfangen eines besonderen Zähl­ wertes verwendet und wird zu diesem Zweck von einem Signal VII getriggert, das vom G-Eingang der Eingangs­ schaltung 58 (Fig. 2) abgeleitet wird und von der Be­ triebsartsteuer- und Synchronisationsschaltung 68 (Fig. 3) verarbeitet wird. Das Register 118 wird im all­ gemeinen asynchron in bezug auf das Register 116 ge­ triggert, jedoch bezüglich der Signale I oder II verzö­ gert, wie bei den Registern 112 und 116, um sicherzu­ stellen, daß von diesen Registern keine falschen Aus­ gangswerte 85 eingefangen werden. Die Ausgänge dieser Register 116 und 118 sind über die programmierbare Steuerung 10 dem Anwender und über den internen Daten­ bus 76 dem Mikroprozessor 34 zugänglich.
Unter Bezugnahme auf Fig. 4 ist es somit verständ­ lich, daß der Anwender eine Reihe von Maßnahmen für die Zähleranordnung 72 programmieren kann: 1) Der Modulus oder Modul jedes Zählers 82 kann getrennt gesteuert werden; 2) Mit Hilfe der Multiplexer 98(a) bis 98(p) kann der Ausgang jedes Zählers irgendeinem Ausgangssignal 64 zugeordnet werden; 3) Jeder Ausgang 64 kann einen "Einschalt"- und "Ausschalt"-Punkt irgendwo innerhalb des Modulus oder Moduls seines zugeordneten Zählers 82 haben. Ferner sei bemerkt, daß ein gegebenes Ausgangssignal 64 irgendeinem oder zwei Zählern zugeordnet werden kann. Das heißt, der "Einschalt"-Punkt kann wahlweise bestimmt werden durch einen Zähler und der "Ausschalt"-Punkt kann wahlweise bestimmt werden durch einen zweiten Zähler.
Unter Bezugnahme auf Fig. 6 kann beispielsweise der Modulus oder Modul einer Zählereinheit 83 gesetzt werden auf 300, und zwar durch Programmieren des Registers 90 (Fig. 5) auf 299 und des Registers 94 (Fig. 5) auf 300. Der diesen Registern zugeordnete Zähler 82 kann dann zählen zwischen 0 und 299.
Der Ausgang 1 kann beispielsweise zugeordnet werden dem Zähler 82 dadurch, daß geeignete Werte in die Regi­ ster geladen werden, die den Multiplexern 98(a) und 98(b) zugeordnet sind, so daß beispielsweise der Ausgang des Zählers 82(a) zum Vergleicher 104(a) und 104(b) ge­ schaltet wird. Wenn es erwünscht ist, daß der Ausgang 64(a) beginnend mit dem Zählwert 100 eingeschaltet werden soll, kann das Register 102(a) mit dem Wert 100 geladen werden und sowohl das Bit "größer als" als auch "gleich" bezüglich des Registers gesetzt werden, so daß das schaltbare ODER-Glied 108 in einer solchen Weise ge­ steuert wird, daß es die Zustände "größer als" und "gleich" gemäß einer ODER-Verknüpfung erfaßt. Als Alternative kann das Register 102(a) mit dem Wert 99 geladen werden, wobei dann im schaltbaren ODER-Glied 108(a) nur das Bit "größer als" gesetzt wird.
Ist es in diesem Fall dann erwünscht, daß der Aus­ gang beim Zählwert 200 ausgeschaltet wird, kann das Regi­ ster 102(b) mit dem Wert 200 geladen werden und im Re­ gister, das das schaltbare ODER-Glied steuert, die Bits "größer als" und "gleich" gesetzt werden. Abweichend davon kann das Register 102(b) auf den Wert 199 gesetzt werden, wobei dann das Bit "größer als" gesetzt wird. In beiden Fällen wird die UND/ODER-Schaltung 110 vom Anwen­ der für die UND-Verknüpfung konfiguriert, so daß der Ausgang 64 eingeschaltet ist, wenn der Zählwert größer als 100 und zugleich kleiner als 200 ist.
Bei einem zweiten in Fig. 7 dargestellten Beispiel kann der Ausgang so eingestellt werden, daß er ausge­ schaltet wird, wenn der Zählwert größer als 50 ist, und dann wieder eingeschaltet wird, wenn der Zählwert größer als 250 ist. Zu diesem Zweck kann das Register 102(a) mit dem Wert 50 geladen werden, und in dem Register, das dem zugeordneten schaltbaren ODER-Glied 108(a) zugeordnet ist, werden die Bits "größer als" und "gleich" gesetzt. In das Register 102(b) kann der Wert 250 gesetzt werden, wobei bezüglich des schaltbaren ODER-Glieds 108(b) die Bits "kleiner als" und "gleich" gesetzt werden. In diesem Fall wird die UND/ODER-Schaltung 110(a) im ODER-Betrieb konfiguriert, so daß der Ausgang 64(a) eingeschaltet ist, wenn der Zählwert kleiner oder gleich 50 ist oder größer als oder gleich 250 ist.
Wesentlich ist auch, daß zwei oder mehr Ausgänge 64 so konfiguriert werden können, daß sie einem einzigen Zähler 82 zugeordnet sind. So ist nach Fig. 8 der Aus­ gang 64(a) so konfiguriert, daß er einschaltet, wenn der Zählwert größer als 125 ist, und wieder ausschaltet, wenn der Zählwert größer als 175 ist. Demgegenüber ist der Ausgang 64(b) so konfiguriert, daß er einschaltet, wenn der Zählwert größer als 5 ist, und wieder ausschal­ tet, wenn der Zählwert kleiner als 100 ist. In diesem Falle sind die Multiplexer 98(a), (b), (c) und (d) alle so konfiguriert, daß sie denselben Zähler 82(a) aus­ wählen, so daß beide Ausgänge 64(a) und 64(b) den Zustand dieses einen Zählers 82(a) anzeigen.
Unter Bezugnahme auf Fig. 2 und 9 sei herausgestellt, daß alle oben beschriebenen Konfigurationen und viele andere Konfigurationen der Architektur des Zählermoduls 24 in einfachster Weise durch einen Datenblock 120 pro­ grammiert werden, der im SRAM 46 gespeichert ist, wobei das Laden durch den Anwender über die programmierbare Steuerung 10 erfolgt. Jeder der acht Ausgänge 64 des Zählermoduls 24 hat fünf Datenwörter 122, die ihm zuge­ ordnet sind. Die ersten vier Bits des ersten Datenworts 122 für jeden Ausgang 64 geben an, welcher der vier Zähler 82(a) bis 82(d) diesem Ausgang 64 zuzuordnen ist. Lediglich ein Bit der ersten vier Bits in diesem ersten Datenwort 122 kann gesetzt sein. Die nächsten beiden Daten­ wörter 122 enthalten die höchstwertigen Bits HWB und nied­ rigstwertigen Bits NWB der 24 Bits, die in das diesem Ausgang 64 zugeordnete erste Register 102 zu laden sind. Diese Bits werden die "Ein-Bits" genannt, wobei unter Bezugnahme auf das Beispiel nach Fig. 6 diese Bits den Punkt festlegen, bei dem der Ausgang eingeschaltet wird. Die nächsten beiden Datenwörter 122 enthalten die höchst­ wertigen Bits und die niedrigstwertigen Bits des 24-Bit- "Aus-Wortes", das in das diesem Ausgang 64 zugeordnete zweite Register 102(b) zu laden ist. Dieser Datenblock 120 wird für alle acht Ausgänge 64 wiederholt.
Unter Bezugnahme auf Fig. 2 kann man ersehen, daß diese einfache Datenstruktur und die besondere Funk­ tionsaufteilung der Zähleranordnung 76 eine anscheinend unbegrenzte Flexibilität in der Konfiguration der acht Ausgänge 64 unter den vier Zählern 82 gestattet. So können beispielsweise alle acht Ausgänge 64 einen einzi­ gen Zähler 82 auslesen, wobei ein Satz gestaffelter oder sich überlappender Digitalausgänge vorgesehen wird, und zwar in Abhängigkeit von dem Wert dieses Zählers 82. Umgekehrt können die acht Ausgänge 64 unter den vier- Zählern 82 aufgeteilt sein, wobei jeder Zähler mit zwei Ausgängen 64 versehen ist. Viele andere Kombinationen sind möglich.
Die funktionelle Aufteilung der Zähler 82 an den Ausgängen der Vergleicher 104 sowie an den Ausgängen der UND/ODER-Torschaltungen 110 sowie die Verwendung der Bus­ struktur 96 zum Verbinden irgendeines Ausgangs 64 mit irgendeinem Zähler 82 liefert somit einen hohen Grad an Flexibilität bezüglich der Konfiguration eines Zähler­ moduls 24 im Hinblick auf einen besonderen Prozeß und gestattet dennoch eine Hochgeschwindigkeitsausführung in Verbindung mit einer Hardware-Implementation der Zählfunktion.
Obgleich ein bevorzugtes Ausführungsbeispiel der Erfindung vorstehend beschrieben wurde, können demgegen­ über zahlreiche Abwandlungen und Modifikationen vorge­ nommen werden, ohne den Rahmen der Erfindung zu ver­ lassen. So kann man beispielsweise die Anzahl der Zähler und Ausgänge innerhalb der beschriebenen Architektur erhöhen.

Claims (5)

1. Hochgeschwindigkeitszähleinrichtung enthaltend:
eine Vielzahl unabhängiger Zähler (82), von denen jeder einen Zählereingang zum Zuführen eines Zählsignals und einen Zählerausgang zum Ausgeben eines Gesamtzählwerts aufweist,
eine Vielzahl Multiplexer (98), von denen jeder einen Multiplexereingang aufweist, der mit allen unabhängigen Zählern zum Empfangen der Zählerausgänge in Verbindung steht, und von denen jeder einen Multiplexerausgang auf­ weist, an den der Multiplexer wenigstens einen Zähler­ ausgang wahlweise weiterleitet,
eine Vielzahl Register (102), deren Anzahl derjenigen der Multiplexer entspricht und von denen jedes Register zum Speichern eines Schwellenwerts dient, und
eine Vielzahl Komparatoren (104, 108), deren Anzahl derjenigen der Multiplexer entspricht und von denen jeder Komparator mit einem der Register zum Empfangen des Schwellenwerts aus diesem Register als ersten Eingang und mit der Multiplexern zum Empfangen des Multiplexerausgangs vorn einem zugeordneten Multiplexer als zweitem Eingang in Verbindung steht und von denen jeder in Abhängigkeit von den relativen Beträgen des ersten und zweiten Eingangs einer. Schwellenwertausgang erzeugt.
2. Hochgeschwindigkeitszähleinrichtung nach Anspruch 1, enthaltend:
eine Vielzahl UND/ODER-Torschaltungen (110), die mit wenigstens zwei Komparatoren zum Empfangen der Schwellen­ wertausgänge vor diesen Komparatoren in Verbindung stehen und in Abhängigkeit von einer Booleschen Verknüpfung der Schwellenwertausgänge einen Bereichsausgang liefern.
3. Hochgeschwindigkeitszähleinrichtung nach Anspruch 1 oder 2, bei der die Komparatoren enthalten:
eine Betragskomparatoreinheit (104), die den ersten und zweiten Eingang empfängt und drei Ausgänge erzeugt, die jeweils angeben, ob der erste Eingang größer als, gleich und kleiner als der zweite Eingang ist, und
eine drei Eingänge aufweisende torgesteuerte ODER- Schaltung (108) zum Empfangen der drei Ausgänge der Betragskomparatoreinheit und zum Erzeugen eines Ausgangs­ signals, das eine logische ODER-Verknüpfung wenigstens eines dieser drei Ausgangssignale darstellt.
4. Hochgeschwindigkeitszähleinrichtung nach einem der vorstehenden Ansprüche, bei der die Zähler (82) Vor/­ Rückwärts-Zähler (83) mit variablem Modulus sind.
5. Verfahren zum Konfigurieren einer Hochgeschwindig­ keitszähleinrichtung, welche Zähleinrichtung enthält:
eine Vielzahl unabhängiger Zähler (82), von denen jeder einen Zählereingang zum Empfangen eines Zählsignals und einen Zählerausgang zum Ausgeben eines Gesamtzähl­ werts aufweist,
eine Vielzahl Multiplexer (98), von denen jeder einen Multiplexereingang aufweist, der mit jedem der unabhängi­ gen Zähler zum Empfangen der Zählerausgänge in Verbindung steht, und von denen jeder einen Multiplexerausgang auf­ weist, dem der Multiplexer wahlweise wenigstens einen Zählerausgang, wie durch erste Datenregister festgelegt, zuführt,
eine Vielzahl zweiter Register (102), deren Anzahl der Anzahl der Multiplexer entspricht und von denen jedes Register zum Speichern eines Schwellenwerts dient,
eine Vielzahl Komparatoren (104, 108), deren Anzahl derjenigen der Multiplexer entspricht und von denen jeder Komparator mit einem der zweiten Register zum Empfangen des Schwellenwerts aus diesem Register als ersten Eingang und mit den Multiplexern zum Empfangen des Multiplexerausgangs von diesem Multiplexer als zweiten Eingang in Verbindung steht und von denen jeder Komparator in Abhängigkeit von den relativen Beträgen des ersten und zweiten Eingangs einen Schwellenwert­ ausgang erzeugt, und
eine Vielzahl UND/ODER-Torschaltungen (110), die mit einem ersten und zweiten Komparator zum Empfangen der Schwellenwertausgänge von diesen Komparatoren in Ver­ bindung stehen und in Abhängigkeit von einer Booleschen Verknüpfung der Schwellenwertausgänge einen Bereichs­ ausgang erzeugen
welches Verfahren die folgenden Schritte enthält:
Erzeugen eines Mehrwortdatenblocks für jeden ersten und zweiten Komparator, welcher Datenblock ein erstes Wort enthält, das einen ersten Schwellenwert für den ersten Komparator angibt, und ein zweites Wort enthält, das einen zweiten Schwellenwert für den zweiten Kompara­ tor angibt, wobei der zweite Schwellenwert zusammen mit dem ersten Schwellenwert den Bereichsausgang definieren, und ein drittes Datenwort enthält, das angibt, von welchem unabhängigen Zähler der Zählerausgang durch den ersten und zweiten Komparator empfangen wird, wobei der Datenblock zur Übertragung zu den ersten und zweiten Registern der Hochgeschwindigkeitszähleinrichtung geeignet ist.
DE4210015A 1991-03-28 1992-03-27 Hochgeschwindigkeitszähleinrichtung und Verfahren zum Konfigurieren der Einrichtung Expired - Fee Related DE4210015C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/676,621 US5157701A (en) 1991-03-28 1991-03-28 High speed counter circuit

Publications (2)

Publication Number Publication Date
DE4210015A1 DE4210015A1 (de) 1992-10-08
DE4210015C2 true DE4210015C2 (de) 2001-05-17

Family

ID=24715257

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4210015A Expired - Fee Related DE4210015C2 (de) 1991-03-28 1992-03-27 Hochgeschwindigkeitszähleinrichtung und Verfahren zum Konfigurieren der Einrichtung

Country Status (3)

Country Link
US (1) US5157701A (de)
JP (1) JP3309361B2 (de)
DE (1) DE4210015C2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013011391B3 (de) * 2013-07-09 2014-11-20 Phoenix Contact Gmbh & Co. Kg 1Zählereinheit und Steuerungssystem mit Zählereinheit

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5220586A (en) * 1991-12-30 1993-06-15 Texas Instruments Incorporated Circuitry and method for variable single transition counting
US5623274A (en) * 1995-02-17 1997-04-22 Onspec Electronic, Inc. Front-panel indicator using a serial link for a PC
FR2732484B1 (fr) * 1995-03-31 1997-12-26 Aeg Schneider Automation Gmbh Appareil d'automatisation programmable pour le traitement de signaux binaires
US5896289A (en) * 1996-09-05 1999-04-20 Allen-Bradley Company, Llc Output weighted partitioning method for a control program in a highly distributed control system
US5796603A (en) * 1996-10-17 1998-08-18 Allen Bradley Company, Inc. Partitioning program for highly distributed control system to reduce network traffic
KR100434150B1 (ko) * 2002-03-21 2004-06-04 엘지산전 주식회사 고속 카운터의 비교 출력 회로
US6707874B2 (en) 2002-04-15 2004-03-16 Charles Douglas Murphy Multiple-output counters for analog-to-digital and digital-to-analog conversion
US7024551B2 (en) * 2003-01-07 2006-04-04 Sun Microsystems, Inc. Method and apparatus for updating boot code using a system controller
US7038614B1 (en) * 2005-02-16 2006-05-02 Applied Concepts, Inc. Vehicular traffic surveillance Doppler radar system
US20060215567A1 (en) * 2005-03-25 2006-09-28 Arun Raghunath Method and apparatus for monitoring path statistics
KR100929843B1 (ko) * 2007-09-28 2009-12-04 주식회사 하이닉스반도체 오버플로우하지 않는 카운터
JP2010118981A (ja) * 2008-11-14 2010-05-27 Omron Corp カウント装置
CN107003653B (zh) 2014-12-03 2019-07-02 三菱电机株式会社 输入输出仪器
EP3127858B1 (de) * 2015-08-03 2018-08-01 The Raymond Corporation Schwingungsdämpfung für ein materialhandhabungsfahrzeug

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3810118A (en) * 1971-04-27 1974-05-07 Allen Bradley Co Programmable matrix controller
US3942158A (en) * 1974-05-24 1976-03-02 Allen-Bradley Company Programmable logic controller
US4165534A (en) * 1977-04-25 1979-08-21 Allen-Bradley Company Digital control system with Boolean processor
US4305123A (en) * 1979-01-03 1981-12-08 Lansing Bagnall Limited Programmable controller for the mechanism of an industrial truck
US4442504A (en) * 1981-03-09 1984-04-10 Allen-Bradley Company Modular programmable controller

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3824378A (en) * 1972-09-13 1974-07-16 Presin Co Inc Electronic counter
US4420814A (en) * 1980-06-27 1983-12-13 Nippon Air Brake Co., Ltd. Wheel speed measuring circuit
US4809221A (en) * 1987-01-28 1989-02-28 Megatest Corporation Timing signal generator

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3810118A (en) * 1971-04-27 1974-05-07 Allen Bradley Co Programmable matrix controller
US3942158A (en) * 1974-05-24 1976-03-02 Allen-Bradley Company Programmable logic controller
US4165534A (en) * 1977-04-25 1979-08-21 Allen-Bradley Company Digital control system with Boolean processor
US4305123A (en) * 1979-01-03 1981-12-08 Lansing Bagnall Limited Programmable controller for the mechanism of an industrial truck
US4442504A (en) * 1981-03-09 1984-04-10 Allen-Bradley Company Modular programmable controller

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013011391B3 (de) * 2013-07-09 2014-11-20 Phoenix Contact Gmbh & Co. Kg 1Zählereinheit und Steuerungssystem mit Zählereinheit
WO2015003979A1 (de) 2013-07-09 2015-01-15 Phoenix Contact Gmbh & Co.Kg Zählereinheit und steuerungssystem mit zählereinheit

Also Published As

Publication number Publication date
JP3309361B2 (ja) 2002-07-29
US5157701A (en) 1992-10-20
JPH05100721A (ja) 1993-04-23
DE4210015A1 (de) 1992-10-08

Similar Documents

Publication Publication Date Title
DE4210015C2 (de) Hochgeschwindigkeitszähleinrichtung und Verfahren zum Konfigurieren der Einrichtung
DE3300260C2 (de)
DE3300261C2 (de)
DE4205524C2 (de) Speicherprogrammierbare Steuerung
EP1450223B1 (de) Universeller konfigurierbarer Schnittstellenschaltkreis für E/A-Ankopplungen zu einem Prozess
DE19621384A1 (de) Steuerverfahren für ein Steuersystem mit verteilter Fern-Eingabe/Ausgabe
EP0107026B1 (de) Speicherprogrammierbare Steuerung
EP2621193A2 (de) Vorrichtung zur Übertragung von Sensordaten
DE3246432C2 (de)
DE3423710A1 (de) Verfahren zur datenuebertragungssteuerung
DE2911909C2 (de) Digitales Datenverarbeitungsgerät
DE4304702A1 (en) High speed serial to parallel converter for data transmission - has input data stream fed to pair of parallel multi stage registers with outputs generated via selector controlled by compressor
EP1253494B1 (de) Steuer- und/oder Regelungssystem mit Feldbus
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
DE4017533C2 (de)
EP0333273A2 (de) Steuersignalgenerator für die Verarbeitung eines Videosignales
EP0485022B1 (de) Schaltungsanordnung zum Entfernen von Stopfbits
EP0213584A2 (de) Schaltungsanordnung mit einer matrixförmigen Speicheranordnung zur variabel einstellbaren Verzögerung digitaler Signale
DE19815647C2 (de) Verfahren zur Synchronisation einer lokalen auf eine zentrale Zeitbasis, und Vorrichtung zur Durchführung des Verfahrens mit bevorzugten Verwendungen
DE3123379C2 (de)
DE19635281C2 (de) Zählervorrichtung
DE1944058A1 (de) Schaltung zum Zaehlen von Impulsen
DE4340144C2 (de) Anordnung zur Erfassung und Abrechnung von mittels Kopiermaschinen erzeugten Kopien
DE102017204544A1 (de) Netzwerk der Automatisierungstechnik
DE4221062C2 (de) Datenübertragungseinrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20111001