DE3617774C2 - Vorrichtung zur Verarbeitung serieller Daten - Google Patents

Vorrichtung zur Verarbeitung serieller Daten

Info

Publication number
DE3617774C2
DE3617774C2 DE3617774A DE3617774A DE3617774C2 DE 3617774 C2 DE3617774 C2 DE 3617774C2 DE 3617774 A DE3617774 A DE 3617774A DE 3617774 A DE3617774 A DE 3617774A DE 3617774 C2 DE3617774 C2 DE 3617774C2
Authority
DE
Germany
Prior art keywords
data
window
memory
signal
counter
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
DE3617774A
Other languages
English (en)
Other versions
DE3617774A1 (de
Inventor
Akio Izumi
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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
Priority claimed from JP60112236A external-priority patent/JPS61270984A/ja
Priority claimed from JP60238596A external-priority patent/JPS62100093A/ja
Application filed by Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Publication of DE3617774A1 publication Critical patent/DE3617774A1/de
Application granted granted Critical
Publication of DE3617774C2 publication Critical patent/DE3617774C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30144Printing quality

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Description

Die Erfindung betrifft eine Vorrichtung zur Verarbeitung serieller Daten in einem Prüfsystem nach dem Oberbegriff des Patentanspruchs 1.
Eine Vorrichtung dieser Art ist aus der US-PS 4,516,264 bekannt. Diese Druckschrift beschreibt eine Vorrichtung zur Verarbeitung serieller Daten in einem Prüfsystem, bei dem ein Brief daraufhin geprüft wird, ob die Adresse maschinen- oder handgeschrieben ist. Dabei wird von den jeweils mittels des Bildwandlers abgetasteten Spalten nur ein Teil der Signale, nämlich diejenigen, die der jeweiligen Briefhöhe entsprechen, weiterverarbeitet, das heißt es wird es wird ein Fenster er­ zeugt. Die nach dieser Fensterung verbleibenden Signale wer­ den für jedes Bildelement mittels eines AD-Umsetzers in ein Sechs-Bit-Digitalwort umgesetzt. Diese Digitalwörter werden in einem Speicher gespeichert, um danach einer sehr aufwendi­ gen und komplizierten Verarbeitung unterzogen zu werden, bevor ein Vergleich mit einem Bezugswert stattfindet.
Abbildungseinrichtungen mit einem eindimensionalen Bild­ wandlerelement und einer Linse sind in der letzten Zeit zunehmend zur Automatisierung von Betriebsabläufen, bei­ spielsweise zur Produktkontrolle eingesetzt worden. Bei einer der Techniken zur Untersuchung von Produkten wird das gesamte Gesichtsfeld eines eindimensionalen Bildwand­ lerelements in eine Vielzahl von Feldern unterteilt, und die wichtig erscheinenden unterteilten Gesichtsfelder, auch als Fenster oder Fensterbereiche bezeichnet, werden in einem Videosignal eingestellt, welches das Bild eines Produkts darstellt und mit Hilfe des eindimensionalen Bildwandlerelements erhalten wurde. Die Anzahl der signi­ fikanten Bildelemente im Bild des Produkts innerhalb je­ des der als wichtig erscheinenden Gesichtsfelder wird ge­ zählt. Diese gezählte Anzahl wird für jedes der als wich­ tig erscheinenden unterteilten Gesichtsfelder mit einem Bezugswert verglichen. Auf diese Weise kann selbst bei einem Produkt mit einer komplizierten Gestalt auf der Ba­ sis des Vergleichsergebnisses einfach beurteilt werden, ob es gut ist oder nicht. Die Genauigkeit der Beurteilung und Feststellung wird durch einen solchen Vergleich erhöht.
Mit dieser bekannten Technik ist es möglich, irgendeinen gewünschten Teil eines Produkts, von dem ein Merkmal zu extrahieren ist, durch Änderung der Größe, Lage und Anzahl von Fenstern nach Bedarf auszuwählen. Diese Technik hat daher einen weiten Einsatzbereich und bietet die Möglich­ keit flexibel auf Änderungen des zu untersuchenden Ob­ jekts zu reagieren. Sie erlaubt außerdem die unabhängige Beurteilung einzelner Teile eines Bildes. Man kann daher mit dieser Technik auch eine Klassifizierung unterschied­ licher Produktarten, eine Untersuchung lediglich eines gemeinsamen Teils, etc. vornehmen.
Da der Vergleich mit einem Bezugswert stattfindet, kann diese Technik für eine Untersuchungslinie verwendet wer­ den, ohne daß kleine Verschiebungen zwischen dem Bild und dem Artikel (Produkt) oder relativ kleine Staubteilchen beachtet werden müßten, indem die Größe der Fenster geeig­ net festgelegt wird.
Die Fig. 1 und 2 zeigen Beispiele für diese Fenstertechnik bei der Bildverarbeitung.
Fig. 1 zeigt ein Beispiel zur Ermittlung, ob der Buchstabe "A" richtig gedruckt ist. Zu diesem Zweck werden drei Fen­ ster W1, W2 und W3 an drei Stellen eingestellt, an denen besonders häufig Druckfehler auftreten. Fig. 1(a) zeigt ein Beispiel, bei dem Buchstabe "A" richtig gedruckt ist. Fig. 1(b) zeigt ein Beispiel, bei dem die Mitte des Buch­ stabens "A" ausgefüllt ist, weshalb hier der Meßwert für den Bereich des Fensters W2 den Bezugswert überschreitet. In diesem Beispiel fehlt außerdem die linke untere Ecke des Buchstaben "A", weshalb der Meßwert für den Bereich des Fensters W3 geringer ist als der zugehörige Bezugs­ wert. Aus diesen Gründen wird der Buchstabe "A" als feh­ lerhaft erkannt. Im Beispiel von Fig. 1(c) sind die Meß­ werte für die Fenster W2 und W3 richtig, derjenige für den Bereich des Fensters W1 überschreitet hingegen den zugehö­ rigen Bezugswert, da an der rechten oberen Ecke des Buch­ staben "A" ein übermäßig großer Farbtropfen zu einem Fehler geführt hat. Auch in diesem Fall wird der Druck daher als fehlerhaft erkannt.
Fig. 2 zeigt ein Beispiel zur Unterscheidung bzw. Erken­ nung der Buchstaben "E", "F" und "L", bei dem Fenster W1 und W2 eingestellt sind. Wenn die beiden Meßwerte für die Bereiche der Fenster W1 und W2 jeweilige Bezugswerte über­ schreiten, dann kann hieraus auf den Buchstaben "E" ge­ schlossen werden. Wenn nur der Meßwert für das Fenster W1 den Bezugswert überschreitet, wird der Buchstabe "F" er­ kannt. Wenn nur der Meßwert für das Fenster W2 den Bezugs­ wert überschreitet, wird der Buchstabe "L" erkannt.
Wenn ein Mikrocomputer für die Unterteilungsverarbeitung der seriellen Videosignaldaten eingesetzt werden sollte, dann hat man bisher die seriellen Daten des binären Video­ signals in parallele Daten (z. B. 8-Bit-Paralleldaten bei Verwendung eines 8-Bit-Mikrocomputers) umgesetzt und die­ se dann vorübergehend durch direkten Speicherzugriff (DMA) in einen Speicher eingeschrieben. Mit Hilfe entsprechender Software wurde dann die Anzahl signifikanter Bildelemente entsprechend den einzelnen Bildern innerhalb vorbestimm­ ter unterteilter Gesichtsfelder gezählt.
Da jedoch die Anzahl von Bildelementen in eindimensiona­ len Bildwandlern in der letzten Zeit erhöht wurde, gab es eine Zunahme der Anzahl von Gesichtsfeldern, die in geeig­ nete Größen zu unterteilen waren, weshalb die mittels ei­ ner entsprechenden Software erfolgende Datenverarbeitung eine übermäßig lange Zeit erforderte. Diese herkömmliche Datenverarbeitung ist daher nicht mehr geeignet, in effek­ tiver Weise eine Untersuchung oder Beurteilung von Produk­ ten auszuführen, die sich mit gewöhnlicher Transportge­ schwindigkeit auf einer Fördereinrichtung bewegen, ganz abgesehen von Produkten, die mit relativ hoher Geschwin­ digkeit bewegt werden.
Aus der Druckschrift IBM Technical Disclosure Bulletin, Band 26, Nr. 8, Januar 1984, Seiten 3987 und 3988 ist es bekannt, aus in bestimmter Form vorliegenden Faksimiledaten, die ein gesamtes Dokument darstellen, ausgewählte Teile zu extrahieren, wobei die Extraktion zweidimensional erfolgt, also X- und Y-Koordinaten vorgegeben werden müssen.
Die DE-A 22 26 300, offenbart die Möglichkeit, innerhalb eines zweidimensionalen Rasters, dessen Horizontale die Zeit ist, mehrere Fenster beliebiger Größe und Lage vorzugeben. Hierzu wird eine entsprechende Verknüpfungslogik eingesetzt, die das Vorliegen der den einzelnen Bildpunkten eines Bild­ wandlers entsprechenden Signale in paralleler Form voraus­ setzt. Bei diesem Stand der Technik müssen also die seriellen Daten zunächst in parallele Daten umgesetzt werden, bevor eine Fensterbildung erfolgen kann, was keinen Echtzeitbetrieb mehr erlaubt. Auch diese Druckschrift ist daher nicht geeig­ net, die beanspruchte Erfindung vorwegzunehmen oder auch nur nahezulegen.
Aufgabe der Erfindung ist es, eine Vorrichtung der eingangs genannten Art so auszugestalten, daß sie bei geringem Speicherbedarf und vergleichsweise einfacher Verarbeitung in der Lage ist, einen abgetasteten Gegenstand anhand der sich durch die Abtastung ergebenden seriellen Daten daraufhin zu prüfen, ob er bestimmten Anforderungen entspricht oder nicht.
Diese Aufgabe wird erfindungsgemäß durch die kennzeichnenden Merkmale im Patentanspruch 1 gelöst.
Eine Weiterbildung der Erfindung ist im Anspruch 2 enthalten.
Die Erfindung schafft demnach eine Datenverarbeitungsvor­ richtung, die in der Lage ist, serielle Daten wie etwa ein Videosignal auf die Weise zu verarbeiten, daß die Daten auf Echtzeit-Basis in jede gewünschte Länge unterteilt werden, so daß die Anforderungen an die Software im Mikro­ computer verringert und die Geschwindigkeit der Datenver­ arbeitung erhöht wird. Die Vorrichtung eignet sich dadurch zufriedenstellend für den Einsatz bei der Überwachung von Produkten, die mit relativ hoher Geschwindigkeit auf einer Fördereinrichtung bewegt werden.
Die Erfindung wird nachfolgend anhand von Ausführungsbei­ spielen unter Bezug auf die Zeichnungen näher erläutert. Es zeigen:
Fig. 1 und 2 Beispiele für eine Fenster-Bild- Verarbeitung,
Fig. 3 ein Blockdiagramm einer grundsätz­ lichen Anordnung einer Datenver­ arbeitungsvorrichtung gemäß der Erfindung,
Fig. 4 ein Blockdiagramm eines Ausführungsbei­ spiels einer Anordnung, bei der die er­ findungsgemäße Datenverarbeitungsvor­ richtung zur Untersuchung von Produkten verwendet wird,
Fig. 5 ein Blockdiagramm eines praktischen Aus­ führungsbeispiels der erfindungsgemäßen Datenverarbeitungsvorrichtung,
Fig. 6 ein Zeitdiagramm eines Beispiels der Verarbeitung serieller Daten gemäß der Erfindung,
Fig. 7 ein Zeitdiagramm eines Beispiels des ge­ samten Prozesses der Verarbeitung se­ rieller Daten gemäß der Erfindung,
Fig. 8 ein Blockdiagramm der grundsätzlichen Anordnung eines anderen Ausführungsbei­ spiels der Erfindung,
Fig. 9 Koordinaten von Fensterbereichen inner­ halb eines Gesichtsfeldes,
Fig. 10 eine perspektivische Ansicht einer An­ ordnung, bei der ein Ausführungsbeispiel der Erfindung zur Überwachung von Pro­ dukten eingesetzt ist,
Fig. 11 ein Blockdiagramm einer Hardware-Anord­ nung eines Ausführungsbeispiels der Er­ findung,
Fig. 12 ein Zeitdiagramm von Signalen an we­ sentlichen Punkten der Anordnung von Fig. 11,
Fig. 13 ein praktisches Beispiel des Speicher­ aufbaus bei dem Ausführungsbeispiel von Fig. 11 und
Fig. 14 bis 20 Flußdiagramme von jeweiligen in dem ROM gespeicherten Programmen, wobei Fig. 14 ein Flußdiagramm eines Hauptprogramms ist, Fig. 15 ein Flußdiagramm einer Ta­ statureingabeverarbeitung ist, Fig. 16 ein Flußdiagramm einer Anfangsverarbei­ tung ist, Fig. 17 ein Flußdiagramm ei­ ner Unterbrechungsverarbeitung INT1 ist, Fig. 18 ein Flußdiagramm einer Meßver­ arbeitung ist, Fig. 19 ein Flußdiagramm einer Beurteilungsausgabe-Verarbeitung ist und Fig. 20 ein Flußdiagramm einer Unterbrechungsverarbeitung INT2 ist.
Fig. 3 zeigt den Grundaufbau einer erfindungsgemäßen Da­ tenverarbeitungsvorrichtung. Bei diesem dargestellten Grundaufbau gibt ein Lesesignalgenerator E einen Lesebe­ fehl in Form eines Lesesignals RD ab, um Zugriff auf einen externen Speicher zu nehmen und dadurch Divisionsdaten DD auszulesen, welche die Anzahl von Bildelementen für die einzelnen Gesichtsfelder repräsentieren, die das Ge­ sichtsfeld des eindimensionalen Bildwandlers unterteilen. Auf die gelesenen Daten DD wird ein Divisionsdatenzähler A voreingestellt. Der Divisionsdatenzähler A zählt als Ab­ wärtszähler Bezugstaktimpulse CLK entsprechend den aufein­ anderfolgenden Bildelementen und gibt ein Übertragssignal CY ab, wenn sein Zählerstand 0 wird. Der Lesesignalgenera­ tor E gibt dann aufgrund dieses Übertragssignals CY erneut ein Lesesignal RD ab, wodurch zur nächsten Voreinstellung des Divisionsdatenzählers A die nachfolgenden Divisionsda­ ten aus dem externen Speicher gelesen werden.
Es sei angemerkt, daß das erstmalige Auslesen der Divi­ sionsdaten DD aus dem externen Speicher aufgrund eines Lesesignals RD erfolgt, welches der Lesesignalgenerator E als Antwort auf ein Startsignal TR gibt. Ferner geben als Antwort auf das Übertragssignal CY ein Ausgangsadreß­ generator C und ein Schreibsignalgenerator D eine Speicher­ adresse in Form einer Ausgangsadresse AD bzw. einen Schreibbefehl in Form eines Schreibsignals WR ab. Hier­ durch wird die Anzahl signifikanter Bildelemente entspre­ chend dem Bild in jedem der durch die aufeinanderfolgende Unterteilung der eingegebenen seriellen Daten definierten Gesichtsfelder in einem externen Speicher oder ähnlichem aufgezeichnet. Bei der dargestellten Anordnung gibt ein Zähler B für die Anzahl der signifikanten Bits Teilbild­ element-Ausgangsdaten ab, welche die Summe darstellen aus der Gesamtanzahl signifikanter Bildelemente in dem dem jeweiligen Teil-Gesichtsfeld entsprechenden Bild und der Gesamtanzahl der signifikanten Bildelemente, die von den Bildern der vorangehenden Teil-Gesichtsfelder nacheinan­ der aufsummiert wurden. Es ist aber auch möglich, nur je­ weils die Anzahl der signifikanten Bildelemente eines je­ weiligen der nacheinander folgenden Teil-Gesichtsfelder auszugeben, indem der Zähler B jeweils durch das Schreib­ signal RD gelöscht wird. In Fig. 3 bezeichnet VVS die se­ riellen Daten und VD die Anzahl signifikanter Bits oder Bildelemente.
Fig. 4 zeigt die Anordnung eines praktischen Beispiels, bei dem die Datenverarbeitungsvorrichtung gemäß dem er­ sten Ausführungsbeispiel der Erfindung zur Überwachung von Produkten eingesetzt ist, die auf einer Fördereinrich­ tung bewegt werden. Bei der dargestellten Anordnung wird ein mit Hilfe einer Lichtquelle 1 beleuchteter Gegenstand 2 mittels einer Linse 3 auf einem eindimensionalen Bild­ sensor 4 abgebildet. Der Bildwandler 4 wird von einem Triggersignal TR und Bezugstaktimpulsen CLK getrieben, die von einer exklusiven Steuereinheit 5 geliefert werden. Das Triggersignal TR bewirkt den Beginn einer Abtastung durch den Bildsensor 4. Der Bildsensor 4 besteht im allge­ meinen aus mehreren hundert bis mehreren tausend in einer Reihe angeordneten Fotodioden, von denen jede ein 1-Bit- Bildelement darstellt. Die jeweiligen Ausgangssignale der Bildelemente werden in Form einer Impulskette synchron mit den Bezugstaktimpulsen CLK abgenommen und bilden ein Videosignal VS. Das Videosignal VS wird einer Analogver­ arbeitungsschaltung 6 zugeführt und dort verstärkt, ge­ formt und binär codiert. Das so verarbeitete Signal wird in Form eines binär codierten Videosignals VVS ausgegeben, welches aus seriellen Daten von Bits besteht, die durch einen von zwei Werten H oder L repräsentiert werden. Das Videosignal VVS wird an die Datenverarbeitungsvorrichtung 7 gemäß der Erfindung geliefert, wo es der oben beschrie­ benen Teilungsverarbeitung unterzogen wird, damit Daten erhalten werden, welche die Anzahl signifikanter Bildele­ mente entsprechend dem Bild eines jeweiligen Teil-Ge­ sichtsfeldes repräsentieren. In Fig. 4 bezeichnet RAM-A ein RAM zum Einschreiben der Divisionsdaten entsprechend der Anzahl von Bildelementen innerhalb der einzelnen Teil-Gesichtsfelder, welche durch Unterteilung des Gesamt- Gesichtsfeldes des Bildsensors entstehen. RAM-B bezeichnet ein RAM zum Einschreiben der Anzahl signifikanter Bildele­ mente entsprechend dem Bild innerhalb der einzelnen Teil- Gesichtsfelder. Voreinstelldivisionsdaten werden über ei­ nen Adreßbus B1, einen Datenbus B2 und einen Steuerbus B3 von einer nicht gezeigten Zentraleinheit zur Steuerung der dargestellten Anordnung in das RAM-A eingeschrieben. Zu diesem Zeitpunkt sind Puffer 8, 9 und 10 in einen Zu­ stand hoher Impedanz gebracht, also gesperrt, so daß die Zentraleinheit auf die Speicher RAM-A und RAM-B zugreifen kann. Danach wird an die Datenverarbeitungsvorrichtung 7 von einem Ein-/Ausgabeport der Zentraleinheit ein Direkt­ speicherzugriffssignal DMA geliefert. Die Datenverarbei­ tungsvorrichtung 7 liefert dann als Antwort auf den Emp­ fang des Triggersignals TR ein Haltesignal HOLD an die Zentraleinheit. Die Zentraleinheit liefert daraufhin ein Antwortsignal HOLD A, welches die Puffer 8, 9 und 10 akti­ viert und die Puffer 11 und 12 in einen Zustand hoher Im­ pedanz versetzt. Hierdurch wird das Recht des Zugriffs auf die Speicher RAM-A und RAM-B auf die Datenverarbei­ tungsvorrichtung 7 übertragen. Danach wird das Lesen der Divisionsdaten, das Zählen der Anzahl signifikanter Bild­ elemente innerhalb jedes der Teil-Gesichtsfelder und das Schreiben des Zählergebnisses in den Speicher RAM-B nach­ einander im Echtzeit-Betrieb durchgeführt. Wenn die Ver­ arbeitung der seriellen Videosignaldaten für das gesamte Gesichtsfeld abgeschlossen ist, wird die Ausgabe des Hal­ tesignals HOLD aufgehoben. Dadurch wird das Recht zum Zu­ griff auf die Speicher RAM-A und RAM-B an die Zentralein­ heit zurückgegeben.
Die Zentraleinheit kann dann die Anzahl der signifikanten Bildelemente entsprechend dem Bild innerhalb jedes der Teil-Gesichtsfelder einfach durch Auslesen der an einer vorbestimmten Speicheradresse im RAM-B gespeicherten In­ halte erfahren.
Fig. 5 zeigt ein Beispiel einer praktischen Ausbildung der Datenverarbeitungsvorrichtung gemäß dem ersten Aus­ führungsbeispiel der Erfindung.
In Fig. 5 bezeichnet 13 einen Ausgangsadreßzähler, 14 ei­ nen Bildelementanzahlzähler, 15 einen Divisionsdatenzäh­ ler, 16 bis 20 D-Flipflops, 21 einen Gesichtsfeldzähler, 22 und 23 Und-Glieder sowie 24 bis 26 Oder-Glieder. AD ist eine Ausgangsadresse, VD sind Bildelementanzahldaten und DD Divisionsdaten.
Wenn bei der dargestellten Anordnung von der Zentralein­ heit oder einer anderen externen Einrichtung ein Direkt­ speicherzugriffs-Anforderungssignal DMA ausgegeben wird, dann wird als Antwort auf das nächste danach auftretende Triggersignal TR ein Haltesignal HOLD ausgegeben und das Recht zum Zugriff auf jeden der Busse auf die Datenverar­ beitungsvorrichtung 7 übertragen.
Das Triggersignal TR löscht den Ausgangsadreßzähler 13, der als Ausgangsadreßgenerator C (Fig. 3) dient, und den Bildelementanzahlzähler 14, der als Zähler B (Fig. 3) dient. Ein erster Divisionsdatensatz DD wird in den Di­ visionsdatenzähler 15 (der dem Divisionsdatenzähler A von Fig. 3 entspricht) als Antwort auf die erste Anstiegsflan­ ke des Bezugstaktsignals CLK nach Eingang des Trigger­ signals TR eingeschrieben. Bei der in Fig. 4 gezeigten An­ ordnung werden die Divisionsdaten DD vom RAM-A ausgelesen, und in diesem Fall ist die Ausgangsadresse AD für beide Speicher RAM-A und RAM-B gleich. Daher werden die ersten Divisionsdaten DD sequentiell von der Adresse 0 im RAM-A geschrieben.
Nach Anstieg des Triggersignals TR werden die ersten Divi­ sionsdaten DD mit jedem Bezugstaktimpuls CLK abwärts ge­ zählt, und es wird das Übertragssignal CY ausgegeben, wenn der Zählerstand 0 erreicht wird.
Als Antwort auf die Eingabe dieses Übertragssignals CY wird zunächst ein Schreibsignal von dem Flipflop 16 ausgegeben, und es werden die Daten, die der Anzahl signi­ fikanter Bildelemente entsprechen und zur Verfügung ste­ hen, wenn das Übertragssignal CY erzeugt wird, unter der Adresse 0 in das RAM-B der Anordnung von Fig. 4 einge­ schrieben. Der Bildelementanzahlzähler 14 zählt die Anzahl der in ihn einlaufenden Bezugstaktimpulse CLK, bei denen das entsprechende Bit der seriellen Videosignaldaten VVS H ist.
Als Antwort auf den ersten Anstieg eines später beschrie­ benen Hilfstaktsignals SCLK nach Ausgabe des Schreibsig­ nals wird ein Adreßerhöhungssignal ADUP ausgegeben und die Ausgangsadresse AD um 1 erhöht.
Es sei angemerkt, daß bei diesem Ausführungsbeispiel das Bezugstaktsignal ein Tastverhältnis von 1/4 aufweist und das Hilfstaktsignal SCLK dieselbe Periode und dasselbe Tastverhältnis besitzt wie das Bezugstaktsignal CLK, je­ doch gegenüber diesem um 180° phasenverschoben ist. Beide Taktsignale werden von der Steuereinheit 5 geliefert.
Das Adreßerhöhungssignal ADUP löscht gleichzeitig den Bildelementanzahlzähler und bereitet ihn damit für das Zählen der Anzahl signifikanter Bildelemente im folgenden Teil-Gesichtsfeld vor. Als Antwort auf den ersten Anstieg des Hilfstaktsignals SCLK nach Ausgabe des Adresserhö­ hungssignals ADUP wird von dem Flipflop 18, das als Lese­ signalgenerator E (siehe Fig. 3) dient, ein Lesesignal RD ausgegeben. Damit wird ein zweiter Divisionsdatensatz DD von der Adresse 1 im RAM-A der Anordnung von Fig. 4 ausgelesen und damit der Divisionsdatenzähler 15 erneut voreingestellt. Der oben beschriebene Datenverarbeitungs­ vorgang wird dann wiederholt.
Das Gesamt-Gesichtsfeld des eindimensionalen Bildsensors 4 wird im Gesichtsfeldzähler 21 eingestellt, und wenn die Bezugstaktimpulse CLK für das Gesamt-Gesichtsfeld gezählt wurden, wird das Haltesignal HOLD gelöscht.
Fig. 6 zeigt ein Beispiel eines Zeitdiagramms für die oben beschriebene erfindungsgemäße Verarbeitung serieller Da­ ten. Im dargestellten Zeitdiagramm wird eine jeweilige Da­ tenverarbeitung innerhalb einer Periode des Bezugstakt­ signals CLK beendet. Nach Ausgabe des Übertragssignals CY werden die Bildelementanzahldaten VD als Antwort auf den Anstieg des Schreibsignals in den externen Speicher ein­ geschrieben und die Ausgangsadresse AD als Antwort auf den Anstieg des Adreßerhöhungssignals ADUP erhöht. Das Und- Glied 22 in der beispielhaften Anwendung von Fig. 5 der er­ findungsgemäßen Vorrichtung ist so angeordnet, daß das Adreßerhöhungssignal ADUP nach dem Anstieg des Schreib­ signals ausgegeben wird.
Fig. 7 zeigt ein Beispiel eines Zeitdiagramms für die Da­ tenverarbeitung in der praktischen Ausgestaltung der er­ findungsgemäßen Vorrichtung gemäß Fig. 4 und ihrer bei­ spielhaften Anwendung gemäß Fig. 5. Wenn das Direktspei­ cherzugriffssignal DMA in die Datenverarbeitungsvorrich­ tung 7 gemäß der Erfindung von dem Mikrocomputer über den Ein/Ausgabeport oder ähnliches eingegeben wird, wird auf­ grund des nächsten darauffolgenden Triggersignals TR das Haltesignal HOLD ausgegeben.
Wenn die seriellen Videosignaldaten VVS beispielsweise den in Fig. 7 gezeigten Verlauf besitzen, und das Übertrags­ signal CY in Übereinstimmung mit den Divisionsdaten gemäß Fig. 7 ausgegeben wird, dann ändern sich die Bildelement­ anzahldaten VD, die von dem Bildelementanzahlzähler 15 ausgegeben werden, gemäß Darstellung in Fig. 7.
Im folgenden soll ein zweites Ausführungsbeispiel der Er­ findung beschrieben werden, und zwar in Verbindung mit ei­ ner praktischen Anordnung, bei der die Erfindung für ein Beurteilungssystem für eine Fördereinrichtung eingesetzt ist.
Fig. 8 zeigt ein Blockdiagramm des grundsätzlichen Aufbaus einer Datenverarbeitungsvorrichtung für die Verarbeitung serieller Daten gemäß dem zweiten Ausführungsbeispiel der Erfindung. Fig. 9 ist eine Ansicht, die die Koordinaten von Fenstern innerhalb eines Gesichtsfeldes zeigt.
Zur Vereinfachung der Beschreibung soll zunächst auf Fig. 9 Bezug genommen werden. Es wird angenommen, daß die drei Fenster W1, W2 und W3 in einem Gesichtsfeld S eingestellt sind, durch welches ein transportierter Artikel betrachtet werden kann. Die Koordinatendaten sind durch jeweiligen Y-Koordinatenabschnitte Y1 (der Abschnitt zwischen (a) und (b)), Y2 (der Abschnitt zwischen (c) und (d)) und Y3 (der Abschnitt zwischen (e) und (f)) der Fenster W1 bis W3 in Y-Richtung, das heißt parallel zur Transportrichtung der Artikel, sowie durch X-Koordinatenabschnitte X1, X2 und X3 in X-Richtung gegeben, die parallel zur Richtung des die Abtastung durchführenden eindimensionalen Zeilensensors 34 ist.
In der Anordnung von Fig. 8 speichert ein X-Koordinaten­ datenspeicher 81 die X-Koordinatendaten X1, X2 bzw. X3 der Fenster W1 bis W3. Ein Y-Koordinatendatenspeicher 82 speichert die y-Koordinatendaten Y1, Y2 bzw. Y3 der Fen­ ster W1 bis W3.
Ein Koordinatendaten-Vergleicher 83 erhält als ein Ein­ gangssignal einen von einer nicht gezeigten Einrichtung erzeugten Impulszug, der die Transportgeschwindigkeit ei­ ner Artikelfördereinrichtung repräsentiert. Der Verglei­ cher 83 zählt die Anzahl der einlaufenden Impulse, um die relative Entfernung zwischen einem transportierten Arti­ kel (das heißt dem Gesichtsfeld S) und dem Bildfühler 34 zu erhalten, also die Y-Koordinate des Bildfühlers 34, wenn man den Artikel, das heißt das Gesichtsfeld S als ruhend und den Bildfühler 34 in Y-Richtung bewegt betrach­ tet. Der Vergleicher 83 vergleicht den erhaltenen Abstand und die y-Koordinatendaten der einzelnen Fenster, die vom Speicher 82 ausgegeben werden, gibt ein Ausgangssignal ab, wenn die beiden Werte übereinstimmen, und liefert dieses Ausgangssignal an eine Fensterausgabeeinrichtung 84.
Die Fensterausgabeeinrichtung 84 erhält als Eingangssigna­ le das Ausgangssignal des Vergleichers 83 und die X-Koor­ dinatendaten vom X-Koordinatendatenspeicher 81. Die Fen­ sterausgabeeinrichtung 84 liefert die UND-Verknüpfung der beiden Eingangsdaten an einen Zähler 85. Beispielsweise liefert die Fensterausgabeeinrichtung 84 die UND-Verknüp­ fung der Y1-Koordinatendaten vom Vergleicher 83 und der X1-Koordinatendaten vom Datenspeicher 81 als das dem Fen­ ster W1 (Fensterfläche) entsprechende Signal. In ähnlicher Weise liefert die Fensterausgabeeinrichtung 84 die UND- Verknüpfung der Y2-Koordinatendaten und der X2-Koordina­ tendaten als ein dem Fenster W2 entsprechendes Signal und die UND-Verknüpfung der Y3-Koordinatendaten und der X3- Koordinatendaten als ein dem Fenster W3 entsprechendes Signal.
Der Zähler 85 untersucht die seriellen Abtastdaten, die vom Bildfühler 34 ausgegeben werden, nur dann, wenn er ein Fenstersignal erhält. Mit anderen Worten, der Zähler 85 untersucht die seriellen Daten, die sich bei der jewei­ ligen Abtastung innerhalb spezieller Fenster, z. B. des Fensters W1, ergeben. Der Zähler 85 erfaßt signifikante Bildelementdaten, z. B. eine logische "1", und zählt die Anzahl von Bits dieser Daten. Das Zählergebnis wird an einen Addierer 86 gegeben.
Der Addierer 86 addiert die Ergebnisse der Zählung der An­ zahl signifikanter Bildelementdaten, welche in den Daten enthalten sind, die bei den jeweiligen Abtastungen inner­ halb der einzelnen Fenster erhalten werden, so daß eine Gesamtsumme der signifikanten Bildelementdaten für alle Fenster erhalten wird. Der Addierer 86 gibt den so gewon­ nenen Wert an eine Halteeinrichtung 87, die diesen Wert hält.
Da im Beispielsfall die Fenster W1, W2 und W3 so ausge­ wählt sind, daß sie einander nicht überlappen, wird die Summe der signifikanten Bildelementdaten, die für die ein­ zelnen Fenster erhalten wird, in der Halteeinrichtung 87 gehalten. Es ist demzufolge möglich, für die einzelnen Fenster einen Vergleich zwischen der Summe der signifikan­ ten Bildelemente und einem gesonderten Bezugswert für das jeweilige Fenster durchzuführen und aufgrund des Ver­ gleichsergebnisses zu entscheiden, ob der Artikel gut ist oder nicht.
Nachdem nun der grundsätzliche Aufbau und das Funktions­ prinzip des zweiten Ausführungsbeispiels der Erfindung beschrieben wurden, soll nun auf einzelne Beispiele einge­ gangen werden.
Fig. 10 ist eine perspektivische Ansicht einer beispiel­ haften Anordnung des beschriebenen Ausführungsbeispiels der Datenverarbeitungsvorrichtung gemäß der Erfindung in der Anwendung zur Untersuchung von Produkten.
Gemäß Fig. 10 werden Produkte 32 auf einem Förderband 31 transportiert und mittels einer Beleuchtungseinrichtung 33 beleuchtet. Eine Kamera 34 mit einem (eindimensionalen) Zeilenbildsensor ist so angeordnet, daß ihr Gesichtsfeld 35 senkrecht zur Transportrichtung 36 des Förderbandes 31 verläuft. Das eindimensionale Bild des Produkts 32 gelangt in Form serieller Daten an die erfindungsgemäße Datenver­ arbeitungsvorrichtung 37.
Ein Positionssensor 38 ist eingeschaltet, während das Pro­ dukt 32 die Stelle des Gesichtsfeldes 35 passiert und liefert ein Ein/Aus-Signal an die Datenverarbeitungsvor­ richtung 37. Ein Impulsgeber (Drehcodierer) 39 liefert an die Datenverarbeitungsvorrichtung 37 einen Impulszug mit einer Impulsbreite, die der Transportgeschwindigkeit des Förderbandes 31 umgekehrt proportional ist. Die Datenver­ arbeitungsvorrichtung 37 ermittelt die Koordinate des Pro­ dukts 32 in Transportrichtung 36 durch Zählen der Anzahl von Impulsen dieses Impulszugs vom Impulsgeber 39. Die Da­ tenverarbeitungsvorrichtung 37 bestimmt auf diese Weise die Zeitspanne, während welcher ein bestimmtes Fenster an dem Produkt 37 durch das Gesichtsfeld 35 der Kamera 34 läuft und zählt und addiert die Anzahl signifikanter Bits (z. B. die Bildelementsignale des logischen Werts "1") in dem binär codierten Ausgangssignal, das die Kamera 34 während dieser Zeitspanne liefert. Dadurch wird ein Betrag gemessen, der der Fläche eines bestimmten Fensters an dem Produkt 32 proportional ist.
Nach dem Durchlauf des Produkts 32 beurteilt die Datenver­ arbeitungsvorrichtung 37 die Qualität des Produkts 32 auf­ grund eines Vergleichs zwischen dem Ergebnis der Messung für ein bestimmtes Fenster (Fensterfläche) und einem Be­ zugswert. Wenn das Produkt 32 als nicht gut beurteilt wird, gibt die Datenverarbeitungsvorrichtung 37 ein Signal an einen Treiber 40 für einen pneumatischen Antrieb (Luft­ zylinder 41), aufgrund dessen das fehlerhafte Produkt auf ein Ausschußförderband 42 gestoßen wird.
Fig. 11 ist ein Blockdiagramm eines Beispiels der Hardwa­ re-Anordnung der erfindungsgemäßen Datenverarbeitungsvor­ richtung 37.
In Fig. 11 liefert ein Bildsensortreiber 43 ein Trigger­ signal TR, das den Beginn der Abtastung kennzeichnet, und ein Übertragungstaktsignal CLK1 an den eindimensionalen Zeilen-Bildsensor 44, welcher ein analoges Videosignal VS abgibt, das dem Bild eines Produkts 32 entspricht, welches mit Hilfe einer Linse 45 auf dem Bildsensor 44 abgebildet wird. Das analoge Videosignal VS wird mittels einer Schwel­ lenwertspannung eines vorgegebenen Werts binär codiert und als binär codiertes Videosignal VVS in die Datenverarbei­ tungsvorrichtung 37 eingegeben. Ein DMA-Controller gibt - als Antwort auf ein DMA-Requestsignal (Anforderungssignal) REQDMA, das von einem IOP (Eingabe/Ausgabe-Port) 47 ausge­ geben wird, ein DMA-Responsesignal (DMA-Antwortsignal) ab. Dadurch werden Puffer 48 und 49 umgeschaltet und damit der Bus auf den DMA-Controller 46 umgeschaltet und die DMA- Übertragung des binär codierten Videosignals VVS zu einem Video-RAM 50 bewirkt.
Das Ausgangssignal (Impulse) vom Impulsgeber 39 wird In­ terrupteingängen INT1 und INT2 einer CPU 51 geliefert, und die Anzahl dieser Impulse wird durch Interruptverarbeitung gezählt. Die CPU 51 liest ein Ein/Aus-Signal (ein SAMP- Signal), das angibt, ob ein Produkt 32 angekommen ist oder nicht, vom Positionssensor 38 über den IOP 47. Auf der Ba­ sis dieses Ein/Aus-Signals gibt die CPU 51 ein ACT-Signal über den IOP 47 ab, wodurch der Pneumatikzylinder 41 ge­ trieben wird.
Die CPU 51 kann darüber hinaus mit notwendigen Daten (z. B. Koordinatendaten betreffend einen Satz von Fenstern) von einer Tastatureingabevorrichtung 52 versorgt werden und führt eine Verarbeitung unter Verwendung eines Vielzweck- RAM 53 als Speicher entsprechend einem Programm in einem ROM 52 aus.
Fig. 12 ist ein Zeitdiagramm, das die jeweiligen Signal­ zustände an wesentlichen Teilen in der Anordnung von Fig. 11 wiedergibt. Die Arbeitsweise der Anordnung von Fig. 11 soll nachfolgend unter Bezug auf die Fig. 11 und 12 erläu­ tert werden.
Der Bildsensor 44 gibt als Antwort auf das Triggersignal TR, das als Startsignal dient, das analoge Videosignal VS ab, das die Daten für sämtliche Bildelemente einer Zeile, das heißt insgesamt 2.048 Bildelemente beinhaltet. In den DMA-Controller 46 wird das binär codierte Videosignal VVS eingegeben. Wenn die Daten des binär codierten Videosig­ nals VVS benötigt werden, gibt die CPU 51 über den IOP 47 einen DMA-Requestimpuls REQDMA ab, und das DMA-Response­ signal DMAR wird mit der Abfallflanke des DMA-Requestim­ pulses ausgegeben. Damit beginnt die Übertragung der Da­ ten für die 2.048 Bildelemente einer Zeile.
Das binär codierte Videosignal VVS wird in Übereinstimmung mit den Übertragungstaktimpulsen CLK1 im DMA-Modus in das Video-RAM 50 übertragen, wobei der Wert jedes einzelnen Bits des Videosignals VVS jeweils zum Zeitpunkt eines Taktimpulses CLK1 danach beurteilt wird, ob es H oder L ist. In Übereinstimmung mit dem Ergebnis dieser Beurtei­ lung werden entsprechend der Darstellung in Fig. 12 Daten in einem Videospeicher 60 gespeichert, der im Video-RAM 50 enthalten, in Fig. 11 aber nicht gezeigt ist.
Fig. 13 zeigt ein praktisches Beispiel eines Speicherauf­ baus. Alle in Fig. 13 gezeigten Speicherbereiche sind in dem RAM 53 von Fig. 11 enthalten. Ein Seriendatenpuffer 60A bietet einen Bereich zum Lesen der DMA-übertragenen seriellen Daten vom Video-RAM 50 und zum Puffern der gelesenen seriellen Daten in dem RAM 53. Ein Fenster-X- Koordinatenspeicherbereich 61 speichert die jeweiligen Ko­ ordinaten des Startpunkts und des Endpunkts jedes Fensters in einem Koordinatensystem, bei dem die X-Richtung durch die Abtastrichtung des Bildsensors 44 bestimmt ist. Die Koordinaten sind durch die entsprechenden Seriennummern der auf einer vom Bildsensor 44 abgetasteten Zeile ent­ haltenen Bildelemente repräsentiert. Entsprechend den X- Koordinatendaten werden aus den seriellen Eingangsdaten die Daten eines bestimmten Fensters extrahiert. Die Anzahl signifikanter Bildelemente (z. B. der Bildelemente mit dem Logikwert "1") der extrahierten Daten wird gezählt.
Die Bezeichnung "X(N, 0)" im Fenster-X-Koordinatendaten­ speicherbereich 61 bezeichnet einen Bereich zur Speiche­ rung der X-Koordinate (eine Koordinate näher zur LSB-Seite (Seite des niedrigstwertigen Bits) in der Anordnung von Bildelementen auf einer vom Bildsensor 44 abgetasteten Zeile) des Startpunkts des N-ten Fensters (ein Punkt, an dem das N-te Fenster beginnt), während X(N, 1) einen Be­ reich bezeichnet für die Speicherung der X-Koordinate (ei­ ner Koordinate näher zur MSB-Seite (Seite des höchstwerti­ gen Bits) in der Anordnung von Bildelementen in einer vom Bildsensor 44 abgetasteten Zeile) des Endpunkts des N-ten Fensters (eines Punktes, an dem das N-te Fenster aufhört) Ein Fenster-Y-Koordinatendatenspeicherbereich 62 ist ein Bereich zur Speicherung der Y-Koordinatendaten für die einzelnen Fenster, die von der vom Impulsgeber 39 ausgegebenen Impulsanzahl repräsentiert werden. Die Be­ zeichnung "Y(N, 0)" im Bereich 62 bedeutet einen Bereich zur Speicherung der Y-Koordinate des Startpunkts des N-ten Fensters (eines Punktes, wo das N-te Fenster beginnt), während Y(N, 1) einen Bereich zur Speicherung der Y-Koor­ dinate für den Endpunkt des N-ten Fensters (eines Punktes, an dem das N-te Fenster aufhört) bezeichnet.
Ein Beurteilungsdatenspeicherbereich 63 ist ein Bereich zur Speicherung von Bezugswertdaten für die Durchführung des Vergleichs mit dem Meßergebnis für ein beurteiltes Fenster. REG(N) und TRE(N) im Bereich 63 sind Daten fol­ gender Bedeutung. Wenn das Ergebnis der für das N-te Fenster ausgeführten Messung in den Bereich REG(N) ± TRE(N) fällt, dann wird das N-te Fenster als gut beurteilt, wäh­ rend es als schlecht beurteilt wird, wenn das Meßergebnis außerhalb dieses Bereichs liegt. Mit anderen Worten be­ zeichnet REG(N) Daten, die einen Bezugswert für das N-te Fenster repräsentieren, während TER(N) Daten sind, die ei­ nen zulässigen Fehler repräsentieren.
Ein Arbeitsspeicherbereich 64 besteht aus Teilbereichen von A bis L, die benutzt werden, wenn die CPU Verarbei­ tungsvorgänge ausführt, und die Zusätze (Identifikations­ symbole) A bis L werden verwendet, wenn dieselbe Operation wiederholt wird.
65 ist ein Speicherbereich zur Speicherung von Y-Koordina­ tendaten, die im Fenster-Y-Koordinatendatenspeicherbereich 62 gespeichert sind, und hier unabhängig von der Fenster­ nummer nach der Größe sortiert sind. In Fig. 9 ist die Y-Koordinate des Startpunkts des Fensters W1 (a) und die Y-Koordinate des Endpunkts (b). Die Y-Koordinate des Start­ punkts des Fensters W2 ist (c) und die Y-Koordinate des Endpunkts (d). Die Y-Koordinate des Startpunkts des Fen­ sters W3 ist (e) und die des Endpunkts (f). Im Speicher­ bereich 65 sind die Y-Koordinatendaten nach der Größe ge­ ordnet, das heißt in folgender Reihenfolge: (a), (c), (b), (d), (e) und (f), also die TY(1), TY(2), TY(3), . . .
Wenn die Zählung der vom Impulsgeber 39 ausgegebenen Im­ pulse TY(1), also (a) in Fig. 9 erreicht, dann bedeutet dies, daß zu diesem Zeitpunkt das Fenster W1 beginnt. Erreicht die Zählung dieser Impulse dann TY(2), also (c) in Fig. 9, dann bedeutet dies, daß zu diesem Zeitpunkt das Fenster W2 beginnt. Wenn die Zählung der vom Impulsgeber 39 ausgegebe­ nen Impulse TY(3) erreicht, bedeutet dies in entsprechen­ der Weise, daß zu diesem Zeitpunkt das Fenster W1 aufhört. Im weiteren werden die Zeitpunkte, zu denen die nachfol­ genden Fenster beginnen oder aufhören nacheinander in ähn­ licher Weise wie oben bestimmt.
Der Teilbereich OCW(1) in einem Speicherbereich 66 für nu­ merische Daten zur Kennzeichnung des offenen oder ge­ schlossenen Zustands von Fenstern speichert die Fenster­ nummer TY(1) im Speicherbereich 65, das heißt W1 in die­ sem Fall, und der Teilbereich OC(1) in einem Speicherbe­ reich 67 für Daten betreffend den offenen oder geschlos­ senen Zustand von Fenstern speichert Daten, die die Tat­ sache angeben, daß das Fenster mit der Fensternummer W1 offen oder geschlossen ist, Daten also, die im vorliegen­ den Fall angeben, daß das Fenster W1 offen ist.
Ein Fensterarbeitsspeicherbereich 68 speichert Daten, die den gegenwärtigen Zustand der einzelnen Fenster angeben, ob also die einzelnen Fenster zu einem gegebenen Zeitpunkt offen oder geschlossen sind. Diese Daten werden ständig von den im Speicherbereich 67 gespeicherten Daten korri­ giert.
Ein Additionsarbeitsspeicherbereich 69 umfaßt N Teilbe­ reiche. Wenn die CPU 51 den Fensterarbeitsspeicherbereich 68 abfragt und beispielsweise erfährt, daß das Fenster W1 geöffnet ist, dann holt sie aus dem Fenster-X-Koordinaten­ datenspeicherbereich 61 die X-Koordinatendaten des Fen­ sters W1. Unter Verwendung dieser X-Koordinatendaten stellt die CPU 51 die signifikanten Bildelemente für jede das Fenster W1 einschließende Abtastung anhand der seriel­ len Ausgangsdaten fest und zählt die Anzahl der festge­ stellten signifikanten Bildelemente. Das Zählergebnis wird beispielsweise im Teilbereich AREA(1) im Arbeitsspeicher­ bereich 69 aufaddiert.
Ein Zeitgeberspeicherbereich umfaßt Zählbereiche TIMER(1) und TIMER(2), von denen der erstere ein Bereich zum Zäh­ len der Anzahl von Impulsen, die der Impulsgeber 39 aus­ gibt, ist, während der letztere ein Bereich zum Zählen der Anzahl von Taktimpulsen CLK1 zur Ansteuerung des Bildsensors 44 ist.
Das im ROM 52 der in Fig. 11 gezeigten Anordnung enthalte­ ne Programm wird nachfolgend unter Bezug auf die jeweili­ gen Flußdiagramme der Fig. 14 bis 20 erläutert.
Fig. 14 zeigt ein Hauptprogramm. Diese Routine wird von der CPU 51 allgemein wiederholt.
Im Schritt (1) wird festgestellt, ob eine Eingabe von der Tastatureingabevorrichtung 52 vorliegt oder nicht. Wenn die Antwort JA ist, folgt der Schritt (2) bei dem die Eingabe von der Tastatureingabevorrichtung 52 nach Maßgabe einer Tastatureingabeverarbeitungsroutine als ein Unterprogramm gelesen wird. Die Verarbeitung geht dann zum Schritt (3). Wenn im Schritt (1) die Antwort NEIN heißt, dann springt das Programm zum Schritt (3) , wo das Ausgangs­ signal SAMP vom Positionssensor 38 gelesen und mit dem vorherigen SAMP-Signal verglichen wird (Schritt (4)).
Es wird dann geprüft, ob das vorherige SAMP-Signal L ist und das gegenwärtige SAMP-Signal H ist. Wenn die Antwort JA ist, bedeutet dies, daß das SAMP-Signal angestiegen ist. Es wird folglich entschieden, daß ein Produkt 32 ge­ rade in das Gesichtsfeld 35 eingetreten ist, und die Ver­ arbeitung geht dann zum Schritt (6), wo ein Anfangsverar­ beitungs-Unterprogramm zur Durchführung einer Anfangsein­ stellung ausgeführt wird, die für die nachfolgende Fen­ stermessung erforderlich ist. Wenn im Schritt (5) die Ant­ wort NEIN ist, springt das Programm zum Schritt (7), wo geprüft wird, ob das geltende SAMP-Signal H ist oder nicht.
Wenn im Schritt (7) die Antwort JA ist, wenn also das ge­ genwärtige SAMP-Signal H ist (hohen Pegel hat), dann be­ deutet dies, daß das zu messende Produkt sich innerhalb des Gesichtsfeldes 35 befindet. Die Verarbeitung geht dann zum Schritt (8) f wo die Messung als Unterprogramm ausgeführt wird. Wenn das momentane SAMP-Signal L ist (einen niedrigen Pegel hat), folgt der Schritt (9), wo beurteilt wird, ob das vorherige SAMP-Signal H war oder nicht. Wenn die Antwort JA ist, wird entschieden, daß das Produkt 32 das Gesichtsfeld 35 gerade durchlaufen hat, und es wird zum Schritt (10) vorgerückt, wo als Unterprogramm eine Beurteilung erfolgt, bei der durch einen Vergleich zwischen dem im Additionsarbeitsbereich 69 gespeicherten Meßergebnis und den im Beurteilungsdatenspeicherbereich 63 gespeicherten Daten festgestellt wird, ob das Produkt 32 gut ist oder nicht.
Wenn die Antwort im Schritt (9) NEIN ist, bedeutet dies, daß das Produkt 32 vollig außerhalb des Gesichtsfeldes 35 liegt, und es folgt der Programmschritt RÜCKKEHR. Nach RÜCKKEHR erfolgen weitere Schritte, die hier nicht im ein­ zelnen interessieren und daher weggelassen sind, bevor die Verarbeitung dann nach START zurückkehrt. Danach wer­ den die Schritte (1) bis (10) wiederholt.
Fig. 15 zeigt das Flußdiagramm des Unterprogramms für die Tastatureingabeverarbeitung.
Im Schritt (11) werden die Koordinaten des Fensters der Nummer k gelesen und in den jeweiligen Feldern X(k, J) und Y(k, J) der Speicherbereiche 61 bzw. 62 abgespeichert (k = 1, 2 . . . N, und J = 0, 1). Die Inhalte dieser Daten sind bereits unter Bezug auf Fig. 13 beschrieben worden.
In den Beurteilungsdatenspeicherbereich 63 sind ein Ver­ gleichsbezugswert und ein zulässiger Fehler einzuspei­ chern, die im Schritt (12) bzw. (13) gelesen werden. Es folgt dann der Schritt (14), wo geprüft wird, ob die Ta­ statureingabe abgeschlossen ist und alle notwendigen Da­ ten eingegeben wurden. Ist die Antwort NEIN, dann erfolgt die Rückkehr zum Schritt (11) und die Schritte (11), (12) und (13) werden wiederholt. Wenn alle notwendigen Daten eingegeben wurden, folgt der Schritt (15).
Im Schritt (15) werden alle Werte von Y(k, J) geprüft, das heißt für k = 1, 2, . . . N und J = 0, 1, und die Werte von K, das heißt von 1 bis 2N werden Y(k, J) in aufsteigender Folge zugeordnet. Im Datenspeicherbereich 65 wird Y(k, J) in TY(K) gespeichert, während der Wert von k in OCW(K) im Speicherbereich 66 gespeichert wird. Der Wert von J wird in OC(K) im Speicherbereich 67 gespeichert. Hierdurch wird erreicht, daß die Beziehung TY(K) TY(K+1) gilt.
Die Anzahl der vom Impulsgeber 39 abgegebenen Impulse wird über den Interrupt-Eingang INT1 der CPU 51 gezählt. Falls OC(k) 0 ist, wenn die Zählung TY(k) erreicht, kann hieraus geschlossen werden, daß das Fenster mit der Fensternummer OCW(k) geschlossen ist, daß sich also das Gesichtsfeld 35 am Endpunkt des Fensters befindet. Wenn hingegen OC(k) 1 ist, wenn die Zählung TY(k) erreicht, kann daraus ge­ schlossen werden, daß das Fenster geöffnet ist, daß sich also das Gesichtsfeld 35 am Startpunkt des Fensters be­ findet.
Fig. 16 zeigt das Flußdiagramm des Unterprogramms für die Anfangsverarbeitung. Die Anfangsverarbeitung bewirkt eine Anfangseinstellung, unmittelbar bevor die Messung durchge­ führt wird. Da in diesem Zustand alle Fenster geschlossen sind, wird 0, was den Fall repräsentiert, daß alle Fenster W(k) (k = 1 bis N) geschlossen sind, in den Fensterarbeits­ speicherbereich 68 eingesetzt. 0 als Ausgangswert wird außerdem in AREA(k) im Additionsarbeitsspeicherbereich 69 eingesetzt, der die gemessene Fläche des Fensters W(k) re­ präsentiert.
Im Schritt (17) werden TIMER(1) und TIMER(2) im Zeitgeber­ arbeitsspeicherbereich 70 auf 0 gesetzt. Im Schritt (18) wird 1 als Zusatz A in den Arbeitsspeicherbereich 64 ein­ gegeben, was den Wert für (k) von TY(k) im Speicherbereich 65 angibt.
Im Schritt (19) wird der Interrupt-Eingang INT1 freigege­ ben, so daß die Anzahl der vom Impulsgeber 39 abgegebenen Impulse gezählt werden kann.
Fig. 17 zeigt die Interrupt-Routine INT1. In dieser Routi­ ne erfolgt die Abarbeitung von INT1 → Schritt (20) bis Schritt (28) → RÜCKKEHR einmal für jeden vom Impulsgeber 39 in den Interrupt-Eingang INT1 eingegebenen Impuls. Im Schritt (20) wird TIMER(1) um 1 erhöht. Im Schritt (21) wird geprüft, ob TIMER(1) = TY(A) wird oder nicht. A von TY(A) wird anfangs auf 1 gesetzt, wie es in Verbin­ dung mit dem Anfangs-Unterprogramm von Fig. 16 beschrie­ ben wurde.
Wenn TIMER(1) = TY(A) ist, folgt Schritt (22), wo A um 1 erhöht wird. Es schließt sich dann der Schritt (23) an, wo die Daten OC(A), die angeben, ob das Fenster offen oder geschlossen ist, in das Fenster W(OCW(A)) einge­ setzt werden. Dies ist ein Verarbeitungsschritt zur Ein­ stellung von W(OCW(A)) im Fensterarbeitsspeicherbereich 68, was folgendes bedeutet: Wenn die Zählung der vom Im­ pulsgeber 39 ausgegebenen Impulse gleich irgendeinem der Datenwert in dem Y-Koordinatendatenspeicherbereich 62 wird, repräsentiert W (OCW(A)) ein Fenster mit der Nummer OCW(A), die zu diesem Y-Koordinatendatenwert gehört. Wenn der Datenwert OC(A) 0 ist, bedeutet dies, daß das Gesichts­ feld 35 am Endpunkt des Fensters ist. Wenn der Datenwert OC(A) 1 ist, bedeutet dies, daß das Gesichtsfeld 35 am Startpunkt des Fensters ist. W (OCW(A)) zeigt für einen gegebenen Zeitpunkt, welche Fenster geöffnet und welche geschlossen sind.
Die Verarbeitung kehrt dann zum Schritt (21) zurück, wo geprüft wird, ob TIMER(1) = TY(A) ist oder nicht. Der Wert von A ist zu diesem Zeitpunkt bereits im Schritt (22) er­ höht worden, so daß er um 1 größer ist als bei der vorigen Prüfung im Schritt (21). Die Wiederholung der Schritte (21) → (22) → (23) wird ausgeführt, weil im Y-Koordina­ tendatenspeicherbereich 62 untereinander gleiche Datenwer­ te vorhanden sein können. Nach Abschluß der Verarbeitung aller möglichen Datenwerte, die untereinander gleich sind, wird die Antwort im Schritt (21) NEIN und die Verarbei­ tung schreitet zum Schritt (24) vor.
Im Schritt (24) wird der Zusatz M auf einen Anfangswert 1 gesetzt, damit der Ablauf der Schritte (25) → (26) → (27) → (29) N-mal wiederholt wird. Im Schritt (25) wird geprüft, ob W(M) = 0 ist oder nicht. W(M) ist entweder 0 oder 1. Wenn W(M) = 1 ist, bedeutet dies, daß das Fen­ ster M offen ist, und die Antwort der Prüfung ist dann NEIN. Daher wird Schritt (26) ausgeführt. Wenn W(M) = 0, springt die Verarbeitung zum Schritt (27), wo M um 1 er­ höht wird. Im Schritt (28) wird dann geprüft, ob die Rou­ tine mit den Schritten (25) → (26) → (27) → (28) be­ reits N-mal ausgeführt wurde oder nicht. Wenn die Antwort JA ist, geht die Verarbeitung zu RÜCKKEHR, womit dieses Unterprogramm beendet ist. Ist die Antwort im Schritt (28) NEIN, dann folgt Schritt (25), und die Verarbeitung wird in bezug auf das nachfolgenden M ausgeführt.
Im Schritt (26) wird die Breite signifikanter Bildelemen­ te des Fensters M (das heißt X(M, 1) bis X(M, 0)< anhand des Fenster-X-Koordinatendatenspeicherbereichs 61 in bezug auf den Bereich VVSB ermittelt, in welchem die gegenwärtig gemessenen Daten gespeichert sind, die durch Abtastung mit dem Bildsensor 44 erhalten werden. Die Anzahl der signifi­ kanten Bits wird dann in diesem Bereich gezählt und die Fläche des Fensters M errechnet und zu AREA(M) addiert. Mittels dieser Verarbeitung werden allein die signifikan­ ten Bits in jedem einzelnen Fenster gezählt, das zwischen dem Y-Koordinatenabschnitt längs einer Koordinatenachse parallel zur Transportrichtung und dem X-Koordinatenab­ schnitt längs einer Koordinatenachse parallel zur Abtast­ richtung durch den Bildsensor 44 bestimmt ist.
Es sei angemerkt, daß VVSB(k) im RAM 53 enthaltene Daten sind (wobei k = 1, 2, . . . 2.048), die durch Kopieren von VVS(k) erhalten werden, die im DMA-Modus entsprechend ei­ nem Unterprogramm zum Video-RAM 50 übertragen werden (das Unterprogramm ist ein Programm der Meßverarbeitung, die in Fig. 18 gezeigt ist und später beschrieben wird).
Diese Daten werden benutzt, um eine nachfolgende DMA-Über­ tragung während der Verarbeitung auszuführen.
Fig. 18 zeigt ein Unterprogramm (ein Flußdiagramm der Meß­ verarbeitung). Bei dieser Meßverarbeitung werden ständig Daten zum Video-RAM 50 geholt und in das RAM 53 kopiert oder geschrieben.
Im Schritt (29) wird an den DMA-Controller 46 ein DMA- Requestsignalimpuls REQDMA ausgegeben. Als Antwort auf den Anstieg dieses Ausgangsimpulses steigt das DMA-Re­ sponsesignal DMAR vom DMA-Controller 46 auf H und behält diesen Zustand, bis der DMA-Datentransfer beendet ist. Die Verarbeitung schreitet daher zum Schritt (31) vor, nach­ dem im Schritt (30) festgestellt wurde, daß das Signal DMAR zum Zustand L gewechselt hat.
Im Schritt (32) wird VVS(I) zu VVSB(I) kopiert, und zwar für I = 1 bis I = 2.048. Damit vermieden wird, daß INT1 während des Kopiervorgangs eingegeben wird und dann VVSB (I) vor der vollständigen Änderung ausgelesen wird, wird die Unterbrechung (Interrupt) im Schritt (31) vorüberge­ hend gesperrt. Nach Abschluß des Kopiervorgangs wird die Unterbrechung im Schritt (33) wieder freigegeben. Im Schritt (34) wird zum Zweck des Ausdünnens des DMA-Trans­ fers und dadurch des Ausgleichens der Interrupt-Verarbei­ tung eine vorbestimmte Zeitspanne abgewartet.
Fig. 19 zeigt ein Unterprogramm in Form eines Flußdia­ gramms der Beurteilungsverarbeitung. Dieses Programm wird aufgerufen, unmittelbar, nachdem das Produkt 32 das Gesichtsfeld 35 passiert hat. Daher wird, um die Messung auszusetzen, der Interrupt-Eingang INT1 im Schritt (35) gesperrt. Der Zusatz I wird im Schritt (36) auf einen Anfangswert 1 gesetzt, damit die Schritte (37) → (38) → (39) N-mal wiederholt werden. Im Schritt (37) erfolgt die Beurteilung anhand der Fenstermeßdaten AREA(I), wobei I = 1, 2, . . . N ist, des Produkts 32, welches das Gesichts­ feld 35 passiert hat, das heißt, es wird geprüft, ob die Daten AREA(I) in den Bereich des Bezugswerts + des zu­ lassigen Fehlers, also REG(I) ± dTRE(I) fallen oder nicht. Wenn die Antwort NEIN ist, wird das Produkt 32 als fehler­ haft beurteilt und der Ablauf springt zum Schritt (40).
Wenn die Antwort im Schritt (37) JA ist, geht die Verar­ beitung zum Schritt (38), wo I um 1 erhöht wird. Die Be­ urteilung im Schritt (37) wird dann fortgesetzt, bis I N überschreitet (Schritt (39)). Die Verarbeitung geht erst dann zu RÜCKKEHR, wenn alle Fenstermeßwerte mit gut beurteilt wurden, womit dieses Unterprogramm endet.
Im Schritt (40) wird in TIMER(2) eine Konstante gesetzt. Dies ist eine Wartezeit, die das vom Förderband transpor­ tierte Produkt 32 benötigt, um die Stelle vor dem pneu­ matischen Antrieb 41 zu erreichen. Im Schritt (41) wird der Interrupt INT2 freigegeben, damit TIMER(2) gezählt wird. Die Konstante ist größer als 1.
Fig. 20 zeigt das Flußdiagramm der Interrupt-Routine INT2. Im Schritt (42) wird geprüft, ob TIMER(2) = 0 ist oder nicht. Im Fall von JA, geht die Verarbeitung zum Schritt (45), wo die Interrupt-Routine INT2 gesperrt wird, um dann nicht ausgeführt zu werden, bis sie aufgrund des Unterprogramms von Fig. 19 erneut freigegeben wird.
Im Schritt (43) wird geprüft, ob TIMER(2) = 1 ist. Im Fall von JA wird im Schritt (44) der Pneumatikzylinder betätigt und im Schritt (46) TIMER(2) abwärts gezählt. Falls die Antwort im Schritt (43) NEIN ist, bedeutet dies, daß das Produkt 32 noch nicht in die Stellung vor dem Pneumatikzylinder transportiert wurde, und der Ablauf springt zum Schritt (46).
Wie oben beschrieben wurde, wird beim zweiten Ausführungs­ beispiel der Erfindung ein zweidimensionales Fenster durch im Speicherbereich 61 gespeicherte Fenster-X-Koordi­ natendaten und im Speicherbereich 62 gespeicherte Fenster- Y-Koordinatendaten vorgegeben. Nach Maßgabe des Fensterar­ beitsspeicherbereichs 68 werden vorbestimmte X-Koordina­ tendaten aus der im Speicherbereich 61 gespeicherten X- Koordinatendatengruppe ausgewählt, wodurch ein Additions- Prozeß der signifikanten Bits auf der Basis der vom Impuls­ geber 39 ausgegebenen Impulse erfolgen kann. Es ist daher möglich, eine zweidimensionale Fenster-Bild-Verarbeitung mit Hilfe eines relativ billigen eindimensionalen Bild­ sensors auszuführen.
Es sei angemerkt, daß der Impulsgeber (Drehcodierer) 39 nicht immer nötig ist und durch einen Takt mit konstanter Periode ersetzt werden könnte, vorausgesetzt, das Förder­ band 31 bewegt sich mit ausreichend gleichförmiger Ge­ schwindigkeit.
Das SAMP-Signal, das die Tatsache angibt, daß das Produkt (Artikei) 32 in das Gesichtsfeld 35 eingetreten ist, ist ebenfalls nicht immer erforderlich. Beispielsweise kann anstelle des SAMP-Signals anhand des binär codierten Vi­ deosignals VVS(I) geurteilt werden, ob sich das Produkt 32 innerhalb des Gesichtsfeldes 35 befindet.
Auch ist es nicht immer notwendig, daß die Transportrich­ tung senkrecht zur Achse des eindimensionalen Zeilen-Bild- Sensors liegt, und die Bewegung der Fördereinrichtung ist nicht notwendigerweise auf eine lineare Bewegung be­ schränkt. Falls, beispielsweise die Ortskurve der Bewe­ gung der Fördereinrichtung einen Halbkreis darstellt, könnte die Geometrie der Fenster durch Polarkoordinaten angegeben werden. In diesem Fall ist es möglich, ein ein­ zigartiges Fenster auszubilden, das im Fall der Verwendung einer zweidimensionalen Kamera nicht ohne weiteres erhal­ ten werden kann.
Wie aus der vorangegangenen Beschreibung hervorgeht, er­ laubt es die Erfindung, serielle Daten in Bereiche jedwe­ der gewünschten Länge zu unterteilen, die Anzahl signifi­ kanter Bits in jedem dieser Teilbereiche im Echtzeit-Mo­ dus zu zählen und die gezählte Anzahl signifikanter Bits in einen externen Speicher einzuschreiben. Dadurch wird die Divisionsverarbeitung serieller Daten, die bislang ausschließlich mittels geeigneter Software ausgeführt wurde, gleichzeitig mit dem Datentransfer abgeschlossen, und die Software braucht nur noch das Zählergebnis zu schreiben. Die Folge davon ist, daß die Geschwindigkeit der Verarbeitung der gesamten seriellen Daten deutlich er­ höht wird. In vorteilhafter Weise wird es dadurch möglich, komplizierte Qualitätsbeurteilungen mit ausreichend hoher Geschwindigkeit sogar dann auszuführen, wenn Artikel, die mit hoher Geschwindigkeit transportiert werden, mittels eines Bildsensors abgebildet und geprüft werden.
Die Datenverarbeitungsvorrichtung zur Verarbeitung seriel­ ler Daten gemäß der Erfindung kann nicht nur zur Handha­ bung von Videodaten bei der Prüfung von Produkten, sondern zum Beispiel auch im Bereich serieller Datenkommunikation eingesetzt werden. In einem solchen Fall ist es möglich, einen modulierten Digitalcode zu demodulieren, indem im Echtzeitmodus unterteilte Gesichtsfelddaten verwendet wer­ den, so daß die vorliegende Erfindung zur Erhöhung der Ge­ schwindigkeit serieller Datenkommunikation in einer Weise ähnlich wie im Fall von Videodaten beiträgt.

Claims (2)

1. Vorrichtung zur Verarbeitung serieller Daten in einem Prüfsystem, bei dem ein linearer Bildwandler (34, 44) einen relativ zu ihm in einer ersten Richtung (Y-Richtung) bewegten, zu prüfenden Gegenstand längs einer Linie in einer zweiten, die erste schneidenden Richtung (X-Richtung) abta­ stet, das abgetastete Bild in eine Vielzahl von Bildelementen auflöst und nacheinander den einzelnen Bildelementen entspre­ chende Signale abgibt, die in serielle Binärsignale umgesetzt und in Form serieller Daten (VVS) ausgegeben werden, umfas­ send
eine Einrichtung, mit der vorab ein Fenster als Teil der Vielzahl von Bildelementen des Bildwandlers (34, 44) ein­ stellbar ist und
eine Speicher und einen Zähler enthaltende Einrichtung zur Auswertung der in ein eingestelltes Fenster fallenden seriellen Daten durch Vergleich mit einem vorgegebenen Bezugswert,
gekennzeichnet durch,
einen ersten Speicher (RAM-A), in welchen vorab Daten (DD) betreffend die Anzahl von Bildelementen in jedem der aufeinanderfolgenden Fenster des Bildwandlers einschreibbar sind und aus dem diese Daten (DD) als Antwort auf die Eingabe zu verarbeitender serieller Daten (VVS) auslesbar sind, um die seriellen Daten entsprechend den eingestellten Fenstern zu unterteilen,
einen Zähler (B), der jeweils innerhalb der aus dem ersten Speicher ausgelesenen Anzahl die Anzahl (VD) der signifikanten Daten zählt, und
einen zweiten Speicher (RAM-B) zum Speichern der von dem Zähler gezählten Anzahl (VD) unter einer jeweiligen Adresse.
2. Vorrichtung nach Anspruch 1, gekennzeichnet durch
einen Divisionsdatenzähler (A), der auf die jeweils aus dem ersten Speicher (RAN-A) ausgelesenen Daten (DD) vorein­ stellbar ist, Bezugstaktimpulse (CLK) zählt und ein Über­ tragssignal (CY) ausgibt, wenn die Anzahl gezählter Bezugs­ taktimpulse den voreingestellten Daten (DD) entspricht,
eine Lesesignalgeneratoreinrichtung (E), die als Antwort auf das Übertragssignal (CY) die jeweils nächsten Daten (DD) zur Voreinstellung des Divisionsdatenzählers (A) aus dem ersten Speicher (RAM-A) ausliest,
eine Ausgangsadreßgeneratoreinrichtung (C), die als Antwort auf das Übertragssignal (CY) die Speicheradresse im zweiten Speicher (RAM-B) ausgibt, unter der die von dem Zähler (B) unter der Zeitsteuerung durch die Bezugstakt­ impulse gezählte Anzahl (VD) signifikanter Daten eingeschrie­ ben jeweils werden soll, und
eine Schreibsignalgeneratoreinrichtung (D), die als Antwort auf das Übertragssignals (CY) das Einschreiben der gezählten Anzahl (VD) signifikanter Daten in den zweiten Speicher (RAM-B) bewirkt.
DE3617774A 1985-05-27 1986-05-27 Vorrichtung zur Verarbeitung serieller Daten Expired - Fee Related DE3617774C2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP60112236A JPS61270984A (ja) 1985-05-27 1985-05-27 直列デ−タ処理装置
JP60238596A JPS62100093A (ja) 1985-10-26 1985-10-26 直列デ−タの処理装置

Publications (2)

Publication Number Publication Date
DE3617774A1 DE3617774A1 (de) 1986-12-04
DE3617774C2 true DE3617774C2 (de) 1994-04-21

Family

ID=26451458

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3617774A Expired - Fee Related DE3617774C2 (de) 1985-05-27 1986-05-27 Vorrichtung zur Verarbeitung serieller Daten

Country Status (2)

Country Link
US (1) US4783827A (de)
DE (1) DE3617774C2 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4916640A (en) * 1987-06-03 1990-04-10 Allen-Bradley Company, Inc. Video image processing system
US4924307A (en) * 1988-06-03 1990-05-08 Allen-Bradley Company, Inc. Image processor
EP0354782B1 (de) * 1988-08-12 1996-11-27 Sumitomo Wiring Systems, Ltd. Bildverarbeitungsgerät zur Erkennung von unvollständigen Gegenständen
US5144683A (en) * 1989-04-28 1992-09-01 Hitachi, Ltd. Character recognition equipment
US5532839A (en) * 1994-10-07 1996-07-02 Xerox Corporation Simplified document handler job recovery system with reduced memory duplicate scanned image detection
DE19629678A1 (de) * 1996-07-23 1998-01-29 Brugg Rohrsysteme Gmbh Verfahren zur Herstellung eines wärmeisolierten Leitungsrohres
JP4750297B2 (ja) * 2000-02-28 2011-08-17 キヤノン株式会社 通信装置、方法、それを用いた画像形成装置、画像形成装置に接続されるユニット及び画像形成システム
US8237099B2 (en) 2007-06-15 2012-08-07 Cognex Corporation Method and system for optoelectronic detection and location of objects
US8718319B2 (en) * 2007-06-15 2014-05-06 Cognex Corporation Method and system for optoelectronic detection and location of objects

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL76854B1 (de) * 1971-06-07 1975-02-28
JPS5241015B2 (de) * 1972-10-13 1977-10-15
US4013999A (en) * 1974-08-15 1977-03-22 Recognition Equipment Incorporated Single read station acquisition for character recognition
JPS5911152B2 (ja) * 1976-10-19 1984-03-13 肇産業株式会社 パタ−ンマツチング方法及びその実施装置
US4251799A (en) * 1979-03-30 1981-02-17 International Business Machines Corporation Optical character recognition using baseline information
US4434503A (en) * 1979-07-31 1984-02-28 Minolta Camera Kabushiki Kaisha Image information output apparatus
US4516264A (en) * 1982-01-29 1985-05-07 United States Of America Postal Service Apparatus and process for scanning and analyzing mail information
JPS58142487A (ja) * 1982-02-18 1983-08-24 Fuji Electric Co Ltd 特徴抽出装置
US4490851A (en) * 1982-04-16 1984-12-25 The United States Of America As Represented By The Secretary Of The Army Two-dimensional image data reducer and classifier
US4545070A (en) * 1982-04-30 1985-10-01 Fuji Electric Company, Ltd. Pattern discriminator
US4566126A (en) * 1982-04-30 1986-01-21 Fuji Electric Company, Ltd. Pattern discriminator
US4551850A (en) * 1983-02-07 1985-11-05 Pattern Processing Technologies, Inc. Response detector for pattern processing system

Also Published As

Publication number Publication date
DE3617774A1 (de) 1986-12-04
US4783827A (en) 1988-11-08

Similar Documents

Publication Publication Date Title
DE3248928C2 (de)
DE3012559C2 (de)
DE2937335C2 (de) Verfahren und Vorrichtung zur optischen Prüfung von Gegenständen
DE2935668C2 (de)
DE3305710C2 (de) Schaltungsanordnung zur Merkmalserkennung bei auf einem Bildschirm darstellbaren Objekten
DE3615906C2 (de)
DE3825005A1 (de) Bilderkennungsanordnung
DE2801536A1 (de) Zeichenerkennungsvorrichtung
DE3906215A1 (de) Automatische klassifikation von pflaenzlingen
DE2740483A1 (de) Merkmal-detektor
WO2007039202A1 (de) Vorrichtung, verfahren und computerprogramm zum ermitteln einer information über eine form und/oder eine lage einer ellipse in einem graphischen bild
EP0162420A1 (de) Verfahren zum Abtasten eines Bildes
DE2831297C2 (de) Automatische Prüfanordnung zum Untersuchen von Zeichenstrukturen
DE60111912T2 (de) Überwachung der Farbkalibrierung in einer Vorrichtung zur Bildwiedergabe
DE2524495A1 (de) Prozessor zum auswaehlen potentiell gueltiger codesignale
EP0140071A1 (de) Einrichtung zur Farbbildkontrolle auf einem Farbmonitor
CH652506A5 (de) Verfahren und inspektionsgeraet zum inspizieren eines gegenstandes, insbesondere einer flasche.
DE3617774C2 (de) Vorrichtung zur Verarbeitung serieller Daten
DE3508400A1 (de) Vorrichtung und verfahren zur mustererkennung
DE2208309C3 (de) Verfahren zur Auswertung von Informationen in Form gruppenweise zusammengefaßter Informationselemente aus einfarbig gedruckten Strichen, Anordnung zur Darstellung von Informationen zur Auswertung nach dem Verfahren und Schaltungsanordnung zur Durchführung des Verfahrens
DE2321701A1 (de) Kartenleser mit mehreren lesekanaelen
DE1212758B (de) Verfahren und Schaltungsanordnung zur maschinellen Erkennung von Schriftzeichen
DE1922302B2 (de) Schaltungsanordnung zum Zählen von Merkmalen und gleichzeitigem Bestimmen von deren Parametern bei einer Bildanalyse
EP0129768B1 (de) Farbdichtemessgerät
DE1499394B2 (de) Anordnung zum messen der groesse von zeichen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: HOFFMANN, E., DIPL.-ING., PAT.-ANW., 82166 GRAEFELFING

8339 Ceased/non-payment of the annual fee