CA1313240C - Apparatus for inspecting can seams and the like - Google Patents

Apparatus for inspecting can seams and the like

Info

Publication number
CA1313240C
CA1313240C CA000614841A CA614841A CA1313240C CA 1313240 C CA1313240 C CA 1313240C CA 000614841 A CA000614841 A CA 000614841A CA 614841 A CA614841 A CA 614841A CA 1313240 C CA1313240 C CA 1313240C
Authority
CA
Canada
Prior art keywords
seam
gnd
vcc
view
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA000614841A
Other languages
French (fr)
Inventor
Roger G. Dower
Robert W. Acres
Harold R. Davis
Andrew N. Donham
Nader Riahi
Richard W. A. Slamka
Lechoslaw K. Urbaniak
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.)
Sentinel Vision Inc
Original Assignee
Sentinel Vision Inc
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 Sentinel Vision Inc filed Critical Sentinel Vision Inc
Priority to CA000614841A priority Critical patent/CA1313240C/en
Application granted granted Critical
Publication of CA1313240C publication Critical patent/CA1313240C/en
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/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/0006Industrial image inspection using a design-rule based approach
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • G01B11/024Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness by means of diode-array scanning
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/90Investigating the presence of flaws or contamination in a container or its contents
    • G01N21/909Investigating the presence of flaws or contamination in a container or its contents in opaque containers or opaque container parts, e.g. cans, tins, caps, labels
    • 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/30136Metal

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Chemical & Material Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)

Abstract

APPARATUS FOR INSPECTING CAN SEAMS AND THE LIKE

ABSTRACT OF THE DISCLOSURE

Apparatus is disclosed for detecting irregularities or flaws in seams such as the seams of cans. The apparatus includes means for irradiating the surface of the seam to produce reflected radiation signals, a plurality of radiation sensors, each having a selected field of view of the surface, and each producing sensor output signals dependent on reflected radiation signals received within such field of view. A signal processing means receives sensor output signals for a succession of fields of view along the longitudinal length of the seam and derives therefrom signal data representing a dimensional feature of the seam.
Signal comparison means compares such derived data with signal data representing an acceptable dimensional limit and produces a rejection signal in the event that the dimensional feature does not fall within the limit. Means for classifying the nature of an irregularity is also disclosed, as is transport means for the movement of seams though the field of view of the sensors.

Description

3~

FIEI.D ClF THE INVENTIQN

This invention relates t~ apparatus for detecting irreg~larity in seams, and is especially suited for the inspection of curvate seam structures as are frequently used in the sealing of food cans.

BAC~CGRQllND ~F_THE INVENTIQN

A considerable amount of food is preserved using sealed metal cans. Many of such cans will be sealed by ~oining the lid - and the body of the can by a "double seam' which forms a rim or 3~ flange circumferentially around the top of the can. Typically, after the can has been filled, the sealing operation is performed in a partial vacuum by rolling the metal of the lid and the body ; 35 tightly together with a small amount of sealing compound.
While the technology for sealing cans is well developed, a variety of flaws or faults ~herein referred to as "irregularities") in ~he resulting fieam can occur; for example:
cracks, knoc~ed down rims, false seams, droop, and the like Since the integrity of the seam can be crucial to the avoidance of spoilage and preservation of food wi~hin the can, it becomes highly desirable to provide a mean~ of inspec~ing cans against the occurrence of such irregularities.

,~

. .

~L3~3~

Historically, canners h~ve sought to assure seam integrity by a variety of means, the most basic beiny manual inspection by the human eye. Of course, the manual approach may only suffice for relatively gro~s defects that can be easily seen by an inspector, and then only so long as he or she pays constan attention to the matter at hand. Furthermore, the manual approach can be compromised by high speed canning lines where it is impractical to manually inspect every can. To c~rcumvent this limitation, methods have been developed to manuall~ accept or reject batches of cans on the basi~ of 3tatistical sampling techniques.
Automatic equipment used for the purpose of can inspec~ion is frequently based on the assumption that a properly sealed can will have a partial vacuum. If a seal is faulty, then air leakage will reduce deflection of the can lid. Thusr so called ~'dud detectors~' measure can end deflection, re~ecting those cans where the measured deflection is not within prescribed limits.
The prior art reveals a variation in which a can is struck electromagnetically, and the vibrations induced in the can used as an indicator of proper pressure.
There are Yignificant problems with this general approach.
Measurements of can deflection can be influenced by a variety of factors, including metal thickness of the can ends, the ~trength of the vacuum applied during canning, the amount and firmnes~ of the fill, and the countersink depth as a resul~ of settings for the seam rollers on he canning machine. In addition, a flaw has to be relatively serious for leakage to occur during the ~3~3~

typically brief time that a can spends on the processing line.
Many types of flaws may not lead to significant leakage until later. Research has shown that even relatively small problems in the seam may lead to leakage and that multiple minor impact~ can be as significant as one ma~or blow.

SUMM~Y ~F_THE IRV~NTION
2~
The present invention has its foundation in machine vision technology.
In a broad aspect of the present invention, there is provided apparatus for detecting an irregularity in the surface o~ an elongated seam having a curvate surface cross-section ~as is typical of a can seam), such apparatus comprising irradla~ing means $or irradiating the surface to produce reflected radiation signals, and a plurality of sensors, each being dispoQed to ha~e a selected field of view of the surface, each such view being defined by a width extending longitudinally of the seam and a lPngth curvately extending in a plane transverse to the longitudinal direction of the seam. Each such sensor receives such portion of the reflected xadiation signals as are reflected within its corresponding field of view, and produces corresponding sensor output signals in response. A ~ignal processi.ng means receives the sensor output signals for a succession of fields of view along the ~eam for each 6uch sensor, and derives therefrom signal data representing one or mvre - 1313?J~

dimensional features of the seam. A signal comparison mean~
compares such signal data with signal data representing an acceptable dimensional limit or limits, and produces a re~ection signal in the event that a dimensional feature of interest doe not fall within its prescribed limit.
Advantageously, signal data representing an acceptable dimensional limit for a given seam may be derived by the signal processing means from the sensor output signals produced for that seam. This approach where the dimensional limits are dynamically determined from one seam to the next may be contrasted with an approach wher~ acceptable dimensional llmits are fixed and predefined without regard to the fact that a succession of ostensibly identical seams, each being a completely acceptable se~m, may nevertheless exhibit dimensional differences. Su~h differences may not be attributable to any unacceptable irregularity in the seam, but simply to acceptable tolerance variations from one seam to the next. With the dynamic approach, it becomes possible to effectively mask or filter out the effect of such variations.
In one embodiment of the present invention when used for the inspection of can seams, a transport means is included for rotating a can to longitudinally move its seam through the field of ~iew of the ~ensor. Preferably, such transpor~ mean~
compri8es an inspection rotor and means for rotating the rotor about a fixed v~rtically extending central axi~. The sensors are mounted to the rotor so as to rotate therewith. A rotatable ~nspect~on platform is al80 mounted to the rotor to suppor~ the ~;,, , .

~3~3~

can in an upright position radially away from the central axi~, and means are provided to rotate the platform (with the can) in a direction of rotation opposlte to that of the rotor (doing so about a planetary axis extending parallel to the central axis of the rotor). As will become more apparent hereinafter, this arrangement p~rmits a reduction in the degree of c~n rotation required to pass the full circumferential l~ngth of its seam through the field of view of the sensors - a desirable feature in situations where excessive high speed spinning of a can may be considered undesirable (e.g. as potentially damaging to the structure of food within the can)O
In a preferred embodiment of the present invention, four sensors axe used to obtain image data on dimensional features of the seam or double seam of a can. One sensor views the seam from an angle looking upwardly and radially inwaxdly at the seam;
another from an angle looking horizontally inwardly at the ~eam;
another from an angle looking vertically downwardly at the Beam;
and the last from an angle looking downwardly and radially outwardly at the seam. So positioned, a ~ubstantial portion of 4~
the exposed surface area of the seam may be brou~ht within the combined field of view of the sensors. Image data may be read from each of the ~ensor6 simultaneously.
The foregoing and other features oE the present invention will now be described with reference to ~he drawings in whichs ~RIEY n~5~RIPTIO~ ~E T~E ~RAWI~GS

~ 3 FIGURE 1 is a plan view of the mechanical portions of a preferred embodiment of a machine for inspecting the seams of cans in accordance with the present invention.
FIGUR~ 2 i~ a plan view showing the arrangement for drivlng the major mechanical portions of figure 1.
FIGU~E 3 is a side view of the inspection rotor, a can platform, and a starwheel of the preferred embod~ment.
FIGURE 4 shows in more detail a cross section of the lower portion of the inspection rotor.

FIGUR~ 5 shows in more detail a cross section of a typical can platform of the preferred embodiment.
FIGURE 6 shows in more detail a cross section of a starwheel of the preferred embodiment.
FIGURE 7 is a cross section of the drive mechanism of the worm shown in figure 1.
FIGURE 8 is a cross section of the top section of the .inspection rotor showing the electrical connections and provision for the fibre optic link of the preferred embodiment.
FIGURE 9 is a side view of one of the optics modules outlir.ed in figure 3.
FIGUR~ 10 is a cross section of one of 4 cameras found in the optic module of figure 9.
FIGURE 11 ~hows a half section of the light cavity of figure 9.

FIGURE 12 is a block diagram of the ~ignal processing portions of a preferred embodiment of the invention.

~3~

FIGUn~ 13 shows in more detail part of the Signal Prodcution Means of Figure 12; a CCD and associated output buffer.
FIGUR~ 14 shows in more detail part of the Siynal Product~on Means of Figure 12, circuitry for driving CCD timing signals.
FIGUR~ 15 shows in moxe detail part of the Signal Production Means of Figure 12; circuitxy for distributing CCD timing ~ignals-~IGURE 16 ~hows in more detail part of the Signal Procuction Means 1 of Figure 12; control signal generation for the CCDs.
FIGURE 17 6hows in more detail part of the Signal Conditioning Means 1 of Figure 12; signal inversion and amplification c$rcuitry and analog multiplexing.
- FIGURE 18 6hows in more detail part of the Signal Conditioning Means l of Figure 12; analog to digital conver6ion and data encoding circuitry~
FIGV~E l9 shows in more detail part of the Signal Conditioning Means l of Figure 12; circuitr~ for preparing data for fibre optic transmission.
FIGUR~ 20 shows in more detail part of the Signal Produc~ion Means 1 of ~igure 12; circuitry for generatlng a system clock related to the machine speed.
FIGUR~ 21 shows in more detail part of the Signal Conditioning Means 1 of Figure 12; circuitry to provide vaxious control signals.
Figure 22 shows in more detail part of the Si.gnal Conditioning Means 1 of Figure 12; circuitry to control the gain in circuits of Figure 17.

.
~.. ~.- .

~3~32~

FIGURE 23 shows in more detail part of the Signal Conditioning Means 2 of Figure 12~ circuitry to convert the high spsed serial train to parallel format.
FI~URE 24 shows in more detail part of the Signal Conditioning Means 2 of Fi~ure 12; demultiplexing of the data.
Pigure 25 shows in more detail part of the Signal Conditioning Means 2 of Figure 12; circuitry to provide a direct and a delayed signal to the Analog Feature Extraction Means of . 20 Figure 26.
FIGURE 26 shows in more detail the Analog Feature Extraction Means of Figure 12; circuitry for edge detection.
~5 PIGUR~ 27 ~how~ circuitry to prepare data for the the Digital Processing Means of Figure 1~.
FIGURE 28 shows in more detail further circuitry to prepare data for the Digital Processing Means of figure 12; a dual port RAM .
3S FIGUR~ 29 shows further circuitry associated with the dual port RAM of Figure 28; circuitry to control the writing of data . into the RAM.
FIGURE 30 is a cross section of a typical 8eam showing the four views used to image the seam. Typic~l CCD outputs for each view are shown.
FIGU~E 31 is a curvate cross section of a typical seam showing the four views used to image the ~eam. The fieam length as determined by these CCD outputs is shown.
FIGURE 32A is a curvate cross section of a double seam with a defect which produces a long dimension in one of the view~.

,~ , :
.

~ ~.3~
.
g FIGURE 32B is a curvate cross section of a double seam with a defect which prQduces a long dimen3ion in one of the view~.

DE~AILED DESCRIPTION
The phrase `length of the seam' will appear frequen~ly in the following di~cussion. In normal discussions about a can ~eam such expressions would suggest that the circumferential length of the seam around th~ can was being spoken of. In what follows, unless noted otherwise, a seam length will refer to a dimension of the curvate cross section of the seam. See figure~ 30 and 31 for clarification.

The accompanying drawings (fig.1 - fig.11) illustrate a preferred embodiment of the mechanlcal and optical aspects involved in the present invention.
Constraints imposed on the system are that 1) it should be able to operate at speeds found on canning and labelling lines in factories, 2) the complete circumference of the can double seam should be inspected.
As figure 1 fihowsl the conveyor (1), worm (2~, and starwheel arrangement (3a & 3b) are conventional and compatible with normal factory operation~. These elements are designed to .

; .

' ~3~3'~

provide a steady supply o~ cans to the inspection platforms (4).
A can is fed from the conveyor (11 via the worm (2) into the input starwheel (3a) *nd deposited on an inspection platform (4). Subsequently, the can will be released to the outpu~
starwheel (3b) and delivered back to the conveyor.
An important item shown in flgure 1 is the eject mechanism (5). When the electronic aspects of the preferred embodiment determine that the can seam is defective, this air powered piston will be activated to remove the undes~rable can ~rom the production line.
The rectangular item 6 of figure 1 i8 the base plate which supports the various mechanical items in their proper positions.
The two posts ~7) serve to support the protective shroud (B). Item 9 is the central shaft of the inspection rotor. More precisely, it is the top view of that portion of the inspection rotor shown in more detail in figure 8.
Item 10 i~ the mount for the takeoff gear ~16) shown in figures 2 and 7.

Figure 2 shows mechanical components used to power the various moving components of figure 1. The items ~hown in figure 2 are all suspended beneath the base plate (6). The electric motor (11) power~ the gearbox (13) via the V-belt ~12). (To keep the drawing æimple, gear teeth are no~ shown on the various engaging components.) Gear 14 drives the inspection rotor shaft ~21, figure 3), while 15a and 15b dri~e the starwheels 3a and 3b ~ 3 ~

respectively. Power is taken off 15a by 16 and deliYered, thro~gh chain 19 and sprocket 17, to drive the worm 2. Idler 1 provides chain tension. The worm drive iB further detailed in figure 7.

Figure 3 shows, in side view, the relationships among the inspection rotor (20), an inspection platfoxm (4), an optics module t22~, and starwheel (3a or 3b). By way of convention the term `in.qpection rotor' refers not just to the specific item labelled 20 in fi~ure 3 but to the whole group of items that rotate around the same central shaft (21) as does plate 20. The inspection platform (4), is thus part of the inspection rotor, as is the optiGs module (22).
~eferring now ~o both figures 1 and 3, more details of the mechanical movement may be given. The anti-clockwise rotating ~tarwheel 3a devivers a can to inspection platform 4 (the gear arrangement of figure 2 must pxovide approprlate synchronization). The inspection platform (4)l as paxt of the inspection rotor (20) moves in a clockwise direction around shaft 21 which i~ driven by gear 14. At the same time, the sun ge~r (26), idler gear l25) and planetary gear (27) c~u~e the inspection platform (4~ to rotate in a counterclockwise direction about the center of it~ own support 6haft ~ee figure 5). Thls arrangemen~ of counter rotating the can platform ~4~ as it moves in a clockwise sense from input starwheel (3a) to output starwheel ~3b~ ~s used to minimise the shearing force~ that the ~3~
-- 1~

content~ of cans undergoing inspection are subject to. For some food products large centrifugal force~ may reduce product quality.
The gearing of rotating elements ls such that as the entire inspection rotor rotates 180 degrees in the clockwise direction the inspection platform and can rotate in the opposite direction by (slightly more than) 1~0 degrees. The result of these two motions is to present in excess of 360 degrees of the can seam to the optics with minimum rotation of the can and contents (relative to ~he fixed frame). Given the picXup and drop off points of cans on the starwheels 3a and 3b this also 2S provides adequate time for the can to be fully seated on a platform 4 before imaging actuall~ begins, and gives tlme for somewhat more than 360 degrees of the can circumference to be examined before the can is dropped off.
Also shown in figure 3 is a cam track ~23) and cam follower (24~. A can sitting on can platform (4) would tend to slide off the platform as the inspection rotor moves it from starwheel to starwheel. This is prevented by lifting the can and platform, via the underlying cam (23), so that the double ceam of the can i5 pressed again~t seam xollers (28, also labelled 70 in figure 9) situated above the can platform.
The raising of the platform and can against the rollers, besides restricting unwanted motion, also serves to locate the double seam in a position suitable for viewing by the optics system (figure g).

~. .

- ~3 ~ ;~3 As shown in figure 1l the inspection rotor (2.6/1.6) of the present em~odiment has four inspectlon platforms. There i8 an optics system associated with each. Signal processing circuitry before multiplexing is divided into 2 similar parts.
Each part handles data provided by a pair of optical heads opposite each other on the rotor. For such a pair of optical heads, just as one can is about to be examined, its predecessor is being finished. Since there is no overlap in the signal~
coming from the paired heads the analog multiplexer of figure need only merge the signal~ from two cans at any one time.
Item 29 of figure 3 is part oi the inspection rotor and revolves with shaft 21. The four optics module of the preferred embodiment are suspended beneath plate 29. Not shown in figure 3 are the electronic components that are represented by blocks 12.1 and 12.2 of figure 12. The ~ignal processing requixed to prepare and tran~mit the gathered data over the fibre optic link to the stationary outside world is performed by electronic components located in card cages mounted on top of plate 29.
Item 30 is further detailed in figure 8. It performs twv 4~
functions. First, it has a slip ring arrangement for bringing electical power to the rotating electronics. Second, it provides a fibre optic link for data to move between the rotating and stationary partR of the system ~see the explanation of figure 8). The torque arm 31 prevents item 30 from acquiring the rotation of the in~pection rotor.

2 ~ ~

One further detail of figure 3 should be mentioned. Can~
being moved from/to the conveyor, by the starwhsels, will slide over skid plate 32 on their way to/from the inspection platforms.
i0 Figure 4 shows some detail of the inspection rotor shaft 21. The rotor shaft housing (32~ is suported by baseplate (6).
Self-centering bearings (34) and bearings (35) allow for rotation of the shaft. Provision (36) is made for lubrication the 2 appropriate areas. Items 33 are seals. Gear 26 is the sun gear of figure 3 which provides the counter-rotation of the inspection platforms (4). Drive gear 14 of figure 2 mounts to shaft 21.
Figure S shows some detail of the support mechanism for the can platforms (4). A rotating cam follower (24) moves along the cam surface (23) which is mounted to the baseplate (6). The cam surface is shaped ~o that the roller (24), shaft (43), and hence platform (4) is in a low position between the output starwheel (3b) and the input starwheel (3a). As the can platform (4) is moving past the input starwheel (3a) a can, if available, is depos~ted on the platform, and the platform and can ~re raised by the cam mechanism 50 that ~he top double seam of the can iR
pu~hed against the seam rollers (?8, figure3; 70, fLgure 9) attached to the optics modules. The can platform and can are lowered as the output starwheel is reached.
The large spring (40) serves to keep the cam follower (24) pressed against thP cam ~23). Upward movement of gear 27 housing 39, and bracket 42 is prevented because bracket 42 i~

attached to plate 20 of figure 3. The light spring (ql) allow5 the natural variation in nominally identical cans to be compensated for so ~hat each can i6 securely, but not harshly, pressed a~ainst the seam rollers (28,70). (The upward movement of 3haft 43 compresses spring 41 to seat th~ can.) The movement of the mechanisms of fi~ure 5 is complex.
Firs~, the whole unit reYolves with ~he inspe~tion rotor ~n a clockwise direction about shaft 21 ~see figure 3, figure 1).
Second, due to the underlying cam, the thrust bearings (38), shaft (43), springs (40 and 41), and inspection platform (4) move up and down at regular intervals. Third, the planetary gear (27 provides for the counter clockwise rotation of the can platform (4) about its own center. Bushing~ (45) permit this mot~on.

Figure 6 shows some detail of one of the two starwheel assemblies. The housing (46) is mounted to the baseplate ~6) and has thrust bearings (47~ and seals (48) to allow the starwheel drive shaft (49~ to rotate. Gears 15a or 15h attach to the lower end of the shaft (49). The starwheel (3a or 3b) ~ mounted to the starwheel hub (51) using a shear pin (50) to prevent damage should a misfeed occur. Also shown in figure 6 i6 part of the previously mentioned skidplate (32) which allows a can to be transferred to/from starwheel/can platform.

5~
The cross section shown in figure 7 proYides more detail of the drive mechanism for the worm. Gear 16 which is supported beneath the baseplate (6) by the support (10) is driven by gear . ' . `
. .

rJ i;~ ~

15a. The chain l9 tranmits the power to gear 17 mounted to shaft 5 52. The idler gear 18 provides chain tension. Bevel gears (53) at the top of the ~haft (~2) tranfer the torque to the worm sh~ft (56). Various bearing (54) allow easy rotation.

Figure 8 shows some inner details of i~em 30 of figure 3.
The central section (573 rotat~s as part of the inspection rotor. The outer section (30) is stationary. Sliding contact is made between the brushes (58) mounted in the stationary section, and the copper slip rings (59) mounted on the rotating central shaft (an extension to shaft 21). Electrical power can thu~ be ~5 brought to the electronic components mounted on the rotating sections of the machine. The outer section (30) is prevented from rotating by a torque arm t31) not shown in figure 8 but found in figure 3. Bearings (60) allow free relatiYe movement of the two sections.
Many elec~ronic signals are generated by the electronics located on the rotating components of the machine. An infrared transmitter is located in cavity (60) on the center line of rotation. Across the small air gap (62), in the stationary section of figure 8, is located the end of a fiber optic cable (63). Signals transmitted across the gap are processed by circuitry located in the stationary frame.
One further feature shown in figure 8 is the optical switch (64) which is one of four mounted on the rotating section. The switch is activated every revolution by the ~3il 3~

_ 17 -protusion~ (65) of the statLonary section. A signal relating to frequency of revolution is thus available. Rotor po~itlon can also be determined.

Figures 9, 10, and 11 give details of the optic~ module~
(22). Each of the four optics modules of the préferred --~mbodime~n~~-has camera systems (67`1 giving four views of the imaged seam. A light source ~6~) provides illumination. In the .... .. ..
preferred embodiment this light source is a 75 watt quartz-halogen bulb with infrared suppressing coatiny. Item 69 .. . ..
iR a reflecting and diffusing chamber which distribute~ the light properly and which pro~ides appertures through which ~he cameras may view the seam.
Each of the camera systems ~67) may be moved toward~ and away from the seam with dowel pins (68~ providing a guide~ The cross hatched section of figure 9 is a cross section of a can guide that serves to correctly po~ition the cans. In planview the guide would be es~entially circular. It has an upturned circumferential edge (72) to help guide can~ from the input starwheel (3a) to the can platforms (4). A tab (71) at the rear of the guide prevents cans from moving too far in that direction. As previou61y mentioned, can~ on the can platforms (4) are raised again~t seam rollers and rotated in front of the cameras. One of three such equally spaced seam rollers (70), with its suppoxting posk (73), is shown in figure 9 (the other two rollers do not show in the section view). A detail of the ~eam rollers is of importance. A small grove is provided in the . .

.
, ' ~ ,, , , J ~ l?L ~

surface of each roller. They are positioned so that the can seam is located in the groves during inspection. Unwanted can movement is therby prevented.
Fi~ur~ 10 is a close up of an indiv~dual camera. The imaging element i5 the CCD (charge coupled device)(74). An appropriate lens (75) is retainsd by ring ~76~ in mount (78).
This mount may be moved towards and away from the CCD to provide proper focus, and locked in position by a set screw ~77). A
group of three set screw~ (79), only one of which shows in figure 10, is distributed around the CCD. These may me adjusted so tha~
the seam image falls on the centerline of the CCD. The box (8Q) represents the circuits that are requixed to drive the cameras and which should be located close to the cameras.
Figure ll is a half section of a light chamber (69).
Walls (81) are highly reflective, while walls (82) are diffusive. Two appertures (83) through ~hich llght can be reflected from the seam to the camera are visible.

Fi~ure 30 shows a representation of the curvate surface cross section of a can double seam and the four angles from which the seam is viewed by the CCDs. As can b~ seen, all or substantially all of the curvate cross section length of the seam falls within the combined field of view of the CCDs. Figure 30 also shows typical output from the CCD~ in each of the four views. More will be said about this diagram when discussing signal processing.
While the four views shown are preferred in order to reliably detect flaws occurring anywhere on the seam, alternative arrangements fvr obtaining the seam image are certainly possible. In particular, still using the same CCDs and len~
arrangements, fi~re optic bundles could be used for structured lighting of the seam. Or, fibre optic bundles could direct reflected light to the four CCDs, bypassing the lens/mirror arrangement~. Or, the reflected light could be directed to a slngle CCD and subsequent processing could divide the CCD output into four parts to mimic what is accomplished here. Each has advantages/disadYantages. The disadvantage of usiny fibre optic bundles is that the physical size of the presently available fibres and the size/shape of the seam preclude using a sufficicnt number of fibres to get the resolution that is desired. The largest disadvantage of directing imayes to one large CCD i8 that the output of the CCD is clocked out ~erially, 80 to achieve the same overall machine speed the circuits would have to be driven four tirnes as fast.
In any event, obtaining images of the full seam is desirable or two reasons:
1 ) a fault could occur anywhere on the ~eam and a view from a single angle would not necessarily capture it;

-,~
,i ~

. ...
. .

2) testing has revealed that a fault commonly has an effect in more than one region of the seam--the relationship between the faults observed in different views allows the type of fault (and probable cause) to be classified.
To clariy, the following should be said. It is possible that the metal of the double seam contains a pin hole type of fault or perhaps a small dent. Detecting such perforation or dents would be like detecting faults which occur in bottles on bottling lines or sheet metal on rolling lines and which can be detected by any number of mechanisms disclosed in the literature.
A well defined defect such as this produces variations in reflected tor transmitted) light which is easy to monitor if the cameras used are arranged to look at the areas of interest~
On the other hand there is another class of inspection problems, such as the can double seaml where such localization i8 not the norm. Most faults that occur in double seams are not a result of material imperfections but, rather, a result of an improper ~oining of the two good pieces of metal. For example, a double seam may be unacceptable because the seam rollers in the canning machine exerted too much pressure when forming the sea~.
The seam could appear fine in the sense that no pits, gvuges, dents or other blemishes are present. Nonetheless, the overly high stress in the metal may lead to later failure. This sort of problem is detected in the present invention by noting that the seam dimensions, in cextain views of the seam, will be abnormal.
Given the manner in which the double seam is constructed there will commonly be a causal relation between the structure of the seam as viewed from one angle and the same area of the seam viewed from another (that is, the same location around the circumference of the can but in view 4 (say) as oppo~ed to view 3 ~say) of the double seam). The problem is to find the correct way to characterize the seam structure so that a machine can determine not only that the structure is out of normal bounds ti.e. a defect is present) but also how it is out of bounds (i.e.
characterize~classify the defect).
As is disclosed hereinr detection and classification of defects of the double seam can be carried out by measuring the length of the seam in each of the four views and performlng appropriate signal processing.
It should be noted that although the present embodiment employs four views of the double seam, the same approach would work if a greater number of views were obtained and po6sibly if fewer were used ~as long as the full length of the seam were scanned).

Figure 12 gives a block diagram of the preferre~
embodiment of the electronic aspects of the present invention.
The signal production means (12.1) i~ further detailed in figures 13 to 16. Linear CCDs are used ~o image the seam of interest. Clock signals appropriate to drive the CCDs o~ figure 13 are provided by circuits of figures 14, 15, and 16.

lq, ~

Information regarding the double seam is coded in the CCD
signals. The circuits which extract the appropriate information and which make decisions re~arding seam quality are found wlthin blocks 12.4 and 12.5. In the present machine such circuits are located in a reference frame that is stationary, while the optical system and blocks 12.1 and 12.2 rotate. Although more of the circuitry presently depicted to the right of the link in figure 12 could be located on board the rotating platform, it was desirable to have such circuits on the stationary frame to simplify troubleshooting ~uring development of the system. It would be possible, in fact, to locate substantially all of the electronics on the rotating sections and still e~ec~ faulty product. However, if real time monitoring of events ls desired (~or example, to help keep machinery in adjustment so defects are prevented) some signals would still have to be sent to the stationary frame.
In the present embodiment, Signal Conditioning Means 1 is needed to prepare the signals for transmission ov~r an optical link, ~nd Signal Conditioning M~ans 2 is needed to prepare the received signal for subsequent feature extraction on the receiving side of the link.
If the can handlin~ were sufficiently modified ~i.e. cans were rotated at a fixed position in front of stationary cameras) the rotating link, and thus Signal Conditioning Means 1 and 2, would be avoided. However, due to the high speed of mod~rn processing lines it was considered more difficult to bring each can to temporary rest in front of a camera. The optical link ~ 3 ~ 3 ~
_ 23 -could also be avoided in a machine designed for the inspection of other sorts of seams or ob~ects. A flat o~ect with a seam runnin~ its length should obviously not be rotated with respect to the camera system.
Signal Conditioning Means 2 receives a high speed serial digital signal over the fibre optic link and supplies demultiplexed signals to circuitry of 12.4. Further details are found in figures 23 and 24. The features extracted by 12.4 are 2~ seam lengths and 6eam start/stop po~itions. The values of these items are passed to the Di~ital Processing Means of ]2.5 or decision making regarding seam quality.
The E~ection and Statistical Means 12.6 is rendered in an AT compatible computer. If digital prQces~ing mean~ 12.5 finds a
3 can to be defecti~e, it sends a signal to the computer ~wlth which it share a bus) which will, at the appropriate time, cause the e~ect mechanism (5)to remove the can from the processing line. An AT compatible computer has sufficient capability for overall monitoring of ~achine status but at the same time is relatively inexpensive and well understood. Statistic~ may be kept regarding items such as e~ect rates and averaye seam dimensions and this information is readily transferred from the AT ~ia commercially available networks.
In the detailed description that follow~ reference may be made to local and remote cixcuits. The ~our optics modul~s (22, figure 3) found in the preferred embodiment are equally ~paced around the inspection rotor. They are considered to form two pairs of optics modules, where the two members of a pair are at .. ..

~13~ ~

- 2~ -opposite ends of a rotor diameter. The circuitry required to perform the siqnal processing for one pair of modules is essentially duplicated by circuitry required to process the signals for the other pair. However, some slgnal processing is not duplicated. For instance, there is only one TAXI chip (figure 19) to handle the signals from all four modules.
Physically, these unique components (such as the TA~I chip) are located on the PCB boards that process data from one of the optical module pairs. That pair of modules, the associat~d circuitry, and the PCB boards are deemed to be `local'. The other pair, and their circuits and boards are called `remote' (since they send signals to the unique circuits located on the local boards). The two modules forming a pair are further specified as module (or head) A, and module (or h0ad) B.

Figure 13 shows one of the sixteen Charge Coupled Devices (84) used in the machine (four optics modules x 4 CCDs pex module). The CCDs used are the TC102 manufactured by ~exa~
Instruments with 128 pixels in a linear axray.
Associated with each is a Harris Semiconductox HA5002 buffer (85) which protects the CCD and drive~ the CCD output over relatively long coaxial cable (86) to the analog circuits of figure 17.
The clock ~ignals ( RCLK, XCLK, TCLK ) arrive via the dri~er circuits of figure 14. WRCK ls not ussd in ~his implementation.

- ~6~3~J~

~ 25 -The clock signals XCL~, TCLK, and RCLK which are used to coordinate data xead in the CCDs (84)are produced by the CCD
controller circuits of figure 16 and passed to the CCDs via the circuits of fiqures 15 and 14.
The CCD controller (87, figure 16) i~ an EPLD (Erasable Programmable Logic Device) manufactured by Altera and called by $hem the EPf900DC. Listing 1 proYides the infoxmation necessary to duplicate ~he EPLD structure used here. From an original clock signal (CLOCg) produced by figure 20, this chip produce~
X,T, & R CLK signals with the correct shape and timing for reading data from a CCD (84~. These signal~ are then operated on by therotating latches (88) of figure 15 to provide the properly timed aignals for reading all four CCDs of a given optical module (22).
EPLD 87 also generates the low frequency clock pulses.START
and STOP which are used by the data encoder (89) of figure 18.
Figure 14 shows the final circuits required to make the various clock signals output from figure 15 sui~able for driviny the CCDs. Two functions are performed--level shifting and driving of the high impedence clock inputs. One such circuit is needed for each CCD.
Returning to fiyure 16, the EPLD (87), in conjunction with latch 91, generates the 4 strobe signals (STRBl,..,STRB4) which are provided (for figure 17) to maintain the video ~ignals on a constant DC level corresponding to the level of the black level pulses.

~3~

A further feature revealed in figure 16 is the clock signal (ADC CLOCK) used by the Analog to Digital convertex of ~igure 18. It 1~ provided by a digital delay device from Dallas Semiconductor ~10.2) (item DS1000). Through jumpers, ad~u~tment6 can be made for various signal propagation times that characterize nominally identical machines. It is used to control the analog to digital converter ~90), data encoder (8g) and some latches of figure 12. It is desirable that the timing signals be such that the CCD output arrives at the ADC during the low phase of the clock. This insures that the ADC sees the input data when it i8 stable and allows the use of a cheaper ADC than would otherwi~e be the case.
Another digital delay device (92) provides the FFWR signal for the fifos (94) of figure 19 (pins labelled WR~.
Finally, two signals CLKA and CLKB are provided by the buffers g4. These are the CLK inputs for the latches (88) of figure 15. A and B ~ignify signals for the local and remote heads respectively..
The CLK signal of figure 15, and the ADC CLOCK signal of figure 16 are derived from the fiystem clock signal (CLOCK) of figure 2~ The voltage controlled o~cillator (95~ provides a clock signal dependant upon the voltage supplied to the device 1 some wave ~haping i8 applied to the output signal). The voltage supplied is determined ky the digital to analog convert~r (96) which has inputs supplied by the PROM (97~. The relationship between machine speed and proper clock rate is non-linear and the PROM is used ~o contain the required mapping, which can be ~ !
.~..

~L 3 ~
- 27 _ found in Listing 2 (the PROM is a 2716, 4K in size). Inputs to the PROM are via the latch ~g8). The digital values supplied to the latch, and PROM, may originate in one of two ways.
First, in normal operation, the EPLD (99) (see listing 3) will supply the values. It has its own clock ~100) and an input (SPEED) from the optical switch (64) o figure 8 which counts revolutions of the machine rotor. In this way, the value of CLOCK is related to the operating speed of the machine.
The alternative method of supplying values to the PROM (97) is via the DIP switches (101). By setting the overide swithces (101a) the EPLD (99) will not provide data and the ~alues given to the PROM will be determined by the DIP swithces (101) The reason for having the two sources of input to the PROM
is as follows: The EP~D (99) provides values that depend upon 3~
actual machine speed. When the machine rotor is stationary no value i8 output and the system clock does not operate. However, fsr trouble shooting purposes it may be desirable to insert a can into the stationary machine and examine the data that would be gathered if the clock were operational. The DIP switches allow this to be done. Of course, if the machine, in operation, ls used at only one speed the flexibility provided by the EPLD ~99) is not required.
Gne further feature of figure 20 should be mentlonedO The NEWCAN signal allows the latch 14.4 to release its data only when a can is actually in front of the cameras.

i , ,, ;

~32~ ~

Figure 21 shows the origin of this NEWCAN signal. In figure 21, the CCD DATA is the digital data from the view 2 camexa ~see Figure 30). It is compared (102) to a preset threshold value to 0 determine the presence of a can (a can in place produc~s more reflection than the empty space). The EPLD (103) (see listing 4) provides the NEWCAN signal to figure 20 and ~he CANIN (and,~ORB) signals to figure 19. The AORB siynal ~odes whether the data comes from the local o remote inspec~ion heads.

Return now to figure 17. The circuit ~hown can be divided into two parts. The initial analog part is duplicated 7 more time~ to handle the 8 cameras that may be in use at any one time. The input signal VIDl is the output from one of the CCDs.
Each of the 8 channel~ inverts and amplifies the video signals coming from a CCD. Each channel also has two other inputs. Gain control (AGC1) is~provided via the circuit shown in figure 22.
Black level restoration is provided via the STROBE1 signa3 originating in figure 16.
The ~econd part of the circuit shows the 8 filters and the analog multiplexor (104) that is used to multiplex signals from the 8 channels. The output analog video ~ignal i~ amplified on its way to figure 18.

Figure 18 shows the multiplexed video signal of figure 17 being amplified (105) b~fore passing to an analog to digital converter (9OJ. The ADC CLOCK controlling the convertex, and following latch, comes from figure 16 and ultimately from the system clock of figure 20.
EPLD (89) i~ a data encoder which serves to add start and 15 stop bytes to the data train. Listing 5 provides the code for this EPLD (B9). The START and STOP pulses controlling this device are generated by EPLD (87) of figure 16.
The data encodex reserves values `00' and `FF' for control bytes. Input data that has ~he value ~00~ is given the value `02'. Similarly, input data `FF' is set to `FE'. The EPLD will set the output data to `FF' only when the STRT input is high.
The original CCD output has now been multiplexed and converted to an 8 bit wide digital stream. Figure 19 ~how~ the final preparation before delivery to the fibre optic link~

The principal components of figure 19 are the TAXI chip (106)) and the EPLD (107) which controls it. The TAXI is an AM7968 produced by Advanced Micro Devices. As input it receive~
the 8 bit parallel data from latch (10~); as output it produces a serial stream for the line transmitter (108b). Output from this ECL device is sent to the infrared transmitter located in cavity (61) of figure 8.

.. ~ . . . .

~ 3 ~

Input to the latch (108) comes from one of four sources. A~
S previously menti~ned, the four inspection heads of the machine are divided into two pairs. Due to the machine geometry, only one inspection head of each pair may be examining a can at any given time. Data from either of the `local' heads arrives through one of the FIFO~ (94); data from the ~remote~ heads 15 through the other FIFO (~4).
The latches (109) provide the other two sources of inputs diagnostic signals form either the remote of local boards. A
full byte iB available for such diagnostics but in the present embodiment only two bits are used--A/B and CANIN. The A/~ ~witch indicates for each pair of optical heads (local h remote) which optical head is pxoviding data. The CANIN bit indicates whether or not a can is actually in front of the cameras. Both 6ignals are provided by EPLD (103) of figure 21.
The EPLD (107) has to determine which of the 2 fifos or which of the 2 latches to enable. The enabled device gets to clock its contents into the TAXI (106). The enabling i6 don0 according to a fixed sequence. The cycle ~or the EPLD is l)put ou~ command bits ~COM00 to COM03) 2) read the diagnostic latches 3) read the fifos. The NEWCAN signal ~NEWCAN 0 for local heads, NEWCAN 1 for remote heads) i~ used to begin ~he cycle. This si~nal comes from figure 21, The TAXI (106) will send commands if either C0, Cl, or C2 i5 active. The TAXI receiver EPLD (115~ will detect the command sequences in the data stream and react appropriately.

One further circuit before th~ fibre optic link is of importance. Figure ~2 shows the gain control circuit~ for one pair of optic modules, The output signals are used by the analog circuits of figure 17. Potentiometers (110) may be manually ~0 adjusted to vary the DC voltage levels. In future the potentimeters will be replaced with circuits to provide automatic ad~ustment of the gain~

This completes the discussion of the Siynal Production Means and Signal Conditioning Means 1 of figure 12. The image data is now in the form of a multiplexed high speed digital serial stream. Details of the infrared transmitter and receiver that form the optical link are not shown but are of standard design.

Figure 23 provides for the high speed serial data which ha been transmitted over the link, to be converted back to a parallel form. Item 111 is a MECL receiver (MC10116) and 112 is ~0 the TAXI receiver (AM7969) which actually produces the parallel data from the input serial stream.
There are two pairs of latches to which the data may be directed under the control of EPLV 115 (see listing 7~. Latche 113 receive the diagnostic data for the local and remote cameras. Latches 114 receive the image data for local and remo~e cameras .

3L3~,2~

When data bits are on D0 - D7, thPn DSTRB tells EPLD (115~
to clock the data. Similarly, when command bits are on D0 - D7 then CSTRB causes the command data to be clocked.

Figure 24 performs two functions. First, it demultiplexes the data coming from figuxe 23. The demultiplexer (116) monitors the data stream. The data encoder 89 of figure 18 reserved `FF'~
for marking the beginning of scan lines and `OO's to mark the end. Upon detection of an `FF' in the data the demul~iplexinq cycle begins. Data is encoded in the oxder ~iew 1, view 2, view 3, view 4. More precisely the data is in the order~ pixel 1 of view 1, pixel 1 of view 2,..,pixel 1 of view 4, pixel 2 of view l,..,pixel 2 of view 4,..~,pixel 128 of view 4, The data i5 read into the four latches (117) under control of the demultiplexer (116), with all data for a given ~iew going to a particualr latch.
The counter (118) is used to count the number ~f pixels pas~ed to the latches (117). The comparator (119) and associated DIP switches are provided to control the number of pixel~ passed to the latches. The normal setting is I28.
The second funtion of the figure 24 is to provide the delay clock (LATCHIN)??~?that is used to produce the delayed signal ( figure 25 ) that is subsequently used by the edge detection circuits of figure 26.

~ 3 ~

Fi~ure 25 shows the simple circuitry which takes data from one of the ouput latches (117) (i.e. the data for one view) of figure 24 and provides two signals to the following analog circuitry of figure 26.
The arriving data is passed through a direct register 121 and also the delay providing registers 122. The delay registers u~ed can handle only four bits so a pair of them is needed.
The delay register~ 123 produce a delayed signal which could be used by subsequent analog circuits for the extraction of curvature information from the data. In the present em~odiment, such information is not used in the decision about seam quality.
It is anticipated that a future version of the machine will make use of such data.
The required clock signals are provided by EPLD 116 of figure 24. In particular PIXCLK determine~ how much delay to provideO

The direct and delayed signals from a given camera (ie one view) are each passed through digital to analog conver~ers 124 of figure 26. The two signal~ are 8 bits wide and of identical shape and amplitude. They differ only in phase.
~ ach analog signal i8 acted on by a low pass filter 125, and amplifier 126. This latter item also acts as a `super diode~, cutting off any negative parts of the signal. ~ voltage follower 127 acts on the delayed signal only.

~ 3 ~ 3 ~ ~ ~

The differential amplifier 128 subtracts the two sign~ls.
The signal appeariny on this amplifiers output contains both positive and negative parts which correspond to rising and falling edges in the original video signal. The comparators 129 and 130 produce standard logic pulses from the amplifier output.
Potentiometers 131 allow the thresholds for the comparators to ba - 15 ad~usted.
As is indicated by the dotted boxes of Eigure 26, the circuits fo~ producing the COMPB pulse for views 2 and 4 differ slightly from those used with views 1 and 3. The reason for detecting rising and falling edges in two views but only rising edges in the other two wi.ll be made clear in the later discusslon of figure 30.
One further feature of figure 26 should be mentioned. The two video signals are kept on a common DC level, corresponding to a minimal value of the non-delayed signal, by 132 acting (in a peak detector configuration) in con~unc~ion with ampllfiers 133.

~0 Figure 27 shows an EPLD (134) and a set of latches which together provide data to subsequent digital processing circuitsO
The COMPA and COMPB signals from the preceeding analog edge detection circuits are inputs to the EPLD. The function of the EPLD is to determine the start and stop locations of the seam edges (ie at which pixel, of tha 12B, the seam begins and ends)r and to determine the length of the seam, at each scan pvsition.

32~

The start positions are latched out through 135 to f igure 28. Similarly stop positions are pa~sed through latches 136 and the lenghts through 137. Latches 138 anticipate future development when curvature information will be used in the decision making. In the present embodiment the length (length of the seam in pixels) is the critical component of the digital processing scheme.
Listings 9a-9d provide the information required to program the four different EPLDs required for the four different view~.
Since the data from each view has a different characteristic shape (see figure 30) different devices are required to detect the correct rising/falling edges.

Consider at this time figure 30. It shows the outline of a double seam. It also shows typical CCD output for each of the four views of the present embodiment. The analog edge detection c~rcuits of figure 26 produce pulses wi~h each significant rise and fall of CCD output, bu~ seam lengths can be extracted from the data only if the correct edges are dealt with. It i~ ~uickly apparent why there were two variation~ of the analog circuits in ~igure 20. In view 1 a strong rising edge is characteri~tic of the beginning of the seam and a strong falling edge is characteristic of its end. Similarly with view 3. In view 4, on ~0 the other hand, although a strong risiny edge marks the s~art o the ~eam, it is only the rislng edge that results from reflection off the bottom of the countersink that can be readily detected.

., ~ .

.
' - "~

~~3~

The length in view 2 is similarly marked by two risin~ edges.
The long slow decline in light levels as we pass down the seam i3 quite unsuitable for reliably triggering circuits. There is, fortuna~ely, a small but significant increase in light level as we pass to the flat surface of the can body.
The digital contxoller of figure 27 (EPLD 134) is programmed to `close its eyes' to 0dges in certain areas. Con~der view 3 of figure 30 and assume that the risign egde characteristic of the outside edge of the seam has been detected. Since the seam has a characteristic width, the falling and rising pulses that mark the top of the seam can be ignored. The controller will only start looking for a falling edge when it i~ dealing with pixels that are safely passed the region marking the seam top.
In any event, each view has its own characteristics and it i8 only experience with a particular type of can that will reliable determine what sorts of thresholds to use.

Figure 28 shows the interface between the output of figure 27 and a commercially available digital processing board which operates upon that output. This interface is essentially a dual port RAM with two banks of memory.
Data from figure 27 arrives via the 8 bit data bus and is temporarily stored in one of two 64K memory sections (139 + 140 or 141 + 142). The incoming data is the series of start and stop positions and lengths for each of the approximate 2000 scan locations, for each of the four views, for each can. The -. :

~ ~3~

structure of the data is: starting pixel of scan line n, stop pixel for scan line n, length of scan line n, no signal (or curvature), starting pixel for scan line n+l, 0 The memory bank to which the data is directed is controlled by the ABSE~ signal from the controller chip 144 of fiyure 29.
This same EPLD also determines the addresses in which the data will be temporarilly placed. ~ines C12-C15 (of EPLD 144) 6elect the most ~i~nificant bits for the address and the counter 145, running at ltl6 the rate/ determines the least significant bits.
The essential operation of figure 28 is as follows: incoming data is sent to a given memory bank such that view 1 and view 2 data are placed in RAM 140 and view 3 and view 4 data is placed in RAM 139. Within the view 1 data, the 2000 ox 80 start positions are continguous. 5imilarly the 2000 or ~o end positions and 2000 or so lengths are stored together. Similarly for each of the other views.
When data from the next can arrives, as indicated by ABSEL, it is directed to the the other memory bank (141 & 142).
Simultaneously, the DSP board may access the data from the previous can ~stored in 139 &140) via its own bi-directional bus and port 143. tTo perform a memory te~t the DSP board may write into the dual port RAM via port 144). Because of the contiguou~
blocks of memory, the DSP can get the information it needs ~ie SO the length ~l~lues ) very rapidly once access is begun .
Listing 10 gives the code used to program EPLD 144.

.

:
. .

~ 3~3~

Tlle outpu~ data fl~w from figur~ 28 1B an B blt wide 5 6tream. For any given can, the starting plxel ~or each of the approximately 2000 ~can~ 18 transm~tted, then the ending pixel for each scan, ~nd then tlle l~ngth (~n pixel6) for each ac~n.
. 1~ Provieion is alRo made for further lnfomlation (curvature) to ~ransmitted. After all the informat~on for view 1 i8 tran~ferr~d, vLews 2t 3, alld 4 ar~ halldled in turn.
The dlgltal proce~s~ng board tllat uses tl~l~ data 1~ a commercially ava~lable unit called the TNS32~C25 and available from SPECTRUM Slgnal Proce6~ing IIIG. The board has built-~n A/D
interface~ which are not used ~n the Rresent pro~ect. I~ plugs into any PC expan~ion bus. Detail~ regardlng the board can b~
obtalned from the v~ndor.
The functlon of tlle b~ard i~ to analyza the incollllng data and determine wl~en seam condltion~ are abnormal. None of the decision procedures 80 far implemented on the DSP board uses the ~bsolut~ start and stop po~itlon data. Adequate results have been obtalned using only tlle length of each ~can l~ne (which o~
course depend~ upon t~e relati~e start/stop po~ition~.
~0 ..
A ~ignlf~ca~t a~lount of processing is done to change thi~
length inforillation into decis~on~ about ~eam q~al lty. The is general procedure~ of the pr~ram coded lnto the DSP board ar0 outllned below and anyone ~k~lled ~n the art w~ll be able to - duplicat~ the functlgn~ However, depending on production line speed, it may be noted that assembly language coding may be required.

:.

L

- 39 ~

The process begins when the DSP board receives an interupt signal from the APP to indicate that data is ready.

If the status of the APP indicates that there is no can in the inspection module ~CANIN is low) Then the DSP interrupts the PC to indica~ a NO CAN signal, and the DSP enters IDLE mode;
Otherwi~e (there i8 a can present), the DSP reads the Number of Scan Lines value from the APP.
If the Number of Scan Lines does not fit within a pre-defined tolerance Then the DSP interupts the PC with a TOO MANY or TOO FEW
scanlines signal;
Otherwise (the number of scan lines i8 accep~able~, the DSP
will read in all of the scan lines from all 4 views from the APPo Once all of the scan lines have been read into memory, there is no further communication between the APP and DSP during tha~
~an's analysis.

All of the scan line values are now available in RAM. The initial stage of analysis treats the data from e~ch of the 4 views seperately. ~he notation s(v,i) indicates the scan line value in view v at position i where v ranges from l to 4, and i ranges from 0 to the total number of scan lines for that view ~it is somewhat larger than 2000 in the present embodiment).

.
:, Well localiæed spikes in the data are considered to be noise and are eliminated using the followinq procedure1 If ABS~(v,i~ - s(v,i+l)} ~ noise threshold Then s(v,i) = {s(v,i-1) + 5(v~i+1) } /2 where ~BS indicates the absolute value, and the no~6e threshold is a constant. The value of this constant, and others below, is best determined by experience with particular cans in a praticular machine.
Next, the scan line data from each view is smoothed to eliminate the high frequency component of the signal. The following low pass filter is applied to the data fox each view independently.

sms(v,i) = 5(V,i) * (exp(k)-l) + sms(v,i-l) * exp(k~
where sms(v,i) indicates the value of the smoothed signal at position i, in view v and whexe k is a predefined constant. To minimize the time required for calculation, the values of exp(k) ~re found using a look up table.
A running avera~e for the scan line value, at each scan line posi~ion, iE now determined~ rav~v,i) indicates the value of the running average in view v at scan line i. Then rav(v,i) = ~SUM[from i-512 to i3 of sms(v,i3} /51 . .~. . .

_ 41 -where SUM~from.. to.. ] indicates a summation over the sp~cified limits. 512 lines are used to provide the running average because it is of reasonable size and for the particualr DSP board used, division by 512 is a simple register shift to the right. To get the process started a header ~f 512 scan lines (the last 512 scan lines~ 1~ tacked to the fxont of the list of scan lines.

Our data for each view has now been noise reduced and smoothed and we have a value for the running average of the seam length at each of the inspection locations (in each of the - views). We now create a `defect vector' corresponding to significant variations of the seam lengths from ~he running average of the lengths.

Consider one view and assume that 2000 images have been captured around the seam circumfexence. For each of these 2000 locations we have val~es for the seam length (ssnoothed) at tha~
location and for the running average at that location. Assume that ~or the vi~w under consideration a deviation in these two ~ quanities of 10 or more pixels has been found to be significant (i.e. normal scratches and dirt generally produce ~maller deviations). Assume that the first location where a ~ignificant deviation occurs is at scan line 300. This value is the `start position' of our first defect. The `peak value' is ~et to the deviation of the scan line leng~h from the running average length .. . .

- ~ 3 ~ ~J9-~

at this position. The `end pos~tion' ha8 the same value a~ the `start po~iSion'. As each subsequent line i~ examlned i~ will b~
~ound either to exceed the 1~ pixel thre6hold or not. If the threshold i~ ~till exceeded, the end position component of the defect vector i9 changed to the new scan l~ne position. The peak value component i~ updated if the latest scan line deviates from 1~ the average more t31an the previou~ lines did. At soma po~nt, let.
U8 say at BCAn line 40~, the deviation will drop below the cho~an threshold ~alue and the defect vector i~ complete. In thl~ ca~e, defect vector $1 i~ the 3-tuple (peak,300,40~) where peak i~ the maximum dev~atlon of the seam length from the running average of the seam lengths. That iB~ for the view under consideration, there i~ a `defect' extending between ~can line 300 and scan line 400 and it ha~ a maximum deviation of `peak' pixels. Thi~
3~
process of creating defect ~ectors continue~ until all 2000 scan lines have been proce~sed. The result 1~ a ~et of zero or more 3~ vectora ~hat represent pos~ible defects. Hore processing iB
; performed before the final deci~ion regardlng the exl~tenee o~
de~ects i 8 made.
~ The present embodiment is designed such that if the number of defect vectors for any view is greater than 32 then the PC will be interup~ed and all processing of that can will ~top. Such a large nun)ber Qf defect vector~
indicate~ a badly damaged ~eaml or else there is too much ~ignal no~e--in either case processing ceases and the can i~ ejected by "` ' ~

~32 ~

the air powered piston of figure l.
, The original defect vectors are now `merged'. That i8, defects that are withln a predefined distance of each oth~r are con~idered as part of one larger defect. In particular~ if the difference between the start component of one defect vector and ths stop ~omponent of the following defect vector i~ less than a predetermlned threshold, then a new vector replaces the two. ~he peak component of the replacement vector is the l~rgèr of ~he two contributing vector~. The ~tart component of the new vector 18 the ~tart position of the fixst vector; the end compon~nt of the new vector l~ the end position of the second vector. This merging of the defect vectors continues until all of the original d~fect vectors ha~e been considered~
The next stage of processing ~ to compare ~he lengths and 3S peak3 of the variou~ merged defect vector~ to predetermined mlnimum values. Defect vector~ representlng short l~ved var~atlona, or longer li~ed but not extreme variation~, are discarded. These ~lnimum values/ along with the variou~
constants already ment~oned, are obviou~ly important to the decision making oE ~he machine. The appropriate cho~ce of con~tants can be made by educated trlal and error. The value~
obviou~ly d~pend upon tha 8pecific~ of the ~achine. They may al~o vary with the type and size of can being used. Although tedious, experience with a range of defects, in a ~pecific type of can, will pr~vide reasonable valu~ or the various con3tant~

... .

~3~3~

We are now left with a set of defect vectors, one for each of the four views, which represent significant deviations from perfect seam construction. One further stage of processing occurs wi~h ths~e vectors. An attempt is made to align the defect vectors (and therefore the defect~? of one view with those in another. The position of a defect i~ taken to be the middle of the defect (i.e. the scan line positon of the middle of the defect--scan line 350 using the numbar~ in the example above). If the position of a defect in v~ew 1 i~ within a predetermined value ~f the position of a defect in view 2 then the de~ect vectors are probably the result of the same real defect. The ~5 deect vectors (and defects~ are said to align. Similarly, an attempt is made to align defects that are observed in views 3 and
4.
The existence of even unaligned defect vectors may be sufficient cause to eject cans as defective. It may also be noted that the value of the peak component of the vectors can be positive or negative depending upon whether the deviation in seam length from the running average was due to abnormally short or abnormally long ~eam lengths. This immediately gives us some information about the type of fault that may be present in the can seam.
Consider igure 32 which shows cro~s sections of two dif f~rent defect~ . In 32a the view 3 dimension is long as would be the case with cutovers. On the othex hand if this dimension were ~horter than normal it could indicate too much horizontal pressure was applied during seam formation.

r ~ 3 Figure 32b shows a fractured seam. The length in view 2 has been found to be shorter than normal because the edge detection circuitry has detected the edge at the beginning of the fracture.
However, it should be noted that seam defects normally affect the images in more than one view. One type of fault may produce a long seam length in views 1 and 2 and a short length in view 3. Another type of fault may produce a long vector in viewl but short vectors in views 2 and 3. The DSP will cla~sify the type of fault when it detects such characteristic combinations.
It is difficult to give a mapping, in advance, from defect vector combinations to type of fault. A general procedure can be outlined for determining such mappings.
The DSP board has aCCeS5 to the following seam infoxmation:
start positions of the seam, stop position of the seam, and length of the seam, for each canning position, for each of the views. The DSP board resides on the PC bus. Anyone skilled in 3~ the appropriate art can use thi~ information to produce graphical displays that are highly useful. For instance, a bar chart of the 2000 or 50 seam lengths can be di6played. Thi~ might be overlayed with defects that are determined from the DSP
processing. The defects that are aligned by the DSP might be further highlighted. By examining such displays, especially when the corresponding can i6 available, it is possible to tune the machine for good performance. Changes made to the various threshold6 may be evaluated.

This completes the description of the embodiment of the invention. No mention has been made of the value of the information gathered by the machine other than to say that cans with defective seams will be ejected from the processing line.
It will be obvious to those skilled in ~he arts that having a machine which can accurately determine seam dimensions, at processing line speeds, is of inestimable value for controlling the double seaming process. For instance, as suggested above, computer displays showing average seam dimensions, in each of the views, can be generated from the data available. Such displays . can alert plant personel to problems or trends before a serious problem actually arises. Charts showing defect rates over time i5 another area where the present invention provides far more timely data than any method available untill now.
~ lthough the embodiment of the invention that has been described relies upon radiation signals within the visible light region, it will be apparen-t to those skilled in the art that non-visible radiation frequences could be used. The primary considerations inviting design within the visible light region ~0 were the optical characteristics of the CCDs that were readily available and inexpen~ive.

. . _ .
`: t .
.

~3~3~
L ls r/~

lof 3 RICR SLlHRA
SZRTINEL VISION IHC.
BRUlRY 5, 1988 1.00 A

eP900 P2CCD.lD~ ~C102 CCD COllTROLLeR FOR HElD CCD CONTROLLeR PCB
OP~IONS:TURBO ON
PART: ePs3 o INPU~S:CLOCllCl~
CLOCIIt21, CLOC113t22, 2NAaLE~2, CLEAR~3 OU~PUrS:QAtS, IQAIf DeLA~eD BY ONE C10CR C~CLE EOR IINALOG NURI
QBt6, IQ3Bf DELl~ED BY ONe CLOCR CYCLE 70R ANA10G NU~I
QAA~30, IACTUAL COUNT LS31 Q33~31, lACTUAL COUNT 211D LSBI
Q0~7, Q1~8, Q2C9, Q3~10, Q~
Q5~1l, Q6~13, Q7~
EOC~15, ~11Cl~i!36, !TCRt35, I~CR~3j, BLliLeV?33, s~op~28, STlRTt21, ~17HReNt26, I'I~HR?25, ISTOP~l9, IDRlVeN THROUGH ACI~ TO R~llOTEI
ISTARI~16 lDRlVEN THROUGH ACll TO ReilOTEI
NETHORl:
CLOCll=lNP~CbOC~I
CLOClil=lHPICLOC1;2) CLOC113 INPItLOCR3) eNlBLe IN~(ENllBLe) CLelR lHPlCLeAR) QB ROR~(Q3d,CLOCll,GND,GND,VCC) Ql-RON7~Qld,CLOCl;l,GHD,GND,VCC) QAll,QAAf TO~lQAlt,CLOC12,CLeAR,GND,VCC) Q33,QBBf TO~(QBBt,CLOC62,CLelR,GND,VCC) QO,QOf TOT~IQOt,CLOCll,CLeAR,GND,VCC) Ql,Qlf-TOTF(Qlt,CLOCll,CLeAR,GND,VCC) Q2,Q2f TOT~IQ2t,CLOCll,CLeAR,GND,VCCl Q3, Q3f ~0~ 1Q3t ,CLOCRI, CLelR,GHD, VCC) .~..

- . ,.:.. "~.. ,. ,,., :

~3~3 I''J~:~

f 3 Q~,Qlf TO~FIQ~t,CLOC~l,CLEAR,GHD,VCC) QS,QSf-~O'r~lQSt,CLOCRl,CLEAR,GND,VCC) Q6,Q6i=~O~EIQ5t,CLOCll,CLeAR,GND,YCC) Q1,Q7f-~OTFIQ1t,CLOCRl,CLEhR,GRD,~CC
EOC,eOCf=ROREIEOCd,CLOC~l ,CLEAR,GND,YCC
l;~CI ROHEI~Cld,CLOCl;2,CLeAR,GND,VCC) !TCI~RONEITCRd,CLOCl2,CLelR,GHD,VCC) !RC~ ROXFlRC~d,CLOCR2,CLEAR,GND,VCC) BLl~LEV RONrlBLlLeVd,CLOC~2,CLEAR,6ND,VCC) S~OP RONEISTOPd,CLOCl~2,GND,GND,llCC~
ISJO~ R011215SlOPd,CLOCll2,GND,GND,VCC) STA~S RONFIS~AR~d,CLOCgl,GND,GND,VCCI
ISTAR~=RON~ISSTlRTd,CLOCl~l,GND,GND,YCC) flFl~ReN,~l~llReNI TOTF1~12HReHt,CLOCR2,GND,GND,VCC
rlF~lR CON~IFlFNRi,VCCI
ÇQUAr~OUS:
QAd QAAf;
Qgd Q9af;
QlAt IENABLE'/eOCt) IQAAf'EOCEl;
Q33t IZNJBLE'QAAf '/20Cf ) tlQaBf~EOCfl;
QOt leNABLE~QAAE~/0Cf~Q33f) ~IQQf~EOcf);
Qlt IENA3LE'QAAf'lEOCf~QB3flQOf) tlQlf~EOCf)~
Q2t IENABLe'QAAftlÉOCf'Qa~f~QOf'Qlf) tlQ2f'EOCf)~
Q3t IENlBLe'QIIAf'/EOCf'QBaf'QOf'Olf'D2f) tlQ3f'EOCf );
Q~t IENABLe'QAAf'/EOCf'QB3f'Q0f'QlftQ2f'Q3f) ¦Q~f'EOCf);
QSt leNABLE'QAAf~/EOCf~QBBf'DOf~Qlf~Q2f~Q3f~Q~f) ~IQSf~EOcf );
Q6t IENA3LE'QAlf~leOCf'QB9f'QOf'Qlf~D2f'Q3f'Q~f'OSf) IQ6f~eoef);
Q7t 1cNABLEtQAllf~l2ocf~Qaaf~Qol~Qlf~Q2f~Q3f~Q~f~Qsf~Q6f) tlQ7f'EOCfl;
~CI~d lll/QOf'/Qlf'/Q2f'1Q3f'/Q~f'lQSf'lQ6f'/Q7f) tl/QBBl~QOf~lQIft/D21~/Q3f~/Q~f~/QS~/Q6f~lo7f));
SCld QQf;
RCld /I/QAlf'/QBBf);

- BL~Leqd l QAAf' Q33f'/QOf' Qlf'/Q2f' Q3f'1Q~filOSf'lQSf'191f) ~i31 S~l . .
.... .. .. .. ~ ". -. . "`. -; ` i ~
~ ` ' . ' :` `

~ol 3 QAlf~ QB9f~ QOft Qlf'/Q2fl Q3f~/91f~lQSf~/Q6f~/Q7fl 1~71 ~I QUf' QBBft/QOf~/QIfl Q2f~ Q3ftlQ~ftlQsltl96f~lQ7fl ISII
~ QAAf~ Q~sft QOf'/QIft Q2ft Q3f~/Q~f~/QSft/Q6f~/Q7f~;155 eccd /QAAf~ Qs3f~ QOf~/Qlf~ Q2ft Q3ft QiE~/QSftlQ6f~ Q1f;

S~ARJd l QAAlt QB9Et QOft/Qlft/Q2f'/Q3ft Q4fi/Q5f~1Q6ft/Q7fl t711 ~llgAAf~lQB3f~lQofl Qlft/Q2f'/Q3ft Q~f~lQSf~/Q6f~/Q7fJ
tl gAAf~lQBBfllQolt Qlft/Q2ft/Q3fl Q4f~lQSf~/Q6f~/Q1f) tl/QAAf' Q3~f'/QOf' QlftlQ2ft/Q3ft Q~f~lQSfi/Q6ft/
4( Q~f~ 9aaf~lQof~ Qlft/Q2f~1Q}f~ O~f~/QSf~/Q5f~/Q7f /QAAf~/QBBft QOft Qlf~l92ft/Q3ft Qif'/QSf~/Q6f~/o7f) ~( QlAftlQsBft QOf~ Qlf~/Q2f~/Q3f~ Q~f~lQSf~/Q6f~/Q7f) l77t ~I/QAAf~ QsBft QOf~ Qlft/Q2ft/Q3ft Q~f'lQSf'/Q6f'/Q7f); 1761 SS~IIRid /ll QAAft QB8f~ QOf'/QIf'/Q2ft/Q3f' Q~ftlQSft/g6f'/Q7f) t711 QAAf~lQBaftlQof~ Qlf~/Q2f~/Q3f~ Qlf'/QSf'/Q6ft/Q7f) Qllft/Q313ft/QOf' Qlf~/Q~f~lQ3f~ Q~ft/QSf'lQ6ft/Q7f) ~I/QAAft QB8ft/QOft Qlf'lQ2f'1Q3ft Qif'lQSf~/Q6ft/Q7f) tl QAAft QBsf~lQGfl QlftlQ2ftlQ3f~ Q~f-/g5ft/Q6f, t QOfl Qlfl/Q2ftlQ3ft Q~f'lQsftlQ6ftlQ7f) ~I QAAIt/Qssft QOf~ Qlft/Q2ftlQ3ft Qift/QSf~/Q6ft/Q7f) It7t t(/QAAf' QBBft QOft Qlft/Q2f'/Q3f' Qlft/QSft/Q6ft/Q7f)l; l781 STOB~ I QAAft Qs3f~ QOft/Qlf' Q2f'/Q3f' Q~f'/QSft/Q6f~ Q7f)~ IS991 SSllOPd /l QAAf~ Qssft QOft/QIf~ Q2ft/Q3ft Q~ft/QSft/Q6fi Q7f); IS99t iR~Nt=llQAAl~lQsaft QOft Qlft/Q2f~1Q3ft Qlf~lQSf~/Q6f~/Q7f '/~IFtiREHfl 1?6t OAAf~lQBBftlQoft Qlft Q2ft/Q3f~ Q~f~/QSft/Q6ft Qtf ~rlrll~eHf ); 1601i III~Ri-/lllli~Rellf'/CLOC~31;
IHD~

r 5 ~3 .. ..

.

.
.

~ r 3 ~ ~
L l s~

0000 ~
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF' FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF

E3 E2 E0 DE DD DB DA D8 D7 D6 DS D4 D2 Dl D0 CE CD CC CB CA C9 C8 C7 C6 C5 C4 C3 C2 Cl C0 0080, BE BD BC BB BA BA B9 E~8 B7 B6 B5 B4 B4 B3 B2 Bl B0 B0 AF AE AD AD AC AB AA AA A9 A8 A8 A7 A6 AS A5 A4 A3 A3 A2 Al Al A0 9F 9E 9E 9l) 9D
9C 9B 9B 9A 9A 99 99 98 g8 97 97 96 96 96 95 88 88 87 87 87 86 8b 86 85 85 85 84 84 84 83 0100, 79 7~ 78 78 78 78 77 77 77 76 76 76 76 76 75 ~5 75 74 74 74 73 73 73 73 73 72 72 72 71 71 66 66 66 66 65 65 65 65 65 64 64 64 ~4 64 63 63 63 63 62 62 62 62 62 61 61 61 61 61 60 ~0 0180, 54 54 54 54 54 54 53 53 53 53 53 53 52 5~ 52 4D 4C 4C 4C 4C "C 4C 4B 4B 4B 4B 4B 4B 4B 4B

S Lt , ~L3~.3 L l S ~r~lCr 3 ~ of 3 DALE P2NNe~
SZRTINEL VISION IIIC.
NAY ~, 1988 1.00 A

P25PD .ADF
SPe2D CON~RO1 - PRO~O r~o OPTIONS: TURaO ON
PART:EP600 INPUTS:
C10CIlQl, % froR 4060 %
OVeRlD2Qll, ~ allo~s e~ternal 3anual ~election of speed%
SPEED~21, ~ LP F11~ERED SIGNAL FBOH ~LglNG SAUCZR, ~ 611 DEG P2FOR2 NEllPULSE
0VERDATAQl~, % e~ternally set ~sb CLOC112Q13 % salle as cloc~l t OU~FDTS:
SPDC~lQ3, SPDC~2Q4, EOCtS, QIQ6, 8 CLOCR FROII qO60 DIVID2D LY 2 t CN~LTCH~1, % PUISE TO LArCH COUN~ INTO 51~ IN S~NCH
- ~ NITN CLOCRl t IOYERlDeQ3, ~ INVeRSe OF OVERIDE INPUT %
Q91NCHEDQ9, Q8?10, Q71!22, Q6~21, Q5~20, Q~l9l Q3~1l3, Q2Q17, Q1~16, Q0~15 Ne~lORR:
C10CIl INP(CLOCRl) OVeRlDE=lRP IOVERIDE ) SP~eO=lRPISPEED) OVeRDA~A-lNPIOVERDATA) CLOCR2=lNPI CLOCR ) SPDCa~l,SPDCllrlf~RORFISPDCNTld,C10CRl,GND,GDD,VCC) SPDCN~2,5PDCNT2f-RORE(SPDCN~2d,CLOCRl,6ND,GND,VCC) CN~L'rCH,CRTL~CHf TOTFICHTLTCHt,CLOCll,GND,GND,VCC~
IWERlDe=CON~lOV2RlD~c,YCC) ''~ SS
, ~3 ~ ~-'2 ~ ~

~of 3 20C,eOCf=TO~E(eOCt,CLOCRl,GRD,GND,VCC) Ql,Qlf=TOTFIQlt,C10Ci~l,Gl1D,GND,YCC) QO,QOf=TOT~IQOt,CLOCl~2,GND,GND,VCC) Ql,Qlf=TOTYIQlt,CLOC~2,GND,GllD,RCC) Q2,Q2f~TOTE~Q2t,CLOCR2,GND,GND,VCC) Q3,Q3f=TOTFIQ3t,CLOCl~2,GND,GND,VCC) Q4,Q4f=TOTElQ4t,CLOC1~2,GND,GND,VCC) QS,QSf=TOTFIQSt,CLOCR2,GHD,GND,VCC) Q6,Q6f=TOTF~Q6t,CLOCg2,GND,GRD,VCC~
Q7,Q7f=TOTFIQ7t,CLOCR2,GND,GND,VCC) Q8,Q~f=TOT~lQ8t,CLOCll,GND,GHD,11CC) 98LATCHED=RON~Q8LATCHEDd,Q8LATCHEDc,GND,GND,llCC~
Q8LAsCHeDc=CL~P(Q31ATCH2Di) EQDATIOIIS:
SPDCNTld=SP~13D;
SPDCNS2d=SPDCNTlf;
CNTLTCHt= CRTLTCHf~ SPDCNTlft SPDCRT2f tlCNTLTCH f t ISPDCilTl f t /SPDCHT2 f;
lOVERlDE~=lOVERlD
Qlt=CNTLTCHftlEOCf ~ SPDCNT2ft/EOCf t ICRTLTCHf i ISPDcR~2 f t Ql f;
QOt-CNTLTCHftlEOCf~ Qlf t SPDCNT2ftlEOCf' Qlf t ¦CRTLTCHftlSPDCNT2ft QOf Qlt=CNTLTCHftlEOCf~ QOft Qlf t SPDCNT2ft/EOCft QOft Qlf t ICNTLTCHft/SPDCNT2ft Qlf;
Q2t=CNTLTCHftlBOCfl Qlft Qof~ Qlf t SPDCNT2ftleOCft Qlfg QOft Qlf ~ ICNTLTCHftlSPDCNT2f' Q2f;
Q3t=C~TLTcHftleOCft Q2ft Qlft QOft Qlf t SPDCNT2ftl20Cft Q2ft Qlf~ QOf' Qlf t /CNTLTCHftlSPDCNT2ft Q3f;
9~t=CNTLTCHft¦eOCft Q3f~ Q2ft Qlf1 QOft Qlf SPDCHT2ftleOCft Q3ft Q2Et Qlf~ QOft Qlf ~ ICRSLTCHftlSPDCNT2ft Q4f;
Q5t=CNTLTcHf~leocft Q4f~ Q3f- Q2ft Qlft QOft Qlf t SPDCNT2ft/Eocft Q4f- Q3ft Q2ft Qlf~ QOft Qlf t ICNTLlrcNftlsPDCNT2fi Q5f;
Q6t=CRTLTCHftlEocft QSft Q4ft Q3ft Q2f~ Q1ft QOft Qlf + SPDCNT2ftlEOCft Q5ft Q4ft Q3ft 02f' Qlfi QOft Qlf t ICHTLTCHf'lSPDCNT2ft Q6f;
Q7t=CRTLTCHf~lEOCf' Q6ft Q5f~ Q4ft Q3ft Q2f' Qlft QOft Qlf t SPDCHï2ftleOCft Q6ft QSft Q4ft Q3f~ Q2ft Qlft QOft Qlf t ICNTLTCNftlSPDC~T2ft Q1f;
Q8t=CN~LTCHftlEOCft Q7f' Q6ft QSft Q4ft Q3f- Q2,ft Qlft Qof~ Qlf t SPDC11~2ftleOCfl Q7f' Q6f' Q5f~ Q4ft Q3ft Q2f~ Qlft Qof~ Qlf SG
.. . . .
.
. ..

~ ~ ~3~

~o~ 3 t ¦CNTLTCH ft/SPDCNT2f t 08f;
ZOCt=CNTLTCHft/EoCf~ Q8ft Qlft Q6fi QSft Q~ft Q~ft Q2f t SPDCNT2ft/ZOCft QaEt Q7E~ QCfi QSft Q4fi Q3f~ Q2f + ICN~1~CHftlSPDCNT2f~ eocf;
QaLATCNeDd=/OVe81DZ~ Q8f ~ OVeRIDet OVERDATA;
Q81ATCHeDi-CNTLTCNf;
%CHANGeS: JANOS,I9a8 DA1e - CR8ATe Fl1E - COPY OF EP900CANIN.ADF %
JA1106,1988 DA1E - HARe CNT1ATCH SYNC HITII C10CR1 IIAR09,1988 DALe - ADD CLOCR3, CORR2CT #INOR 2RRORS
~ARl~,lg88 DAI.E - ADD eoc %
~IAR15,1988 DALE - CNARGR NEHPULSE TO SP8ZD, ADD SPDPULSet SO ALLOH 2DGZ TRIGGER LY SPZeD, NOT LeYE1%
APal9,1988 DA1E - HURE SPDPULSE, CLRF1AG, C10CR2 6 ADD DCNT1TCN,~
% SPDCNTl, SPDCNT2, S.T. 5PE8D lS QUALIFIED 10 OR Hl FOR T~O CLOCR PERIODS~
% ~AYO4,198~ DA1e - ReNOYE DC~T1TCH, CHANGE COIINT RESeT NETHOD
END~

S ?

.~..

~ 3 Ll S ~/~lfG~ ~

I of 3 DALe PEHHeR
S~NTIN~L \IISION INC.
APRIL 13, 1983 1.03 A

P2DAGC.ADF
CAHIN DE?ECTOR FOR De~AULT AGC - PROTO T~O
OPTIONS: TURBO ON
PAR~:eP900 INFUTS:
CLOCRlel ~ froi~ speed control ASlGe2, % froo opto sw on llachine BSIG~3, % fro~ opto s~ on llachine QAe4, CLOCR2e21, % fro~ speed control t Q9e31, STAR~38, % froll ccdctlr cct ~
DATA~39 % fro~ co~parator (active low) %
OUTPUTSI
Q0~5, Qle6, Q2~7, Q3?8, Q4~9, Q5~10, Q6~11, Q7~12, illNDQNel3 NBNCANe16, muee36, N0~35, N1~34, N2e33, N3~32, N~31, N5~30, CANlNt29, AORBe21, AORBDELe26 NET~iORR:
CLOCRl=INP(CLOCBl ASIG INP(ASIG) BSlG=lNP(BslG) QA=INP(QI~) QB INP(QB) START INPISTART) DATA INP(DATA) S~
, .

~ of 3 QO,QOf=~O~E~QOt,CLOCRl,QRST,GND,VCC) Ql,Qlf=TOTF(~Olt,CLOCRl,QRST,GND,VCC3 Q2,Q2f-TOT~Q2t,CLOC~l,QRS~,GND,VCC~
Q3, Q3 f =iOTF I Q3t, CLOCR l, QRST, GUD, VCC ) Q4,Q4f=TOTF(Q4t,C10CRl,QRST,GHD,VCC~
QS,QSf-TO~QSt,CLOC~l,QRST,GND,VCC) Q6,Q6f TOT~(Q6t,CLOCRl,QaST,GND,VCC) Q7,Q7f TOTF1~7t,CLOCRl,QRST,GND,VCC) IllNDOi,NlNDONf=JOJF(llINDOHj,CLOCRl,lllNDO~k,GND,GUD,YCC) RZHCAD,NENCANf=ROR~[NEilCANd,CLOCRl,GRD,GND,NCC~
V2TRU~,V2~RUef RORE(V2TRUEd,CLOCR2,GND,GND,VCC) NO,ROf=TOTY(NOt,CLOCRl,llRST,GND,VCC) ~l,Rlf=TOTE(Rlt,CLOC82,NRST,GND,VCC) N2,R2f-~OT7tN2t,CLOCR2,NRS~,GND,VCC) N3,H3f=TOTE(N3t,CLOCR2,NRST,GND,VCC) N4,Nqf=TOTE(N4t,CLOCR2,NRST,GND,VCC) NS,NS[ TOT~lNSt,CLOCR2,NRST,GND,VCC) CANlN,CANlNf=JOJFlCANIllj,CLOCR2,CANlN~,CANIRRST,GRD,VCC) lOR3,AORaf-JOJFIAORBj,CLOCR2,AORBk,GND,GND,VCC) AORaDEL,AOR~D2Lf ROR~AORBDELd,CLOCR2,GND,GND,VCC~

8QUATIOIIS:
QOt~ Qat QBt/Q7f;
Qlt=Q3ft QA~ QBt¦Q7f;
Q2t=QlftQoft QAt Q9~1Q7f;
Q3t Q2ftQlftQOE~ QAt Q3tlQ7f;
Q4t 03f'Q2ftQlftQOft QAI QatlQ7f;
Q5t Q4ftQ3ftQ2f!QlftQoft QAt QB~lQ7f;
Q6t~QsftQ4ftQ3ftQ2ftQlftQoft QAt QBt/Q7f;
Q7t=QCftQ5ftQ4f~Q3ftQ2ftQlftQof- QAt QBtlQ7f;
QRST=STAR~;
IR8SETS PIIB1 COUNT ~0 2ERO WHEN 3LACR 6 GARBAGE PIIELS IIAVE
~ALReADY PASSED %
DlDDOllj= QOf~ Qlft/Q2ftlQ3ft Q4ftlQSftlQ6ftlQ7f; %OR Q19%
oll~= QOf~ QlftlQ2~tlQ3ft ~4ft/Q5ft Q6ft/Q7f; tO~ Ql9t64t NEDCllld= I AORBDELft /AORBf~
t ( lAORBDELf tlORBf );
V2TRUEd=iilNDODf~lQAt Q~'/DATA; tCHODSe QA,QL TO LINE NI~H DATAt UOt l V2~RUEf'lCANlNf);
Nlt= l V2TRUEf' NOftlCANlNf);
N2t= 1 112TRUEft NOf' NlfllCANlNf);
N3t= I Y2TRUeft NOft Rlft 112ft/CANlRf);
ll4t= I Vl~RUEft NOfl Nlft N2ft N3ftlCANlUf);
NSt= l V2TRUeft NOft Nllt R2ft N3Et R4ftlClRlNf);
NRST REWCAilf;
CAaiNj= ~Oft Illft N2ft N3f' N4f' RSf;

S~
:i~

~ 3 ~

~2DAGC
3 of 3 ~ SeT 0N A COUHT OY 31 V2TRUe IVleH2 CAN DATA)g CANIN~=GND;
CANINRST~NeHCANf;
AORBj= /ASIG t 351G;
AOR9~ IBSIG ~ ASIG
AORBDeLd AORBf;
%~ttttttttttttttttt~t~t CHANGeS ttt~t~tltt~ttlttttttttttt ~
lJAN05, 1988 DALE - CReATE FlLe - COPI OF EP9001NSPD.ADF g ~JAN16, 1988 DAL2 - CHANGe AHATCH TO AORB
%UR15, 1988 DALE - CHANGe A,B TO ASIG,BSIG 4 S~AR16, 1988 DALE - CHANGE FlLeNAHE ?R08 EP900CAN.ADF TO ~2DAGC.ADFt NU~E
S NEHCAN, CHANGe NEHPULSE TO NE~CAN, NU~E B8ATCH %
%~AR23, 1988 DALe - CHAHGE V2TRUE EOR QAIQB TINING 4 %XAR28, 1988 DALE - CHANGE ASIG, BSIG ~OR NEG'V LOGIC
%~PR18, 1988 DA1e - QUALIFY AORBJ ~ AORB~ TO INCREASE NOISE INNUNITY S
e~D$

~, s ~ 5 ~ o~ 2 RIC~ SLAIIXA
58NTINZL VISIOII INC.
reS~UA~ 5,1988 I .00 A

PteNC .ADI
CCD C0NTR0LLER ~OARD DATA ZRC0DER; PROVIDES START=FF, ST0P~00 cHlN~es ~ ~o Fe, oo ro ol OPTlONS:SURaO ON
~ART:EP600 IIIPU~S:
C10CR l ~ l, CLOCR2~13, 55ART~2, STOP~23 D0~4, D1~5, D2~6, D3t7, D~8, D5~9, D6~10, - D7~11, D8tl~ IADC OVER~LO~ DIT~
0~TPDIS:
Q0~3, Q1~22, Q2~21, Q3~20, Q~19, Q5~lg, Q6~11, Q7~16, Q8~15 NET~1021:
START- I NP I SSART) STOP INP~STOP
DO lNPlDU) DI~INPIDI) D2 1NPID2) D3~1N~(D3) D~ INP(D~) DS INPIDS) D6 1NPID6) P7 1NPI D1 ) DB lNPID8) CLOCRl~INPIC10C~l ~
CL0CR2 INPICL0Cl2) QO=RONFIgOd,CLOCXl,Gl~D,GND,llCC) Ql ROII~IQld,CLOCN2,GND,GllD,VCC~
G l ~ 3 ~

P2~C
2 o~ 2 Ql-RO!l~(Q2d,CLOU2,GND,GND,VCC) Q3=80NF(Q3d,CLOC~2,GND,GND,VCC) Ql=RON~(Qld,CLOCRt,GND,GND,VCC) QS-RONFIQSd,CLOC~2,GND,GND,llCC) Q6=RONF(Q6d,CLOC1~2,GND,GND,VCCJ
Q1 RONElQ1d,CLOC~2,GND,GND,VCC) Q8=RONFIQ8d,CLOCll,GND,GND,VCC) EQOATIONS:
QOd= ( DO~/DI ilSTART~ ISTOPI
~(DO~ID2~l5TaRTt/STClP) tlDOtlD3t/START~/STop) tlDOt/D~tls$ARTtlsTop) tlDotlDstlsTA8T~lsTop) tlDOt/D6tlsTaRTtlsTop) IDOt/D7tlSTlRTt/STOPJ
tST18T;
00H changes to 02H via Q2d, FFH changes to ~EH via Qld Qld=l/DOt/DltlD2tlD3'1DI'/DStlD6'/D7t/sTART'/STOP) t(Dlt/ST~RTt/STOPJ
ISTART);
Q2d=1D2'1STZ~RT'ISlrOP
+ ISTARS);
Q3d ID3t/STA8T'/STOP) t ISTAR'~);
Q~d=lD~tlSTaRTt/S~OP) I START);
Q5d=lDS'/SIARTtlSTO~) t ISTART);
Q6d ID6tlSTARTtlSToP) tl5TART);
Q7d=1DltlS~ARTtlSTOP) ISTAR~);
Q8d D~; lADC OVERYLON ~IT ilSSeD THRO~GII ~O ~OTHEQPOlRDl e~iDS

~ of 3 RICI; SLA11~A
SeNTIN~L ~ISIOR IHC.
30, 1988 I .~0 ePsoo P2~
TA~I SRANS~I~TeR CONTROLLeR EOR ~ROT02 HeAD, OHe OR TNO HEAD OPERATION
OPTIONS:SURBO ON
PlRT:2PgOO
I NPU~S:
tDose: SRIS DEVlCe SZNDS eACH HCADSES DATA SEPARASELI IN DUAL IlODel SAXlCLlil Pl, SAXICL~2~21, TAXICLI3~2R, eOS~II, Ipulse ftos CCDCOHTROLLeR I
STARS~13, l~ulse koc CCDCONTROLLeR 1 SSOP~I~ Ipulse fro~ ccDcoNTRoLLeR loading O s in datal Do?31l ILSD of data dropped in 8 bit ~lII aode~
D1~38, D2~39, D3~19, D~18, DStl ~, D6~, D7~3, )HSR oi data3 D8~2, 10 headsetO I headsetl3 NENCAROp2~ Ithis ~ulse is produced by the slot sYitchl IOR2~22, 1hi single fi~o lo dual fifo sl HODe~23 Ihl 9bit ~-isssion, lc 8~it ~sissionl OUTPUTS:
STARreD~ll, SSR~ENP16, S5RD~lS, RSTCAR~27, 1ClRSURES Ne~CANO SO IHlTlATe RST SZQUeNCE1 RSTPENt26, ISeCOHDAR~ SICH 0~ RSS TO SCAN IHIT SeQU2NC21 COH0~25, SlEROlt35, 1AC~ll'e NICH, 1~12RT2D LlT~RI
~IERD0~36, lACS111e IIIGH, INVeRTED 1A~ERI
EIERST~9, 1ACTI~1 NIGH, IHNeR~D 1AT2R~
DASALCH ~ S, DIAGLCH~6, ENODllG~1, ENIDIAG~B, RDSELP31, Q0~33, Q1~32, Q2~31 ~3 .. ~
,, p2I~se~
~ of 3 Ne~O~6:
CLOCII INPITlIIICLRl) CLOCR2=lHPITA~lCL62) SAJ;lCL~3 1NPITl~lCLi3 STOP INPIS~OP) eos=lNPIeosl STAR'r INPISSART) DO INPIDO) Dl IHPIDI) D2 1NPID2) D3 1NPID3) D~=lNplD~) DS IHPIDS) D6 1NPID6) D7=l!lPID7) D8 1NPID8) NeHCANO lNPINEDClNO) IDR2 1NPllOR2) llODE lNPIllODe) STRBeN,S~ROeNf TO~EISTReENt,CLOCl~l,GND,GND,VCC) SSARTeD,SSART~Df=ROR~IYCC,SSARTCLll,STARTCLR,GND,VCC) STARTCL~ CLlB15TOP) STR3=CONrlSTRSi,VCC) COXO=RONrlCOHOd,Cl,OC62,GND,GND,VCC) ~I~RDI CONrlrlrRDli,YCC) rl~RDO COII~IElFRDOi,VCC) ~I~RST,EI~RSTl COIFI rl rRSTi,YCC) RSTCAP,RSTCAPf ROR~IVCC,RSTCL6,RSTCLR,6ND,YCC) RSTCL6=CL1ielNe~CANO) RSTP2H,RSTPeNf ROR~IVCC,teNCLl,RSTCLR,GND,YCC) PeNCL6=CLRDIPeNRST) DATALCII=CON~IDATALCHi,YCC) ENODlAG RON~IENODlAGd,CLOC61,GND,GRD,VCC) ZNlDlAG=ROH~(2NlDlAGd, CLOC61 ,G~D,GND,VCC ) QO,QOE TOTYIQOt,CLOCl2,GND,GND,YCC) Ql,QIl TOT~IQlt,CLOC62,GND,GND,l/CC) Q2,Q2f TOT~102t,CLOCR2,GND,GHD,VCC) DlAGLCH,EOCE-JOJF(EOCj,CLOC61,eOC~,GHD,GHD,YCC) RDSeL,RDS2Lf ~OSFIRDSELt,CLOC62,RDSeLCLR,GND,VCCJ
eQUA~lONS:

STRBeNt l QOl'lQlf'/Q2f~1STRBENf'/RSTPENl) IS~Re AND FIFRD DISAPLED OH RESESI
tl/DO'/DI'/D2'/D3'/DI'/DSt/D~'/D1'/Dâ' STR8ellf~ ~OCE' aOD2~ IOR2) ~. .

~ ~3~

P2~HTse2 of 3 ~I ID1'lD2'lD3'lD~'ID5'/D6'lD7'lD8' STRBelll' eOCf'lNODI' IOR2) tl/D0~/DII/D2l/D3t/D~I/D5~¦D6t/D7~ D8~ S~R3ellf~ eOCf~ HODe~llOR2l 1 /DI~/D2'/D3~/D~/DS~/D6~/D7~ D8~ STR3eN~t eOCf~/NODZt/10R2);
~STR3 IND EIFRD STCP ON 10CAL O ~OR SINGLE HODE, I
OII REIIOTE teRO ~OR DUAL HODZI

QOt l/EOCf ) tlQof~eocf);
Qlt llEOCf'QOf~
ilQlf~OCf);
Qlt [/EOC~QOf tQlf - [Q2~eocE);
eocj QOf' QlE' Q2f;
EOC)~ STARTeDf;
SIARTCLR QOlt Qlf'lQ2f;~G11TCHeS ClN OCCUR aUT SH0ULDN T BE A PRO3LEIII
CO!lOd I/EOCft QOf'/QIl'lQ21) lleocf~/Qof~ Qlf'/Q2~1;
~DRIVZS COII S ON TAII,DENOTES COIIING OF DIAGD1TA) ,, STRBi /TAIICL13~5TRaEHf ~
~I~RDII RDS2Lf~lTAIICLI~3t STRBENE~ EOCf;
~I~RDOi lRDseLf~lTlxlcLR3~ sTRaeal~ eocf RDSeLt l/RDSE1f~eOCf~ STRBENf'llOR2 I/D0~tDI~/D2~1D3~/D~/DSt/D6~/D7~/Da~ XODE) +I/RDSELE'eOCl' s~rR~e~f~lloR2 ~/DI~/DI~/D3~/D~/DS~ID6~ID7~ID8~IllODe);
RDSeLCLR STOP;
RSTC1R 2STPENf' START; 1CLR ~OR RSTCAP AND RSTPeNl FI~RSTi RSTPeNE' eos; IACTIVB HIGH,INYERTED LATeR~
PeHRST RSTCAPf' SIOP; ICLOC1~ IOR RST PeN~
D1TALCIIi ~A~ICLI~3;
eNODlA~d l QOf' Qlf'/Q2f) ~l/QOf-/Qlft Q2f~;
IlllDllGd l QOf'/Qlf' Q2f~
~1/0~' Ql~' 0-2f~;
END~

' :,:

~ ~,. ... .

~ ~.3 L l Sl/~`/G

of 3 RICR SLANRA
SENTIN3L VISION INC.
P2RCVSER, NARCH 14, 1988 1.00 A

P2RCVSeR ADF
TAXI DATA RECEIVER, Se9UENTIAL NON-IRI~LACED SChNS IN DUAL HODE
OPTIONS :TUR80=ON
PART: ~P900 INPUTS:
use THIS DEVIC3 HITH P2I~TSER ~IHeN OPeRATlNG IR DUAL HOD
DSTRBI Ql, ~0~2, Dle3, D2Q4, D3el7, D4~1S, DSQlg, D6e39, %DATA llSB~
D7Q38, %DATA HEADSZT TAG BIT~
D8Q37, 8DATA LSB, DROPPZD ilHZN TAXI IN 8 BIT IlODE
DSTRB2 t21, DSTRB3Q22, VLTI~Q23, ~TAGS POORL~ R80EIVED DATA~
CSTRB~14, ~USED TO SUPPLEHeNT DSTRB DURING VIOLRATIONS~
NODE~24, 3HI=9BIT HODe, LO=8BIT NODe3 lOR2Q25, ~NI FOR LOCAL ONLY, LO FOR DUAL HEADSET RECENIONS
COQ36, C1~35, C2~34 OUTPUTS:
Q0~5, Qle6, Q2Q7, Q3~8, Q41!9, Q5@10, Q6tll, Q1~12, Q8QI3, DATOL~15, ~LATCHES HEADSETO DATA ONTO 10CAL APP 13ust DA~lL~16, ~LATCHeS HeADSZTl DATA ONTO RI~NOTe APP BUS~
DIAOL~26, ~LATCHZS HEADSETO DIAGNOSTICS3 DIAlLt27, ~LATCHeS HeADSETl DIAGNOSTICS~
DA~CLR~28, ~JIIIES CSTRB AND DSTRB TO PReSERYe DE~UX DURING V1TN~
COUNT0~33, COUNTle32, CONRST~31, ~oce30, COHeNe29 ~DISTIRGUISHES BZTH~EN DIAG AND DATA%

GG
.. .
.~ . .

~ 3~ 3~

P2RCVSeR
a of ~

RETHORR:
DSTR~l=INPIDSTRBl) DSTRB3=INPIDSTRB3) DSTRB2 - I NP ( DSTRB~ I
CSTRB=INRICSTRB) DO=INP(DO) Dl-IHRIDl) D2=IN~ID2) D3=lN~ID3) D~=INP I D~ ) DS=INPIDS) D6=lNPID6) %DATA NSBS
D7=IOPID7~ ~DATA HZADSET TAG BIT~
D8=INPlD8) ~DITA LSB, DROPPED llHEH TAII IN a DIT NODB%
VLTN=IN~IVLTN) ~TAGS POORLY R3CEIVED DATA~
HOD3=lNP~llODE) %HI=981T llODB, 10-8BIT HODE~
IOR2=INPIlOR2~ %HI FOR LOCAL ONLï, LO FOR DUAL HEADSET RECZPTION~
CO=INPICO) Cl=INPICl) C2=INPIC2) QO=ROllFIQOd,DSTRBl,GND,GND,VCC) - Ql=RONPIQld,DSTRBl,GND,GHD,YCC) Q2=80NFIQ2~,DSTRBl,GND,GND,VCC~
Q3=RONFIQ3d,DSTRBl,GND,GND,YCC) Q~=RONFIQ~d, DSTRBI ,GRD,GND,VCC ) Q5=RONF(QSd,DSTRBl,GND,GND,VCC) Q6=RONFIQ6d,DSTRBl,GND,GND,VCC) Q7=RONFIQ7d,DSTRBl,GND,GRD,VCC) Q8,Q8f=TOTFIQ8t,DSTRBl,GND,GND,VCC) DATCL~,DATCLl~f=COIF(DATCLRi,VCC) DATOL=COHFIDATAOLi,VCC) DATlL=CONFIDATAlLi,VCC) DIAOL=CONFIDIAOLi,VCC) DIAlb=CONFIDIAlLi,VCC) COIINTO, COUllTOf =TOTF ( COUNTOt, DSTRD2, GND, GliD, VCC ) COUNTl,COUNTlf=TOTF¦COUNTlt,DSTRB2,~HD,GND,VCC) eOC,eOCf=TOTF(EOCt,OSTRD2,GRD,GND,VCC) COHRST,CONRSTf=ROR~lCOHRSTd,DSTRB2,GND,GND,VCC) CONBR,COHENf=RORF(VCC,CONCLR,COHCLR,GND,VCC) COHCL11=CLRL(COHCLRi) EQCATlOaS:

QOd=1/11LTNt D9t DOt/CONENft NODE) %ORLï IF DATA IIOT 01 IS QO AL10~ED TO BE HI6H~
+(/VLTN~ D8t Dl~/C0118Rft NODE) +I/VLTNt D8t D2t/CONENf~ ~OD~) +(/VLTNt D8t D3t/COH3Nft NODE) tl/VLTllt D8t D4t/COH~Nft NODE) ~7 ~.

~. 3 ~

P~RCVSER
~ of3 +I/VLTNt D8t DSt/COHEHft MODR) +(lV1TNt D8~ D6tlCOllENft IIOD2) tVLTNt/CONENf;
Qld=(lVLTNt D8t/DOtlDl~lD2~ID3t/D4t/DSt/D6t/CONENft 13ODE) t(lV1TNt DOtlCONENf~; ~01 CHANGED TO 02 IN 9 LIT DATA HODE~
Q2d=/VLTN~ Dlt/CONZNf;
Q3d=/VLTHt!)2tlCONZNf;
Q4d=lVLTN~D3t/CO~EHf;
Q5d=lVLTNiD~tlCOllENf;
Q6d=lVL~NtD5~lCOtiENf;
Q7d=lVLTNtD6tlCO~lENf;
Q8t=( QBft COHENf) +~/Q8ftlV1TNt DOt DlI D2~ D3t D4~ DSt D6~ D1);

DATCLRi= DSTRD3 t CSTR~; %CSTR~ ADDZD TO PRESERV8 DBHUX DURING VLTN~
DATAOLi=( EOCfl DATCLRft/Q8ftl10R2) ~DUAL H2ADSET NODB4 tl 80Cf' DATCLRft lOR2!; %SlNGLElLOCAL) HEADSET 11ODE~
DATAlLi= EOCft DATCLRft Q8ftl10R2; ~DUA1 HEADS8T !IODE%

DlAOLi=( COHEDf t D5TR~3tlVLTRLID7~;
DlAlLi=( CONENft/lOR2t DSTRU3tlVLTNt D71;
COMCLRi= COt Clt C2tlVLTN; ~COM LINES GOING HI DBNOTeS SThRT OF SC~N~
COI~CLR= CO~RSTf, %END OF DIAGNOSTICS%
CONRSTd=/COUNTOfi COUNTlf; ~END OF DIAGNOSTICS~
COUNTOt= ( IBOCf ) ( EOCft COUNTOf~;
COUNTlt=(/EOCft COUNTOf) t( EOCft COUNTlf);
EOCt=( ZOCftCOllZNf) +(/ZOCft COURTlft COUNTOf);

ENDS

. -.

~3~3~J~ ~
S f l~J~ g P2T~BAP2 / of 4 RICR SLAllRA
SENTlNeL VISION INC.
NOV 27, 1987 CHAllGeS:DALe DEC15,19g1- CHANGE STRTSOl; S
1.00 A

P2T~BAP2 AD~
UUFFER TO APP INTZRFACE SECONDARY (DATA~ CONTROL1ER, DE!IULTIPLEXER
OPTIONS :TURaO=ON
PART: eP900 I NPUTS:
CLRl~l, CLR3 ~2, CL~2~21, eNADLE~3, ll~iiPAR~4, D0~17, Dl~lB, D2~19, D3~22, D4~23, D5~24, PCNTRCH~29, D6 ~37, D7 t3g, D~39 OUTPUTS:
FFDET~5, 3FF=START%
ERD2T?6, ~ 01 -ERROR~
ERDeTRGt7, 301-eRROB~
A51451N~B, D51451~9, C57~51~10, D57~51N~ll, LATCHIN~12, YYDeTRG~13, FIYSOl~ 14, Y1~502~15, SSRTS01~16, S5RTS02 ~25, p~S~26, ~osi27, PSTART~28, PCllTCLRt30, Q1~31, Q0~32, D~LC3~33, DeLC2 ~34, P2~1P2 ~ of 4 DELC1~35, D8LC0~36 R2TNORg:
CLRl=IHP(CLRl CLR3$1NP(CLR31 CLg2=lNPlCLR2) ENA9Le-lHPIeNA~LE) DO=INP(DOI
Dl INP(DI) D2=111P(D2) D3 -IN~ ( D3 1 D4=lNP[D4) DS=INPIDS) D6=lRP (D6 ) D7=lNP(D7) D8~lHplD8) NENPAR INPlH~8PAR) PCNTRCH INPlPCNTRCH) FFDETRG,PFDe?RGf RORF(FFDeTRGd,CLRl,GND,GND,VCC) %FF=START~
FFDET,FFDETf-COlF(FPD2Ti,VCC) ~FF=START%
ERDET,ERDETf COlFlERDETi,VCC) ~01-ERROR%
ERDETRG,ERDETRGf RORFlERDETRGd,CLl~l,GND,GND,VCC) A574SlN CON~(A57451Ni,VCC) L574SIN CONFlB574SlNi,VCC) C574SlN=CONF(C574SlNi,VCC) D51~SlN CONF(D574SlNi,VCC) LATCHlil,1A~CNlNf RORF~LATCHIRd,CLgl,GND,GND,VCC) ~IYSOl-ROHFIFlFOSOld,CLRl,GND,GND,VCC) FlFS02-RONY(FlFOSO2d,CLRl,GHD,GND,VCC) STRTSOl,STRTSOlf JOJFlS~RTSOlj,CLRl,STRTSOlk,GND,GND,VCC) STRTSO2,SYRTSO2f JOJF(SYRTSO2j,CL~2,STRTSO21~,GND,GND,VCC) PCLR CLRB~LATCHlNf) DELCO,DELCOf SOTF(DELCOt,PCLR,PCLR,GND,VCC) DELCl,DBLClf TOTF(DELClt,PCL~,PCLR,6ND,VCC) DeLC2,DeLC2f=TOTFIDELC2t,PCLR,PCLR,GllD,VCC) DELC~,DELC3f-TOTY(DELC3t,PCLl,PCLR,GND,VCC) Q0,Q0f-TOT~(Q0t,CLI2,6ND,6ND,VCC
Ql,Qlf TOTF[Qlt,C1I2,GRD,GRD,VCC) PCHTCLR RONFIPCNTCLRd,CLR2,GND,GND,VCC) PS~ART,PSTARTf JOJFtPSTARTj,CLN2,PSTART~,GND,GND,YCC) 80S RONFIeOSd,CLl~,GND,GHD,YCC) APPRST$RDNF~I~PPRSTd,CLI2,GRC,l;ND,VCC) PQUATIONS:

7~ -~ .
.

~ ~ ~ 3~
, P2T~BAP2 ~of 4 ~DETRGd= DOt Dlt D2t D3t D~t DSt D6t D7; ~i D3;~
t~ START~
E~DeTi= DOt D1t D2~ D3t D4t DSt D6t D7; ~t D3;1 ~=START~
ERDBTi= DOt/Dl~lD2tlD3~1D4t/D5t/D6tlD7; it D8;~
%OI=ERRORS
ERD8TRGd (DOt/DltlD2tlD3tlD4tlDStlD6tlD7J~ ~ D8%
t( D~tl~E~pAR) tllD8t NEilPAR);
~01 OR PARIT~ ERRORS DZ~ECT2D TO DlSAeLZ APP LOADUP~
Q~t= (PSTARTf I
sTAR~ft g~;
Qlt=lPSThRTf'QOf ) t(/PSTARTft Qlf¦;
DELCOt=PSTARTf;
DE1Clt=PSTARTftDELCOE;
DB1C2t=PSTARTf~DELCOftDeLClf; ' DELC3t=PSTARTf tDELC~f tDeLClf tDELC2f;
PCLR=/PSTARTf;
A574SlNi=llQOft/Qlft PSTARTfitCl,R3t/~RDeTRGfl tllQOft/Qlft PSTARTft/CLR3t/2RDeTRGf);
B57~SINi=1 QOf~/Qlft PSTABTf~/CLlt3t/eRDeTRGf) +l ~pftlQlft PsT~R~ftlcL~3tl~RDzTRGf);
C$1~51Hi=(/QOft Qlft PSTARTft/CL1~3t/ERDETRGf~
+(/QOft Qlft PSTARTft/CLI;3t/ERDeTRGfl;
D5715INi=( ~Oft Qlft PS1'1lRTft/CL~3t/~R~TRGfl ~ QO~t Qlf'~ PsTARTf'lCL13~1~eT~f~, LlTCllllld=~/Q~f~ Qlf) +I QOft Qlf);
STRTSOlj= /DeLCOftD~LClft/DeLC2ft/D~LC3f;
STRTSO11~=/PST.4RTf;
SSRTS02; DE1COf~ DELClft DELC2Et/DeLC3f;
STRTS021~=/PSTARTf;
~I~OSOId=ll(STRTSOlft/QOf~ Qlf) '? /

~3 ~32!~

s~of tIsTRlsolE' QOf' QlfI);
%~1~050 IN ~HASe NIIN LATCNIN TO AVOID STAGGEReD DAC GLITCIIES%
YIF0502d=/IlSTRTS02ft/QQf~ Olf) +~STR~S02ft QOft Qlf));
%FI~OSO IN PHASE NITH LATCIIIN TO AVOID STAGGER8D DAC GLlTCHeS~

j=(eNA~LEt~FDeTRGftl~FDeT~tleRDETE) ~t ~E~IPARt D8)~
tleNA~LEtFFDETRGftlFFDETftlERDeTf); ~tlReNPARtlD8);%
~SCIN LOADIN TO APP PROCEEDS ONLY UNDeR THE CONDITIONI
~THAT a T~ANSI?ION FROR FF TO YALID DlTA IS HADE~
YSTARTI~= I tPCNTRCN ) tllDOtlD1tlD2tlD3t/D~t/DSt/DStlD7) ~ID8)1 ~ ( IENALLE );
EOSd= IPCNTRCH;
~ODL~ NH2N THe CORRECT RU~BER OF PIXeLS NAVE BEeN 10AD2D~
IHI1L AN eos ee GIVER ~0 ALLOil A LOADOUT OF VALUES FROlt %
)THe APP TO THe INTeRFAC~
APPRSTd PCN~RCH; tlNVERSZ OF eos DUE TO ON BOARD INVERTER~
PCNTCLRd=IPSTlRTf;

ERD$

-~: 7~

L/s~/~ q~ L 3 ~ ~ ~J ~

~ of 3 NADER RlaHI ~1~ ~) SeHTlllEL VISION INC.
NOV 1, 1988 I .0~
A

ePsoo DIGITAL CONTROLLER EOR THE APP/R lV-l). PBOTOII - PINOUT DI~ERS
OPTIONS: TUR80 ON
PART:eP900 INPU~S:
CLOCI~
CLOCl~t~ll, P~CLOC~t3~, COHPA~2, CO!IP9~3, eeAD~, ~ENI19L2~39 O~PU~S:
Si'ARTtS, S~OP~6, ENCONT~7, SQ0~15, SQI~
- SQ2~13, SQ3~12, SQ~
SQ5~10, SQ6~9, SQ7~8, SIOPENI! 16, S~ARTE~25, STARTL~ 36, STOPLQ35, ~Q0~26, IIQ1~27, IIQ21!21~, NQ3~29, 31Q~30, IIQ5~31, IIQ6~32, IIQ7~33 NETliORR:
C10Ci~l lIQ~CLOCHI

CONPA IIIPICOHPA~
COIIPB INPICO~PB~
H21D IHPIHe~lD]
P~CLOCI;-INPIP~CLOC1 lleHABLE INPINellABL
STlRT,SSI~RT~ RORFISTARSd,S~ARTc,CLEAR,GHD,\1CC
STARSc CL~9(S~ARTil ~3 ~- ' . . ..
.. .

~ 3 ~

P2DGC~I
æ of 3 STOP,SlOPf-RORFISIOPd,SlOPc,C1eAR,GNO,VCC
S~OPc Cll~lS~O~i~
eNCON~,ENCONTf RORFIeNCOHTd,CLOCl~l,CLeAR,GND,VCC) SQO,SQOf TOTFISQOt,CLOC~l,CL~aR,GND,VCC) SQl,SQlf ~OTFlSQlt,CLOC~l,CLEAR,GND,VCC) SQ2,SQ2f ~OTFISQ2t,CLOCll,CLeAR,GND,VCC) SQ3,5Q3f ~0TFISQ3t,CLOCRl,CLeAR,GND,VCC) SQ~,SQ4f-TOT~1sQ4t,CLoc~l,CLeAR,G~D, vce ) SQS,SQSf lOTFISQSt,C10Cl~l,CLElR,GND,VCC) SQ6,5Q6f TO?FISQ6t,CLOCRl,CLEAR,GND,VCC) SQ7,SQ7f=TOTFISQ7t,CLOCll,CLeAR,GND,VCC) S~ARTE,SSARTef TOT~ISTARTet,STARSec,CLZAR,GND,VCC) S~ARTec-C1RB(STARTEi SSOPeR,S~OPE~f l`OTF[STOP2Nt,SSOPeNc,CLeAR,GND,VCC
S?OPeNc CLi~BlSTOP8Hi) STARTL RONFISTARTLd,STARlLc,CLEAR,GND,VCC) STlRTLc CLRDISTARTLi) STOPL RONFISlOPLd,STOPLc,CLeAR,GND,VCC) SIOPLC=CL~elSlOPLi) HQO,HQOf-TOTFINQOt,CLOCl~2,CLeAR,GND,VCC) NQl,NQlf ~OTF(HQlt,CLOC~2,CLEAR,GND,VCC) 8Q2,1iQ2f TO~IllQ2t,CLOC1~2,CLeAR,GHD,VCC) BQ3,HQ3E TOT2111Q3t,CLOCl2,CLEAR,GND,VCC) HQ~,llQ4f TOTF(llQ4t,CLOC~2,CLeAR,GND,VCC) ~IQS,NQSf TOTFIllQSt,CLOCg2,CLEAR,GND,VCC) IlQ6,H06f TOTFIHQ6t,CLOCl~2,CLeAR,GRD,VCC) HQ1,NQ7f TOTF(NQ7t,CLOC!ll,CLeAR,GHD,VCC) 2QCATIONS:
SSARTd~S~ARTef, S~ARTi=CO~PA;
s~O~d=S~OPe~f;
STOPi=CODPP;
SlARTet 11 HQOf' HQlf' HQ2f' HQ3f~1HQ4f'1HQSf'lHQ6f'1HQ7f'/HEAD) t()HQOftlHQlft NQ2f~1HQ3E~ HQ4f'1HDSf'lHQ6f'1NQ71' HEAD)) 'IS~lRTef, ~15 AND 20~
STARTei=tP~CLOCII;
STOP2Nt 11 SQOf~ SQlftlSQ2fttsQ3ftlSQ4f^ SQSf'/SQ6ftlSQ71~1HEAD) ~1 SQOf'lSQlf' SQ2f'l5D3fil5Q~f' SQSft1S~6fZ1SQ7f' HeAD)) '15TOPeNf; )35 AND 371 STOPENi IP~lCLOCl;
ERCO~d STARTf;
S~ART1d=~STARTf~
Of' DQlftl~Q2~'11l93S'fDQ4f'1NQSf'lllQ6f'111Q7f);
STARTLi 1PXC10C~;
ST5PLd ~ST0~5) l NQOf'lHQlf' HQ2ft HQ3f~ NQ4f' HQSf' HQ6f'1HQ7f);
STOPLi lPICLOCg;
CLEAR-NeNA~LE;

7~

. . .

~ 3 1 3 2 ~ O

_ of 3 SQ0t ZNCONTf;
SOlt eNCOHT[tSQOf;
SQ2t=ENCOllTf'SQOftSQlf;
SQ3t ENCONTf'SQOftSQlf'SQ2f;
SQ~t-eNCONTf'SQOftSQlftSQ2ftSQ3f;
SQSt=ENCONTf'SQOf'SQlf'SQ2ftSQ3fl5Qif;
SQ6t 2HcoN~f'sQoftsQlftsQ2ftsQ3ftsQ~ftsosf;
SQ7t=eNCONTf'SQOftSQlftSQ2ftSQ3ftSQ~ftSQSft~Q6f;
NQOt~/NeNABLe;
NQlt /1(211AeLEtHQ0f;
NQ2t /HeHlaLE~HQOf'BQlf;
11Q3t /HENABLEtHQOftNQlftllQ2f;
I(Q~t /NeNABLZ'NQOftHQlftNQ2ftHQ3f;
NQSt /N2NABLetNQOftNQlftNQ2f~NQ3ftHQlf;
IlQ6t /NENABLEtllQoftllQlftllQ2ftllQlf~llQ4ftNQsf;
IlQ7t /NENABL2'llQoftNQlftNQ2f~NQ3ftllo4f1NQ5f~HQ6f;
E~D$

?~
.. . ~

~3~J~'~
~57/~lG5 ~b ~ o~3 c~ w ~
NADeR RIAHI
SeNTIHEL VISION INC.
IIOV 1, 1988 1.00 A

DIGITAL CON~ROLLEa ~OR TNE APP/R, IV-21. PROTOII - PINOUT DIEEEaS
OPTIONS: SUR30 = ON
PART: EP900 INPUTS:
CLOC~
CLOCR2~21, P~;CLOCR~33, CO~PA~I, CONP3~3, HEAD~4, NENABLE ~3 9 OUTPUTS:
START~5, S~OP~6, ENCONT~1, SQ0~15, SQI~
SQ2~13, SQ3?11, SQ~
SQ5~10, SQ6~9, SQ7~8, slrOPEN~16, STARTE~25, -STARTL~ 36, S~OPLQ35, I~Q0~26, IIQ1~21, IIQ2~28, ~Q3~29, KQ~Q30, HQSt31, NQ6~32, liQ7~33 RETIIORR:
CLOCR1=INP(CLOCNl ) CLOCR2~1NPICLOCR2 COIIPA INP~CQNPA) CONPB=I NP I CONPB ) HelD IRPIliElD) P~CLOCR INPIPICLOCR) ItENABLe INP~IIENADLE) S~ART,S~lRTf ROREISSARSd,STARTc,CLElR,GND,YCC) STARSc CL~B~STlRTi) .
..

~J'~J~

7 of 3 STOP,STOPf ROR~ISrOPd,SiOPc,CLEAil,GND,VCC) STOPc=eLR~ISlOPi) ENCONS, eHCON~f=RORF(eDCONTd,CLOCXl,CLEAR,GND,VCC
SQO,SQOf=TOT~ISQOt,CLOC~l,CLElR,GND,VCCI
SQl,SQlf TO~FISQlt,CLOCRl,CLeAR,GND,VCC) SQ2,SQ2f TOT~ISQ2t,CLOCl~l,CLEAR,GRD,VCC) SQ3,5Q3f=TOTFISQ3t,CLOCRl ,CLeAR,GND,YCCI
SQ4,5Q4f=TOTFISQ4t,CLOC~l,C1eAR,GND,VCC) SQS,SQSf TO~ISQSt,CLOCll,CLeAR,GND,VCC) SQ6,5Q6f=TOTY(SQ6t,CLOC~l,CLEAR,GND,YCC) SQ1,5Q7f T0TF(SQ1t,CLOC~1,CLZAR,GND,~lCC) - STARTC,SSlRTEf IOTFISTARTEt,STARTec,CLeAR,GaD,VCC~ S~ARTec=CLRLISTARTEi) STOPEN,570PeNf=TOT~STOP811t,STOPENc,CLEAR,GND,VCC) STOPeNc-Cl~B(S~OPeN~) STARTL RON~ISTARTLd,STARTLc,CLEAR,GNb,llCC) STARTLc CLR~ISTARTLi) STOPL RON~ISTOPLd,STOPLc,CLEAR,GND,VCC) SIOPL~ CLRSIS~OPLi) HQO,MQOf'SOTYI~lQOt,CLOCl~2,CLeAR,GND,VCC) NQl,HQlf ~OTFIllQlt,CLOCR2,CLEAR,GND,VCC) HQ2,11Q2f=~OTFIRQ2t,CLOC~l,CLeAR,GHD,VCt) ;IQ3,HQ3f=TOT1'1HQ3t,CLOCR2 ,CLeAR,GaD,YCC) HQ4,11Q4f=SOT~IllQ4t,CLOCR2,CLEAR,GND,VCC) HQS,HQSf TOT~(llQSt,CLOCR2,CL8AR,6ND,VCC) HQ6,HQ6f=TOT~[llQCt,CLOCR2,CLEAR,GND,VCCI
NQ7,11Q7f-TOT~(HQ7t,CLOCR2,CLEAR,GND,YCC) BQOATIONS:
STARSd STARTEf;
S~ARTi~COllPA;
STOPd=STOPENf;
s~oPi=coHP~;
START8t=1~ UQOf'/NQlft/llQ2fl/llQ3ft HQ~f~tHQSft/NQ6E'IHQ7ft/HeAD) (/HQ0f' tlQ1f'/HQ2ft IlQ3f'/HQ4f'/llQSft/NQ6ft/HQ1f~NeAD)) t/STlRTEf; ~17 AND 10i STARSei=/P~CLOCR;
sroPeHt=ll/sQoftlsQlftlsQ2ft SQ3f'/SQ~ft/SQSft SQ6ft/SQ7f~/NEAD) ~ ( SQ0ft SQIf~ SQ2ftlsQ3ftlsQ~ftlsQsft SQ6f'/SQ7f' NEAD)) . ~/S~OP8Nf; ~72 AND 7lI
STOPeNi /PICLOCl~;
BNCONTd S~ARTf;
STARTLd ISTARTf) ~ (/NQOf~ IlQ1ft/1iQ2ftI~Q3ft/NQ4f'/HQSf~/NQ6f~/HQ7f);
STARTLi=/PliClOC~;
STOPLd-(S~DPf ~
~ (IHQ0ft/HQlfI HQ2f' HQ3f' NQ~f~lQSf' HQ6fl/llQ7f);
STOPLi /PXCLOC1l;
C1EAR ~eNA9Le;

, . .
' ' ''.' '' ' ~IDGCR2 _ o~ 3 SQ0t=eNCONTf;
SQlt ENCONTf'SQ0f;
SQ2t=ENCONTE'SQ0f'SQlE;
SQ3t ENCONTf~SQOf'SQlf'SQ~f;
SQ~t=ENCONTftSQOf'SQlf'SQ2ftSQ3f;
SQSt=eNCOHrftSQOf'SQlftSQ2f~SQ3ftSQ4f;
SQ6t=eNCONTftSQOf~SQlf'SQ2f'SQ3f~SQ4EtSQSf;
SQ7t=eNCONTf~sQOf~sQIf~sQ2f~sQ3ftsQ~ftsQsf~sQ6f;
UQOt=/H2NA3Le;
NQlt=/HENABLEtNQ0f;
NQ2t=/NeNABLe'NQOf'HQlf;
UQ3t=/UeRA9Le'HQOfiNQlffllQ2f;
NQ4t=/NeNABLe'MQOf'NQlf!NQ2ftMQ3f;
NQSt=/NENABLe'NQ0f'8Qlf'NQ2f'MQ3f'HQ~f;
HQ6t=lNeNAaLet~lQoftHQlftMQ2ftl~Q3ftuQ~ft~lQsf;
NQ7t=/8eNABLetMQOf'8QlftHQ2ftUQ3f'NQ~EtNQ5f'11Q6f;
EHD$

7~
~ .

~ : .

~ ~L3 i~
L~rlJJ~ ~c C~ J 3) PlDGCR3 NADER RIAHIIJAHeS NONG
SeNTINEL VISION INC.
NOV I, 1988 /JAN 5, 1989 A.OO

DIGITAI, CONTROLLER FOR THZ APPIR IV-3I. PROTOII - ~IIIOUT DIFF~RS
OPTIONS: 1URaO = ON
PART:eP900 INPUrS:
CLOC~
CLOCH2~21, PZC10CRt38, CONPA~, COXP8~3, HeAD~4, NeNAaLE~39 ou~Purs:
SrlR~S, SIOPt6, ENCONTt7, SQO~15, SQ1~
SQ2~I3, SQ3~12, SQ~
SQ5~IO, SQ6~9, SQ7~, s~o~eN~16, S~ARTet25, SSAR~L~ 3C, SIOP1t35, NQG?26 ~IQI~27, H92~28, #Q3~29, ~Q~30, llgS~31, ~Q6~3t, ~Q7~33 NE~IjORI:
CLQC~1=INP~CLOCNI ) CLOC12 INPI CLOC~2) COXYA I NP ( COXPA ) COHPa INPICO) IIEAD INP~NEAD~
PICLOC~ I NPIPICLOCH) NeNABLe lNPIN~llAaL~) SJAR~,STARTf ROR~ISIARTd,STARTc,CLeAR,GNDtYCC
STARTc CL11BISTlLRTil .. . .

, . . .

~3~32'.1~

P2DGeR3 .z of 3 STOP ~ STOP f = ~ORf I STOPd, STOPc, CLEAR, GND, VCC ) STOPc-CLRBISTOPi ENCONT,EllCONTf=RORFIENCONTd,CLOCgl,C1EAR,GHD,VCC
SQO,SQOE=TOlF~SQOt,CLOCRl,CLEAR,GND,VCC
SQl,SQlf=TOTE~SQlt,CLOCRl,C1eAR,GHD,VCCI
SQ2,SQ21=TOTF~SQ2t,CLOCRl,CLEAR,GHD,VCC) SQ3,5Q3f=lOTFISQ3t,CLOCRl,CLeAR,GND,VCC) SQ4,5Q4~=TOTEiSQ4t,eLOCgl,CLeAR,GND,YCC
SQS,SQSf=TOTE(SQSt,CLOCgl,CLEAR,GND,VCC) SQ6,5Q6f=TOTFISQ6t,CLOCRl,CLeAR,6ND,VCC) SQ7,5Q1f=TOTEISQ7t,CLOCRl,CLeAR,GND,VCC
STARTE,STARTEf TOTE(STARTet,STARTEc,CLEAR,GND,VCC~
srARTEC=CLX81STARTEi) STOPeR,STOPENf=TOTF(STOPENt,STOPENc,CLEAR,GND,VCC) STOPeNc=CLR9lSTOPElli~
STARTL=RONFISTARTLd,STARTLc,CLeAR,GND,VCC) START~c=CLRalSTARTLi) STOPL=RONFISlOPLd,STOPLc,CLeAR,(;ND,llCC) STOP1c~CL131STOPLi) XQO,HQOf=TOTFIHQOt,CLOCR2,CLEAR,GND,VCC) NQI~îlQlf TOTEINQlt~CLOCl2~CLEAR,GNDlVCCl NQ2,XQ2f=TOT~IXQ2t,CLOCR2,CLeAR,GND,YCC) ~Q3,HQ3f=TOTEIHQ3t,CLOC~2,CLElR,GND,VCC) HQ4,HQ4f=TOrFIHQ~t,CLoCg2,CLZAR,GND,VCC) HQS,NQ5f TOT~INQSt,CLOCl2,CLEAR,GND,VCC) HQ6,HQ6f=TOTFIHQ6t,CLOCg2,CLEAR,GND,VCC~
NQ7,1lQ1f=TOTEINQ7t,CLOCl2,CLEAR,GND,VCC) EQUlTlONS:
S~'ARTd=STARTE f;
S~ARTi=COHPA;
STOPd=SrOPENf;
STOPi=COHP8;
STARTet=l~/HQOf'/NQlft/HQ2ft NQ3Et/llQ4ft HQSft/HQ6f'/NQ7f~/HeADI
t(1HQ0f'/HQlf~/HQ2f~ H03f'/HQ4ft HQSf'/NQ6f'/HQ7f' NEAD)) I/STAR~Ef; ~0 AND ~0~
STAR~Ei=/PlCLOCg;
STOPENt=ll/SQOf'/SQlft SQ2ft SQ3f~/SQ4ft/SQSft/SQ6ft/SQ7f~/NeAD) t( /SQ0f~/SQIft SQ2ft SQ3ft/SQ~E~/SQ5f~/SQ6f'/SQ1ft N~AD)~
t/STOPBNf; 112 JND ll I USE TO L2 13 AND 131 SSOPBNi=/PlCLOCR;
ENCONTd START f;
STAR~Ld=(STARTf) t~/HQOf' NQlftlNQ2ftlHQ3ftlNQ~ftlHQsftl~Q6ftlNQ7f);
SSARSLi=lP~CLOCI;
STOPLd=lSTopf I
tl NQ0ft/HQlf' NQ2ft 11Q3ft NQ~fl NQSf~ NQ6ft/HQ7f);
SSOPLi=1PICLOCI;
CL~AR=IIENA8LE;

.: . . .: , . . , , . :

~3~32~. ~

3 of 3 SQOt ENCON~E
SQlt ENCOH~f'SQ3f;
SQ2t ENCON~f~SQ0f~SQlf;
SQ3t=ENCON'rf'SQOftSQlfgSQ2f;
SQ~t ENCON~f'SQOftSQlf'SQ2f'5Q3f;
SQSt ENCON~f'SQOf~SQlftSQ2ftSQ3f~SQ4f SQ6t=2NCON~f'SQOf'SQlf~SQ2ftSQ3f'5Q~f'SQSI;
SQ7t ENCOH~ftSQOftSQlftSQ2ftSQ3ftsQ~f-sQ5ft5Q6f;
HQOt=lHeNABLE;
H9lt IHENA9LEINQ0f;
HQ2t~1HeNA3LEtHQOf'HQlf;
KQ3t=lNZNABL2'HQ0f'NQlf'NQ2f;
HQlt IHEN~BLB'HQ0ftNQlftHQ2f'HQ3f;
HQSt INeNABLE'HQOf'NQlf'NQ2ftHQ3f'NQ~f;
HQ6t=/lieHA3L2tNQOf'NQlftNQ2f~NQ3ftHQ~ftNQSf;
HQ1t 111EHABLetHQOftHQlf~NQ2ftNQ3f'HQ~f'NQSf~ilQ6f;
~DD$

. ' `

.
.

~ 3 - Ll~ q~
(V 1~ ~J 4) P2DGCR~
/ of 3 NADER RllHI
SeNTlNeL VISION INC.
NOV 1, 1988 1.00 A

DIGI~lL CONTROLL~R EOR THE APP/R (V-lI. PRO~OII - PINOU? DlFFeRS
OPSIONS: TUR30 = ON
PART: EP900 INPU~S:
ClOCI~
CLOC12~ll, P~CLOCI~38, COIIPA~2, CO~IP3~3, HeADt ~, NeNABLEt3g OUTPUTS:
SSARf ~S, S~OP~6, 2NCON~7, SQO~IS, SQI~
SQ2~13, SQ3~12, S9~
SQS~10, SQ6~9, SQ7~8, STOPEN~ 16, STAR5'~25, ~-STA~LI!36, SSO~Lt35, HQ0~l6, 8Q1~27, ~92~28, IIQ3~29, ~Q~?30, IIQS~31, 8Q6t32, llQ7~33 He~O~:
CLOCII=IHP(CLOCI~I ) CLOC~2-lNPICLOC~2) COllr.l=~NP(CO~PA~
CO~PH=I~PICOHPB
H2AD=lNP(HeAD
PXCLOCR INP(P~CLOCII
IlENA~Le IHPIlleNA3L
STARS,S'rllRSf=ROR~5STARSd,STilRTc,CLEAR,GND,YCC
STllR5c=CL1~3(SSAR51I

.. .

, ;?J l ~
, P2DGCR~
æ ~f 3 STOP,SSOPf=RORFISrOPd,STOPc,CLEAR,GND,VCO) STOPc-CLlla(S~OPi) ERCONT,eNCONif RORF(ENCON~d,CLOCRl,CLEAR,GND,VCC) SQ0,SQ0f=T0Tr(SQ0t,CL0C~I ,CLEAR,GND,VCC) SQl,SQlf=TOT~(SQlt,CLOCRl,CLEAR,6ND,VCC) SQ2,SQ2f=TOTE(SQ2t,CLOCRl,CLEAR,GND,VCC) SQ3,SQlf-TOrFISQ3t,CLOCRl ,CLEAR,GND,VCC) SQ4,SQ4f=TOTEISQ~t,CLOCl~l,CLEAR,GND,VCC) SQS,SQSf=lOT~ISQSt,CLOCgl,CLeAR,GND,VCC) SQ6,5Q6f=TO~Y(SQ6t,tLOClll,CLEAR,GND,VCCI

SQ7,5Q7i=TOT~ISQ7t,C10CRl,CL2AR,GND,VCC) STARTE,STARTEf TOTFISTARTEt,STARTEc,CLeARlGND,~CC) STARTEc CL~alSTARTEi) STOPBN,STOPENf TOTF(STOPENt,STOPeNc,CL~AR,GND,VCC) S~OPeNc CL~(STOPeNI) STARTL RONf ( STARr1d, STARTLc, CLeAR, GND, VCC ) STARTLc C111a(5TARTLi) SlOPL RON~(SrOPLd,STOPLc,CLeAR,GND,VCC) ST0PLc CLUE(STOPLi) MQO,HQOf=TOTFIHQOt,CLOC~2,CLelR,GND,VCC) ,, HQl,HQlf=TOTFIMQlt,C10C~2,CLEAR,GND,VCC) HQ2,HQ2f=TOT~llQ2t,CLOCR2,CLEAR,GND,VCC) IIQ3, #Q3 f TOT~ lllQ3t, CLOCK2, CLElR, GND, VCC I
HQ4,HQ4f=TOTFINQ4t,CLOCUl,CLeAR,GND,VCC) NQS,tlQSf TOTFIHQSt,C10CR2,CLEAR,GND,VCC) IlQ6,HQ6f TOTFIllQ6t,CLOCH2,CLEAR,GND,VCC) HQ7,HQ7f TOTFIHQ7t,CLOCl12,CLelR,GND,VCC) 2QUATIONS:
STARTd SSlRTEf;
STARTi=CONPA;
S~OPd=STOPeNf;
s~oPi coHI~a;
STARTZt 11 HQOfttHQlf~ MQ2fl HQ3f'lHQ4f~lKQSf~lMQ6ftlNQ7ftlHeAD) ~(~NQ0f~1Qlf~lNQ2ft HQ3f'1UQ4ftlNQsf~lNQ5ftll1Q7f' HeAD)) '~STARTEf; 113 ADD 10t S'rARTEi IPXCLOC~;
STOPeNt=(l SQof~lsQlftlsQ2ftlsQ3ftlsQ4ftlsQsft SQ6ftl5Q7ft t~ SQOf' SQlf' SQ2f' SQ3f' SQ~f' SQSftlSQ6f'l5Q7ft )IEAD)) 'ISTOPeNf; ~65 AND 63t s~oPelli IPXCLoel~;
eNCON~d STAllTf;
5~ARTLd ~ST3RTf) ~IHQOft HQlf~lKQ2ftlNQ3f~111Q4f'1UQSftlHQ6f~1NQ7f);
S~ARTLi=lPXCLOCII;
S~OPLd= I STOPf ) ~ (INQOft HQlftlHQ2ftlHQ3ftlNQ4f'1NQSftlllQ6f'1HQ7f);
SrOPLi=lPXCLOCI;
CLEAR=NeNla1E;

~3 ~ 3 ~ 3 ~

~2DGCR~
~ of 3 SQOt I~NCONSf;
SQIt eNCON~ftSQOE;
SQ2t ENCONSE'SQOftSQlf;
SQ3t eNCONrftSQ0flSQIE'SQ2f;
sQit eacoNIf~sQof~sQlf~sQ2f~sQ3f;
SQSt eNCONTftSQOf'SQlftSQ2ftSQ3f'5Q4f;
SQ6t EliCON~ftSQOf'SQlf'SQ2ftSQ3f'SQ4f'5QSf;
SQ7t=ENCONsf'SQOftS~lf'SQ2f'SQ3f'SQ~f'SQSf'506f;
HQOt= IIIENAOLE;
HQIt=/HeNlBLetKQOf;
HQ2t /II~HABLe'HQOf'NQlf;
11Q3t=/NENA~LZ'XQ0f tHQIf 'NQ2f;
NQ~t /llENAaLE~NQOf'NQlftNQ2f'HQ3f;
HQSt /lleNABLetHQOf'NQlf'NQ2f~NQ3f'HQ4f;
~IQ6t /NENA3LetNQOftHQlf'8Q2f'HQ3ftHQ4ftNQSf;
HQ7t /H~NABLetHQOf~NQlf'NQ2ftHQ3f'HQ~f'llQSf'NQ6f;
eNDS

.~. ~Y

- ~I S ~1~ lO

AL RLEIHSCHHIDT
SEIIT1NEL VISION lliC.

1.00 A

ePsoo P2iMTF ADY
CONTROL1BR ~OR APP-DSP IMTER~AC~ - LOCAL - PROTOII.
OPTIO~S: TURBO = ON
PART: eP900 I~U~S:
CLOC~0~1, CLOCK1~21, EOS~3, 9 end of 6can 1 ovzRlDeQ4l 1 overide request froo dsp S
IOE~11, 4 IIO e~pansion control signal frol~ dsp %
RN~18, ~ read /write control fro~ dsp 1 A0~19, % lsb of four address lines fro~ dsp 9 AIQ22, A2Q23, - A3~2~, ABSdsp~37 1 dsp selects ~el~ory banl; during an overide condition 3 ACSappt39, 1 bank select fro~ app; given during nor~al op 1 OUTPUTS:
R~S~5, 1 controls direction of data transfer wrt dsp 9 A~SEL~6, 1 conditioned bank select S
NRU~7, 9 ~rite to bank D 4 OE~Q9, 3 b banl; oe S
lOeNR2~9, % during overide, data is written to the interface %
~ froc t~e dsp via thi6 port S
IOE~R0~36, S used to delay IOERR2 1 lOeRD2Q10, ~ data read fro~ interface via this port 1 EOCtl2, 9 end of latch count CLeARQ13, % used to clear hi order addres~ bits CLûCK6tl4, CLOCK41!15, 9 divided clocl~
CLOCR2Q16, C15~25, 9 for de~lu1~ input for app l o~ 16 latch select C1~26, C13Q27, C12~28, C~ll, RNRUM~29, 9 clocks counter fo~ dsp address generation S
RDOEQ30, ~ enables the IOERD2 port 1 JI~RNS~31, ~ latched readl~riie select S
OeA~32, S a ban~ oe 1 IIRA~33, 1 irite to banl; A S

: ~S

2 0f 4 - lOZRDl~34, ~ port contains app and interface status IOeNRl~35, ~ port contains co~cands fro~ d6p to interface NE~NORR:
CLOCRO=INP(CLOCRO) CLOCRl=lNP(CLOCRl) CLOCRa=CLRB(CLOCR~f) t d~ives the high order address bits CLOCRb=CLR911NVEOS) EOS=IRP~EOS) OVZRlDE=lNP~OVeRlDE) A35app=lNP(ABSapp) ABSdsp=lNP(ABSdsp) IOE=lNP(loE) RR=INP(RN) AO=INP(AO) Al=lHPlAl) A2~1NPIA2 ) A3 INP(A3) CLOCR8,CLOCRB~=TOiF(CLOCR8t,CLOCRO,GND,GND,VCC) CLOCR4,CLOCR4f=~OTE(CLOCR4t,CLOCRO,GND,GND,VCC) CLOCR2,CLOCR2f=~O~F~VCC,CLOCRO,GND,GND,VCC) ClS,ClSf=TOTF(ClSt,C10CRa,G~D,GHD,VCCI
C14,C14f-~O~F~Cl4t,CLOCRa,GND,GND,VCC) C13,C13f=~OTF~C13t,CLOCga,GND,GND,VCC) C12,C12f iO~FICl2t,CLOCRa,GND,GND,VCC) C,Cf=SO~F(Ct,CLOCRa,GND,GND,VCC) EOC,EOCf=SO~F(EOCt,CLOCKa,GND,GND,VCC) CLEAR,CLEARf=RORFICLeARd,CLOCRbrRESE~,GND,VCC) IOERD1-CONF(IOERDlc,VCC) lOEl~RI=CONF,IIOEWRlc,VCC) lOEHR2=CONF~IOENR2c,VCC) IOE~RO,IOENROf=COlF[IOENROc,VCC) lOBRD2=CO~E(lOERD2c,VCC) ~RA=CODF(NRAc,VCC) OEA=RONF(OeAd,CLOCRl,GND,GND,VCC) ' ~RB=CONF(~RBc,VCC) OEa-ROUFIOEEd,CLOCRO,GND,GND,VCC) JRR~S,JRRNSf=JOJFIJRRNSj,CLOCRl,JRRHS~,GND,GND,VCC) RHS,RllSf~C~IFIRNSc,VCC) RDOE-CONF(RDOEc,VCC) RHNUU~CONF(RHNU~c,VCC) ABSEL~RONF(A~SLd,CLOCRO,GND,GND,YCC) eQU~l~lONS:
; CLOCR~t = CLOCR2f; 3 divides 12~Hz input clock by S to 1.5 ~Hz %
CLOCR8t = CLOCR4f;
Ct = ICLEARft/EOC~
t EOCf t ICf ~;
~. .

s ~3~3~

P2I~TFL
3 of 4 :
t CLeARf ' Cf;
~ high order address generation 3 C12t = /CLEaRft/EOCft Cf + CLEARf t C12f;
tl3t - /CLZARf~/EOCft Cf t C12f CLEARf t C13f;
Clit - /CLEARft/20Cft Cf t C12f t C13f + CLEARf t C14f;
ClSt = /CLEARft/ZOCf' Cf t C12f t C13f t C14f t CLeARf ~ ClSf;
eOCt = /CLEARft/EOCft/Cf t C12f t C13f ~ C14f t ClSf t C~BARf t EOtf;
INVEOS - /EOS; ~ used as CLOCRb î
CLEARd = EOCf; ~ u6ed to clear the Q '8 SynChrOnoQSly RESES = /BOCf;
ABSeLd = IOVeRIDB t A3Sapp t OVERlDe t/ABSdsp;

NRAc 5 /1 /OVERIDe t ABSapp t/Cf t/CLOC~8f t 1 OVERIDE ' ABSdsp t JRRHSf));
~c = /1 /OVeRlDE t/A9Sapp t/cf t/CLOCR8f t t OVERIDe t/ABSdsp t J~RNSf~);

OEAd = ~(I/OVERIDE t/ABSapp) t I WERlDe t ABSdsp t /JRRHSf));
OEDd = /II/OVERIDE t ABSapp) t I OVERIDE t/ABSdsp t /JRRUSf));

lO~llROc = I /loe t /RN ' AO t /A1 t /A2 ~ A3); 3 urlte port 09H
IOEUR2c = lOENR3f;
108RD2c R~iSf; ~ ~ead port O9H %
IOENRlc = IIOE t IRN t /90 ~ /~1 t /12 t A3; g ~Irite port 08H
102RDlc = /~ E ' RH ~ IA~ ~ /A1 ' /A2 t ~3~; ~ read port 08H 1 RRNUNc = lOENROf RNSf;

RNSc /IOE t IIH ' AO ~ /Al t /42 t A3 ; ~ lo~ for read -~ RN - 1 . ~?

~ 3 ~

~21H~YL
~Of 4 RDOEC = /RNSf;
J!~R~Sj /loe t /RN ~10 t IA1 t /A2 ~ a3; ~ high for write %
JI~RIIS~ - IIOE t R~l ' A0 t IAl t IA2 t A3; ~ in order to latch -~
~ ep clocl~ nust ha~e period less than 150 nsec %

EIID$

~ ~ .

Claims (13)

WE CLAIM:
1. Apparatus for detecting an irregularity in the surface of an elongated seam having a curvate surface cross-section, said apparatus comprising:
(a) irradiation means for irradiating said surface to produce reflected signals;
(b) a plurality of radiation sensors, each being disposed to have a selected field of view of the surface, each such view being defined by a width extending longitudinally of said seam and a length curvately extending in a plane lying transverse to the longitudinal direction of said seam; each such sensor for receiving such portion of said reflected signals as are reflected within its corresponding field of view and for producing corresponding sensor output signals in response thereto;
(c) signal processing means for receiving said sensor output signals for a succession of fields of view along the longitudinal length of said seam, and for deriving therefrom signal data representing a dimensional feature of said seam; and, (d) signal comparison means for comparing said signal data with signal data representing an acceptable dimensional limit, and for producing a rejection signal in the event that said dimensional feature does not fall within said limit.
2. Apparatus as defined in Claim 1, wherein said signal data representing an acceptable dimensional limit is derived by said signal processing means from said sensor output signals.
3. Apparatus as defined in Claim 2, further including classification means for characterizing the nature of the irregularity if said dimensional feature does not fall within said limit.
4. Apparatus as defined in Claim 1,2 or 3, including means for longitudinally moving said seam through the field of view of said sensors.
5. Apparatus as defined in Claim 2, wherein said seam is a longitudinally circular double seam joining the lid and body of a can.
6. Apparatus as defined in /claim 5, including transport means for rotating said can to longitudinally move said seam through the field of view of said sensors.
7. Apparatus as defined in Claim 5, including transport means for lifting said can to move said seam into the field of view of said sensors and for rotating said can to longitudinally move said seam through the field of view of said sensors.
8. Apparatus as defined in Claim 6, wherein said transport means comprises:
(a) an inspection rotor and means for rotating same about a fixed vertically extending central axis; said sensors being mounted to said rotor so as to rotate therewith;
and, (b) a rotatable inspection platform mounted to said rotor to support said can in an upright position radially away from said central axis, and means for rotating said platform with said can in a direction of rotation opposite to that of said rotor about a planetary axis extending parallel to said central axis.
9. Apparatus as defined in Claim 5,6 or 8, comprising four of said sensors, wherein:
(a) a first one of said sensors is disposed to have a field of view looking upwardly and radially inwardly at said seam;
(b) a second one of said sensors is disposed to have a field of view horizontally inwardly at said seam;
(c) a third one of said sensors is disposed to have a field of view looking vertically downwardly at said seam; and, (d) a fourth one of said sensors is disposed to have a field of view looking downwardly and radially outwardly at said seam.
10. Apparatus as defined in Claim 2, wherein said signal processing means comprises, for each of said sensors, an associated mean for deriving data on length for each of said succession of fields of view, such data on length relating to the transverse length of said seam as viewed by the corresponding sensor.
11. Apparatus as defined in Claim 10, wherein said signal comparison means comprises, for each of said sensors, an associated means for comparing data on length as derived for one of said succession of fields of view with data on length derived for another one of said fields of view, and means for recording a deviation if any difference in such data exceeds a predetermined threshold.
12. Apparatus as defined in Claim 11, including means for removing noise from said data prior to said data comparison.
13. Apparatus as defined in Claim 10, 11, or 12, further including classification means for characterizing the nature of the irregularity if said dimensional feature does not fall within said limit.
CA000614841A 1989-09-29 1989-09-29 Apparatus for inspecting can seams and the like Expired - Fee Related CA1313240C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA000614841A CA1313240C (en) 1989-09-29 1989-09-29 Apparatus for inspecting can seams and the like

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA000614841A CA1313240C (en) 1989-09-29 1989-09-29 Apparatus for inspecting can seams and the like

Publications (1)

Publication Number Publication Date
CA1313240C true CA1313240C (en) 1993-01-26

Family

ID=4140832

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000614841A Expired - Fee Related CA1313240C (en) 1989-09-29 1989-09-29 Apparatus for inspecting can seams and the like

Country Status (1)

Country Link
CA (1) CA1313240C (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113617541A (en) * 2021-08-06 2021-11-09 合肥妙思智能医疗科技有限公司 Laboratory blood sample circulation uninterrupted assembly line centrifugal machine
CN113714141A (en) * 2021-08-12 2021-11-30 辽宁海神联盛制药有限公司 System is examined to lamp of inverter type control

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113617541A (en) * 2021-08-06 2021-11-09 合肥妙思智能医疗科技有限公司 Laboratory blood sample circulation uninterrupted assembly line centrifugal machine
CN113617541B (en) * 2021-08-06 2022-11-25 合肥妙思智能医疗科技有限公司 Laboratory blood sample circulation uninterrupted assembly line centrifugal machine
CN113714141A (en) * 2021-08-12 2021-11-30 辽宁海神联盛制药有限公司 System is examined to lamp of inverter type control

Similar Documents

Publication Publication Date Title
US6061086A (en) Apparatus and method for automated visual inspection of objects
CA1313243C (en) Control means and method for optical inspection system
CN101061382B (en) Method and device for determining foreign matter or defect of multiple filled containers
Wen et al. Dual-camera NIR/MIR imaging for stem-end/calyx identification in apple defect sorting
US5078501A (en) Method and apparatus for optically evaluating the conformance of unknown objects to predetermined characteristics
US4484081A (en) Defect analysis system
US10189055B2 (en) Color based optical grading system with multi reflectance and multi-angle views
JPS60239648A (en) Method and device for capturing geological sample picture aiming at optical analysis
US4957367A (en) Inteferometric imaging system
US5017795A (en) Apparatus for inspecting can seams and the like
CN110412035A (en) A kind of high reflecting material surface inspecting method and system
JPS5821546A (en) Automatic inspecting device for surface
CN211070921U (en) Instrument appearance detection device based on 3D scanning method
US7625100B2 (en) System and method for inside can inspection
CA1313240C (en) Apparatus for inspecting can seams and the like
CN208350678U (en) Transparent vessel oral area crackle on-line measuring device
WO1996041299A1 (en) Inspection system for exterior article surfaces
CN105910534A (en) Rubber and plastic product geometric quantity measurement system
CA2297879A1 (en) Apparatus and method for determining the shape of a piece in movement
EP0556655B1 (en) Device and method for testing optical elements
EP3865813A1 (en) Scanning of objects
Chen et al. Instrumental system for online inspection of poultry carcasses
CN113804125A (en) Method for inspecting surface linear deviation of propeller shaft bracket casting
CN109840984B (en) Coin surface quality inspection system, method and device
JP3023005B2 (en) Illuminance inspection device

Legal Events

Date Code Title Description
MKLA Lapsed