1. Field of the Invention
This invention relates to imaging in optical code reading devices. Aspects of the invention are particularly useful in solid state, area image sensor based, handheld code readers which are positioned at variable orientations and distances with respect to a target code.
2. Description of the Related Art
Optical codes are patterns made up of image areas having different light reflective or light emissive properties, which are typically assembled in accordance with a priori rules. The term “barcode” is typically used to describe certain kinds of optical codes. The optical properties and patterns of optical codes are selected to distinguish them in appearance from the background environments in which they are used. Devices for identifying or extracting data from optical codes are sometimes referred to as “optical code readers” of which barcode scanners are one type.
Optical code readers are used in both fixed and portable installations in many diverse environments such as in stores for check-out services, in manufacturing locations for work flow and inventory control and in transport vehicles for tracking package handling. The optical code can be used as a rapid, generalized means of data entry, for example, by reading a target barcode from a printed listing of many barcodes. In some uses, the optical code reader is connected to a portable data processing device or a data collection and transmission device. Frequently, the optical code reader includes a handheld sensor which is manually directed at a target code.
Most conventional optical scanning systems are designed to read one-dimensional barcode symbols. The barcode is a pattern of variable-width rectangular bars separated by fixed or variable width spaces. The bars and spaces have different light reflecting characteristics. One example of a one dimensional barcode is the UPC/EAN code used to identify, for example, product inventory. An example of a two-dimensional or stacked barcode is the PDF417 barcode. Another conventional optical code is known as “MaxiCode”. It consists of a central finder pattern or bull's eye center and a grid of hexagons surrounding the central finder.
It is noted that the aspects of the inventions disclosed herein are applicable to optical code readers, in general, without regard to the particular type of optical codes which they are adapted to read. The invention described may also be applicable to some associated image recognition or analysis.
Most conventional scanning systems generate one or more beams of laser light which reflects off a barcode symbol and back to the scanning system. The system obtains a continuous analog waveform corresponding to the light reflected by the code along one or more scan lines of the system. The system then decodes the waveform to extract information from the barcode. A system of this general type is disclosed, for example, in U.S. Pat. No. 4,251,798, assigned to Symbol Technologies, Inc. A beam scanning system for detecting and decoding one and two dimensional barcodes is disclosed in U.S. Pat. No. 5,561,283, also assigned to Symbol Technologies, Inc.
Such scanning systems are deployed in handheld units which may be manually pointed at the target. Often an individual scanner is a component of a much larger system including other scanners, computers, cabling, data terminals, etc. Such systems are frequently designed and constructed on the basis of mechanical and optical specifications for the scanning engine, sometimes called “form factors”. One such form factor is the SE1200 form factor designed by Symbol Technologies, Inc.
Optical codes can also be read by employing optical code readers having an imaging engine. An imaging engine includes an image sensor having a two-dimensional array of cells or photo sensors, such as an area charge coupled device (CCD), which correspond to image elements or pixels in a field of view of the imaging engine. The imaging engine further includes a lens assembly for focusing light incident on the image sensor and associated circuitry coupled to the image sensor.
The associated circuitry produces electronic signals corresponding to a two-dimensional array of pixel information for the field of view. The electrical signals are processed by a processor for extracting information indicative of the focus quality of an image corresponding to the field of view.
The ability to focus a scanner quickly and accurately is critical to the success of the scanner. Proposed solutions to this problem include prepackaged components such as piezo ceramic actuators and micro motors. Each of these proposed solutions yielded limited success. Accordingly, an object of the present invention is to provide an imaging engine for an optical code reading device which provides more accurate and faster focusing of the imaging optics. Moreover, the imaging engine is dimensioned and configured to fit within a predetermined form factor, such as the SE900 and SE1200 form factors which are utilized in currently deployed optical code readers, such as optical code readers available from Symbol Technologies, Inc., to increase the reliability, versatility and focusing ability of such readers.
In accordance with the present invention, an optical code reader system having an improved imaging engine is provided. The optical code reader system includes an imaging engine which is configured to achieve an 85 micron, sub 20 milli-second, two position focus of an optical imaging system for the purpose of increasing working range without compromising scanning aggressiveness in a Proton sized barcode scan engine.
In accordance with an embodiment of the present invention, the optical code reader system includes a chassis; an imaging optics assembly pivotally mounted on the chassis; and means for moving the imaging optics assembly, wherein the means for changing the focus of the imaging optics assembly causes the imaging optics assembly to translate via rotational motion to one of two prescribed positions. The optical code reader may include other items such as an illumination device for illuminating the target image or an aiming device for assisting a user in aiming the optical code reader on the target image.
In accordance with an embodiment of the present invention, the means for changing the focus of the imaging optics assembly includes a motor assembly which includes a magnet, a coil assembly for applying an electromagnetic force on the magnet, an opto-mechanical barrel assembly for housing the imaging optics assembly and a pivot pin for rotatably connecting the opto-mechanical barrel assembly to the chassis. A signal is transmitted to the coil assembly such that the coil assembly applies an electromagnetic force on the magnet. The magnet is connected to the opto-mechanical barrel assembly thereby causing the opto-mechanical barrel assembly to pivot about the pivot pin to adjust the focus of the optical code reader.
In accordance with the present invention, an interface assembly is provided for interfacing an imaging engine having an adjustable lens assembly to a circuitry assembly of an optical code reader system. The interface assembly includes a first coupling circuitry assembly for transmission of at least one input signal in a first direction from the circuitry assembly toward the imaging engine, the at least one input signal including at least one focus control signal for controlling the lens assembly for selecting a focus position of at least two focus positions. The interface assembly further includes a second coupling circuitry assembly for transmission of at least one output signal in a second direction from the imaging engine toward the circuitry assembly, the at least one output signal including at least one pixel data signal, wherein the at least one pixel data signal is indicative of light sensed by a photo sensor array of the imaging engine.
In another embodiment of the invention, the interface assembly includes interface assembly including coupling circuitry including first coupling circuitry for transmitting at least one external vertical frame clock signal in a first direction from the circuitry assembly toward the imaging engine; second coupling circuitry for transmitting at least one horizontal pixel valid clock signal in a second direction from the imaging engine toward the circuitry assembly; third coupling circuitry for transmitting in the first direction at least one master clock signal; fourth coupling circuitry for transmitting in the second direction a plurality of bits of pixel data indicative of light sensed by a photo sensor array of the imaging engine; and fifth coupling circuitry for transmitting in the first direction at least one focus control signal for controlling the lens assembly for selecting the focus position.
In another embodiment of the invention, the interface assembly includes a connector having at least a first and second end, one of the of the first and second ends including a plurality of contacts including a first through a thirty-first contact for transmitting at least one signal. The interface assembly further includes first coupling circuitry for transmitting at least one focus control signal in a first direction from the circuitry assembly toward the imaging engine for controlling the lens assembly for selecting a focus position of at least two focus positions of the lens assembly, the first coupling circuitry including four contacts of the plurality of contacts; second coupling circuitry for transmitting at least one of at least one illumination enable signal in the first direction for controlling an illumination assembly of the optical code reader system and at least one aim enable signal in the first direction for controlling an aiming assembly of the optical code reader system, the second coupling including at least two of the contacts of the plurality of contacts; and third coupling circuitry for transmitting a plurality of bits of pixel data indicative of light sensed by a photo sensor array of the imaging engine in a second direction from the imaging engine toward the circuitry assembly, the third coupling circuitry including eight contacts of the plurality of contacts; wherein each of the contacts included in the first through the third coupling circuitry are different contacts.
In another embodiment of the invention, the interface assembly includes at least one of an input/output (I/O) means of the imaging engine, an I/O means of the circuit assembly, and a transmission assembly connected between the imaging engine and the circuitry assembly configured for transmitting at least one signal from one of the imaging engine and the circuitry assembly toward the other of the imaging engine and the circuitry assembly. The at least one signal includes at least one pixel data signal indicative of light sensed by a photo sensor array of the imaging engine; at least one clock signal for synchronization of the imaging engine and circuitry assembly; at least one reference signal including at least one vertical frame reference signal and at least one horizontal pixel reference signal; and at least one focus control signal for controlling adjustment of the lens assembly; and at least one ground signal.
In another embodiment of the present invention, a method is provided for interfacing an imaging engine removably positioned within an optical code reader to a circuitry assembly of an optical code reader system. The method includes the steps of transmitting at least one focus control signal in a first direction from the circuitry assembly toward the imaging engine for controlling a lens assembly of the imaging engine for selecting a focus position of at least two focus positions, and transmitting at least one pixel data signal indicative of light sensed by a photo sensor array of the imaging engine in a second direction from the imaging engine toward the circuitry assembly.
The imaging engine is preferably dimensioned and configured to be removably positioned and fit within a predetermined form factor, such as the SE900 and SE1200 form factors which are utilized in optical code readers, for example, optical code readers available from Symbol Technologies, Inc. The imaging engine will increase the reliability and versatility of such optical code readers.
Preferably, the imaging engine is optimized to provide high resolution images by having a high resolution photo detector array or image sensor. The imaging engine may be provided with an aiming and/or illumination assembly as known in the art.
It is provided that the imaging engine having the interface characterized by the particular specifications in accordance with the present invention can be incorporated within or added to devices other than optical code readers, such as personal digital assistants (PDAs) and other mobile computing devices, a digital camera, a pager, a video telephone, and a cellular telephone. Accordingly, the above and other embodiments of the invention will be described hereinbelow with reference to the accompanying figures.
Various embodiments of the invention will be described herein below with reference to the figures wherein:
Reference is now made in specific detail to the drawings in which like reference numerals identify similar or identical elements throughout the several views.
An interface assembly 28, for providing data and/or electrical communication between the imaging engine 14 and the platform 20, includes an input/output (I/O) means 30, such as an I/O port, of the imaging engine 14 configured for exchanging at least one signal with the platform 20, including direct and indirect exchange of the at least one signal; an I/O means 32, such as an I/O port, of platform 20 configured for exchanging the at least one signal with the imaging engine 14, including direct and indirect exchange of the at least one signal; and the transmission assembly 21, directly or indirectly connected between the imaging engine 14 and the platform 20, for transmitting the at least one signal between the imaging engine 14 and the platform 20.
Preferably, the at least one signal includes a plurality of pixel signals corresponding to sensing of an image by the imaging engine 14, at least one focus control signal for controlling focus distance of the imaging engine 14, reference signals for exchanging imaging reference information, synchronization signals, power signals and ground signals. In a preferred embodiment the at least one signal includes a combination of at least one illumination control signal for controlling illumination generated by the imaging engine, at least one aiming signal for controlling aiming by the imaging engine, at least one programmable register signal exchanged with programmable registers in a data signal processor of the imaging engine, at least one chip select signal and at least one frame shift signal.
In another embodiment, the transmission assembly 21 further includes interception circuitry for intercepting a signal of the at least one signal from reaching a destination that it is transmitted toward selected from the group consisting of the imaging engine and the circuitry assembly.
The reader 12 may be a unit integrated into a stationary fixture, such as a checkout counter, a doorway molding, a toll booth, a station on a conveyor belt, etc., or a mobile unit, such as a handheld reader or a rotating turret. Furthermore, the reader 12 may be attached to or integrated with a portable, handheld computer device, such as a PDA and handheld computer devices available from Symbol Technologies, Inc., such as the PDT 6800 Series and the PDT 8100 Series Portable Data Terminals, or attached to or integrated with portable scanning systems or terminals, such as those available from Symbol Technologies, Inc. Such systems may be incorporated as part of a local area, cellular or wide area network to coordinate scanning and other image processing functions described below. Furthermore, the reader 12 may include video control circuitry and frame grabbing circuitry for outputting video signals for displaying images on a terminal monitor. The reader 12 may further include a data compression module (not shown) for compressing image data, such as for storage within the reader 12 and/or host terminal 16. In addition, the imaging engine 14 may be integrated into a video phone system for sharing use of display, processing and I/O capabilities.
In circumstances where the reader 12 is to be retrofitted from a laser line scan engine to an imaging engine 14, the imaging engine 14, and associated circuitry (not shown) can be inserted in place of the line scan engine and circuit board. In this way, previously designed toolings, housings and host devices may be employed and provide continuity in upgrading the code reading system. In preferred embodiments, the imaging engine 14 is less than two cubic inches in volume and is dimensioned to replace a moving laser beam scanning engine in a handheld optical code scanner, such as an SE1200 form factor scanning engine. The reader 12 may further be provided as an optical code reading kit in which more than one imaging engine is provided, and an installed imaging engine is replaceable with a different imaging engine that is better suited for a particular application.
Cable 18 may provide data communication between the reader 12 and the host terminal 16 and/or electric communication for providing electrical power to the reader 12. For example, electrical power may be provided to the reader 12 via the host terminal 16 and cable 18, or alternatively by a rechargeable battery within the reader 12. The cable 18 may be partially or fully replaced by wireless communication means such as radio frequency, optical or cellular communication means. For example, the reader 12 may include a radio frequency board and an antenna which provide a mobile radio link to one or more data terminals, such as the host terminal 16. An infrared data interface (IRDA) or multi-contact shoe may also be provided to communicate data between the reader 12 and an external receiver or docking device, respectively. Compressed tag and/or image data may be transmitted to the host terminal 16 via a radio frequency link, IR communication link, or direct contact with the docking device.
Image data generated by the imaging engine 14 are processed by the reader 12 (as described further below) and/or by the host terminal 16. The host terminal 16 includes or accesses at least one processor, where the at least one processor may be connected to one or more peripherals or computing devices, such as a video monitor, and/or a network. It is contemplated that the reader 12 may operate as a standalone device, without being connected to host terminal 16 or other processor.
The reader 12 is capable of being aimed at an optical code, where the optical code is brought into the field of view of the reader 12 by moving at least one of the optical code and/or the reader 12. Upon actuation, the imaging engine 14 images the optical code within its field of view and generates corresponding image data. A series of optical codes, such as a series of objects on an assembly line each having an affixed code, or a printout of a series of codes, may be provided to the reader 12 for sequential imaging of individual optical codes of the series of optical codes by the reader 12.
The imaging engine 14, as shown in greater detail in
The DSP 306 includes a data signal processor such as a DSP which includes a multi-chip module (MCM) having at least one charge pump 332 and a timing generator 334 needed to drive the CCD. Preferably, further included within the MCM is a correlated double sampler (not shown) and an A/D converter (not shown) for converting analog voltage output by the CCD into multi-bit (e.g., 8-bit) quantized pixels representing one of a plurality of shades of gray, preferably 256 or more shades of gray.
Preferably, the imaging engine 14 may be configured to operate in a variety of resolution modes, including a high precision mode used for applications in which the reader is used for reading bar codes. Preferably, the high precision mode provides a capability for precise setting of exposure times and faster startup from the power on condition resulting in more aggressive performance.
Platform 20, which may be included within the optical code reader 12 or within the host terminal 16, includes a microprocessor and may further include glue logic, e.g., a customized Application-Specific Integrated Circuit (ASIC), where necessary for interfacing the microprocessor to the transmission assembly 21. The microprocessor is preferably a commercially available microprocessor. In one embodiment, the platform includes a microprocessor configured in accordance with XSCALE architecture, e.g., an Intel PXA250 processor, and a customized Application-Specific Integrated Circuit (ASIC). In another embodiment, the platform includes a microprocessor that potentially does not need glue logic for connecting to the transmission assembly 21, e.g., a Motorola MX-1 processor.
The at least one connector 22 is preferably a commercially available electrical connector for coupling two devices for electrical and/or data communication. The at least one connector 22 may be elongated, such as including cables, such as flat flexible cables, for connecting the two devices when they are located a distance from one another. In the example provided, the at least one connector 22 includes a 31 position, 0.3 mm flex connector manufactured by Molex Inc. It is envisioned that the at least one connector 22 is a connector for non-electrical transmissions, such as optical transmissions.
The at least one transmission adaptation device 26 is a device, such as an adaptor, for adapting an electrical and/or data transmission. The at least one transmission adaptation device 26 may adapt the transmission such as by modifying transmission of one or more signals of the at least one signal, including modifying a characteristic of the at least one signal and/or the path traveled by the signal. For example, the at least one transmission adaptation device 26 may modify a characteristic, such as by combining one or more signals of the at least one signal into one signal, generating one or more signals from one signal of the at least one signal, and/or changing the configuration of the signal, such as performing a conversion on the signal, for example between electrical, optical, RF, etc. For another example, the at least one transmission adaptation device 26 may modify a path, such as by directing a signal of the at least one signal from a contact, such as a pin, of one connector or input/output means to a contact, such as a pin, of another connector or input/output means. Alternatively, the transmission adaptation device 26 may terminate a path along which the at least one signal is propagated. It is envisioned that the at least one connector 22 and/or the at least one transmission adaptation device 26 include a combination of wired and wireless data transmission means, including means for converting the transmission between wired and wireless transmission modes, such as optical, RF, etc.
Preferably, the location L1 for pin one P1 of the DSP 306 is positioned on a side S1 of the imaging engine 14 opposite the aiming and illumination assemblies 308, 310, respectively. Preferably, the operating voltage provided is between 3.10v and 3.45v. It is contemplated that the signals listed in
The REG_RESET* pin resets I2C registers in the LC99704 DSP when it is made low, and therefore it is preferable that circuitry be included in the imaging engine 14 to ensure that the REG_RESET* pin gets a valid reset at power up. The REG_RESET* pin may be connected to an open drain output of the platform 20 so that the I2C registers can be software reset via a hardware line. In an embodiment in which a customized ASIC is included in the platform 20, CS* pin is connected to ground, since when the CS* pin is driven high, pixel data bits become high-Z, which is not needed in applications using the customized ASIC implementation. The FOCUS_CTRL1 and FOCUS_CTRL2 pins are used to enable various modes of focus selection, where enablement of the modes for focus selection does not require real-time modification of signals at the FOCUS_CTRL1 and FOCUS_CTRL2 pins during image acquisition. Accordingly, it is preferable to connect the FOCUS_CTRL1 and FOCUS_CTRL2 pins to a general purpose input/output pin or port of the platform 20 for modification of focus selection on a scan session basis.
Preferably, a clock supplied by the platform has a nominal frequency of 47.923 MHz. The platform 20 divides down this clock to generate a master clock input (MCKI) to the imaging engine 14. Preferably, the exemplary platform clock of 47.923 MHz is divided down by four to 11.981 MHz for generating the MCKI. The exemplary LC00214 CCD needs a clock near 24 MHz to operate properly. Accordingly, an internal PLL of the DSP 306 is used to multiply the incoming MCKI by two to obtain an internal camera (i.e., imaging engine) clock of 23.962 MHz, known as the camera's master clock (MCK). During read out of the pixel area, each pixel is converted to an 8-bit digital value in the current example at a rate equal to one half the MCK. So preferably a pixel clock, PCLK, has a frequency of
In a preferred embodiment the camera is configured such that there are 763 PCLK periods per line of pixels read out, this means that the total time to read one line out from the photo sensor array 304, otherwise known as the horizontal period, is
(a HREF/EXHT period), where HREF refers to a horizontal reference signal, and EXHT refers to an external horizontal trigger signal. Furthermore, in the preferred embodiment there are 525 line periods in an entire frame (image), which means that the total time to read out a fall frame from the photo sensor array 304, otherwise know as the vertical period, is =525×63.69 μs=33.43 ms. (an VREF/EXSFT period), where VREF refers to a vertical reference signal, and EXSFT refers to an external start of frame trigger signal. This yields a constant frame rate of
frames per second. Both the platform 20 and the DSP 306 need to be configured properly to obtain congruent clock settings, and preferably, appropriate default register settings are provided for ensuring that the LC99704 DSP 306 is configured properly.
Preferably, a power mode of a plurality of power modes (modes of power consumption) may be selected for the imaging engine 14, depending upon the state of the decoding application.
Each of these power modes offers a trade-off between power consumption and time to acquire an image, which ultimately impacts time to decode. Five exemplary operating power modes are:
A. Completely powered off by a hardware switch;
B. Host acquisition halted, camera placed in standby via I2C settings;
C. Host acquisition halted, external camera sync signals halted (EXSFT & EXHT idle);
D. Host acquisition halted, camera run at full frame rate; and
E. Acquiring and running at full frame rate.
The charge pump 332, which generates a voltage, such as ±5 v, so that charge can be properly shifted out of the CCD sensor, takes time to come up to regulation. When in power modes A and B, the charge pump circuit is brought up to regulation as fast as possible (˜60 ms) (the charge pump is already up to regulation in the remaining power modes). A startup sequence is preferably implemented to minimize this time.
In power mode A, the engine is completely powered off and must go through a power-on sequence which includes:
The idling of EXSFT helps to get the charge pump voltage to regulation as fast as possible and is preferably performed by setting an image control sensor size (ICSS) register of the platform 20 appropriately.
An I2C register writing sequence is performed when entering power mode B (standby) in accordance with design requirements. When exiting power mode B (standby), full programming of the I2C registers is preferably not performed, since the register contents are not lost by going into standby power mode B. To exit standby power mode B the following sequence is preferably followed:
When exiting standby power mode B an I2C register writing sequence is performed in accordance with design requirements. Once standby power mode B is exited, the charge pump startup sequence shown in
Preferably, the lens guidance assembly 314 of the imaging engine 14 is capable of being set to one of two different predetermined focus positions that are set at the time of manufacture. One focus position, called the near focus, allows the imaging engine 14 to focus on objects that are about five inches (12.7 cm) away. The second focus position, called the far focus, allows the imaging engine 14 to focus on objects that are about nine inches (22.9 cm) away. The superset of these two focus positions provides the imaging engine 14 with the capability to achieve excellent working range across a range of bar code densities, and further provides for improved distance picture taking capability when set to the far focus position. The focus control unit 319 is controlled by the FOCUS_CTRL1 and FOCUS_CNTRL2 signals for controlling operation of the motor 318 for positioning the lens assembly 302. Control of positioning the lens assembly 302 is shown in Table 1.
Typically the motor 318 will be run in toggle mode during barcode decode scan sessions so that the focus changes between near and far focus with each acquired frame. In certain situations, such as picture taking and specific barcode reading applications, it may be desirable to force one of the focus positions over multiple frame captures. Once commanded to operate, the motor 318 will operate the lens adjustment mechanism 216 for moving the at least one lens 312 along the lens guidance assembly 314 to the designated position and settling there within 20 ms of time. This means that the maximum exposure time is roughly a frame time minus the 20 ms settle time, resulting in a maximum exposure setting of 12 ms. The software should not set the exposure time to be larger than 12 ms when operating in toggle mode to ensure proper and stable image capture. If a focus position is forced to near or far, the exposure time can be made as large as a frame time without issue as long as the motor is given 20 ms to settle from the time the focus position is forced to the time the first image exposure begins.
There may be a need under certain conditions to know the focus position of a captured image when toggle mode is enabled. In the example provided there is no direct feedback from the imaging engine 14 as to the focus position that the lens assembly 302 is in while an image is being read out. The only way to know the focus position is to initialize the imaging engine 14 to a particular focus position and then keep track of the current focus position on a frame-by-frame basis. One way to accomplish this task is to force the focus position to a particular focus position using FOCUS_CTRL1 and FOCUS_CTRL2, then change the focus control to toggle mode, and command the platform 20 to enable the EXSFT signal (e.g., in the platform, setting a RUN bit (assuming the ACQ bit is already enabled)). On every rising edge of EXSFT the camera focus will toggle, so the first frame will be captured in the focus position opposite to the initialized position. The next frame will be at the initialized position and so on. As each of these frames are captured an end of frame interrupt is generated by the platform 20, and the frame can be tagged with its focus position while the current focus position is toggled to the next position in preparation for capturing the next frame. Preferably, when using any of power modes A–E, an initial focus position is set to ensure that the first frame always starts in a predetermined focus position.
Operating the platform 20 in power mode D, in which running is enabled for enabling the imaging engine 14 to sense images, but acquiring of images is disabled (in the platform 20, a RUN bit (run) is enabled and an ACQ bit (acquire) is disabled), may be used, for example, in the middle of a scan session when two frames have been acquired and are being processed and the system continues to let the camera run without acquisition so that it can aggressively capture more frames if needed. In this situation, the processor will not generate an end of frame interrupt since it is not acquiring. Under this condition keeping track of the focus position state becomes more difficult. It is recommended that if power mode D is used, the motor should be forced to an initialized focus position until the acquiring (the ACQ bit) is enabled. This will guarantee that the focus control is re-initialized to a known starting position, and the end of frame interrupt can again be used to keep track of the focus position state. Default camera register settings to be written to DSP 306 of the imaging engine 14 (e.g., the LC99704) after power up are provided in accordance with design requirements.
Preferably, the imaging engine 14 includes both a digital and analog gain control that is capable of being manually varied over the I2C interface. Barcode reading applications typically do not make use of the digital gain control since it does not generally provide true signal amplification value. The analog gain is controlled via register 157d of the LC99704 DSP.
The acquisition interface for the platform 20 is preferably highly programmable. Key items that need to be configured to ensure proper camera operation are: the setting of MCKI to be congruent with DSP 306 (11.981 MHz from the platform 20 in the example provided); polarity of EXSFT to match a startup sequence of the imaging engine 14 after power is applied to the imaging engine 14 or after exiting the imaging engine=3 s standby power mode B; the idle states of EXHT and EXSFT when acquisition/running are disabled; pixels per line and lines per frame are congruent with the CCD; and direct memory access (DMA) destination and reload address registers.
Referring now to
The illumination device 918 may consist of an illumination printed circuit board and a lenslet plate. The illumination printed circuit board may include a plurality of light emitting diodes. In a preferred embodiment, twenty 660 nm light emitting diodes (LED's) are arranged on the illuminator board. In an alternative embodiment, LED's producing a higher or lower wavelength light may be employed. In either case, the LED's are arranged in such a way that the target area is evenly illuminated. In systems where multiple fields of view and multiple focal lengths are selectable in the imaging engine, the illumination system may provide different fields of illumination. Light emanating from the LED's is projected through apertures or lenslets in a front plate of the imaging engine.
The illumination source may produce a relatively broad beam of lower output intensity to illuminate a target barcode relatively close to the imaging optical code reader, and a relatively narrower beam of higher output intensity to illuminate a target barcode relatively far from the reader. A portion of the illumination source for producing the lower output intensity illumination beam may comprise one or more light emitting elements with a wide divergence pattern located relatively near a principle optical axis of the lens assembly. Additional elements may be used to provide a longer range illumination beam of higher output intensity. In a preferred embodiment, this function is performed by light emitting elements with a narrow divergence pattern located relatively farther from a principle optical axis of the imaging engine. These latter elements may be plural light emitting diodes each associated with a focusing lenslet located in a front face of the imaging engine.
In an illumination system using plural light emitting elements, certain intensity variations may occur across the illuminated field. In preferred embodiments of the present invention, image processing circuits and/or software compensates signals from the image sensor for known variations in illumination provided by the illumination source.
As discussed above with reference to
Typical means for adjusting the focus positions in prior art optical code readers include moving the imaging optics along the optical axes. In accordance with an embodiment of the present invention, adjustments to the focus position are made by pivoting the imaging optics, as will be described with reference to
Referring to
Screws 930 are provided to secure the PCB assembly 916 to the chassis 910. Removal of the screws 930 permits the PCB assembly 916 to be removed from the chassis 910. Once the PCB assembly 916 is removed, a cavity 935 in chassis 910 which houses the motor assembly 922 may be accessed. The motor assembly 922 comprises a magnet 932, a rotating opto-mechanical barrel assembly 934, a coil assembly 936, a stop 938, and a pivot pin 940.
The aiming device 920 comprises a diffractive optical element 964, a diffractive optical element lens assembly 966 and a visual laser diode 968. The diffractive optical element 964 is mounted in a front face of the chassis 910 of optical code reader 912. The diffractive optical element lens assembly 966 is positioned behind the diffractive optical element 964. The visual laser diode 968 generates a laser light and is positioned behind and adjacent diffractive optical element lens assembly 966. The visual laser diode 968 is electrically connected to PCB assembly 916, via electrical connectors such as prongs 970.
Preferably, the motor assembly 922 is actuated after determining the distance between the imaging apparatus and the object to be imaged. A distance determining method which can be used to determine the distance between the imaging apparatus of the present invention and the object is disclosed in U.S. Pat. No. 6,340,114 B1 which is assigned to Symbol Technologies, Inc. The method involves using an aiming device of the imaging optical code reader to measure the distance to a target image. Other distance determining methods may be used for determining the distance between the imaging apparatus and the object to be imaged such as, for example, the methods disclosed in U.S. patent application Ser. No. 10/425,499, filed Apr. 29, 2003, which is incorporated by reference herein.
The determined distance to the object is then correlated by a processing system (e.g., PCB assembly 916) to a specific or approximate position of the imaging optics 914 with respect to a fixed reference point (e.g., a specific point of the imaging optics, such as the central point).
The processing system then determines the amount of distance the imaging optics need to be moved to be at the specific or approximate position of the imaging optics with respect to the fixed reference point. To perform this computation, the processing system takes into consideration the last stored position of the reference point of the imaging optics 914 with respect to the fixed, reference point. The last stored position of the reference point of the imaging optics 914, without taking into consideration the occasional need to calibrate the imaging apparatus by manually or automatically setting the current position of the imaging optics at a known position with respect to the fixed reference point equates to the current position of the reference point of the imaging optics 914 with respect to the fixed reference point.
The last “recorded” or current position is determined by the processing system by continuously calculating the amount of distance the reference point of the imaging optics 914 moves with respect to the fixed reference point. For example, after an initial manufacturing setting or calibration of the imaging apparatus, the reference point of the imaging optics 914 is located on the same plane as the fixed reference point, or at a known distance from the fixed reference point, e.g., the furthest possible position from the fixed reference point.
Thereafter, focus changes between near and far focus during barcode decode scan sessions are achieved in accordance with the following description. Initially, the focus quality is determined by information which is processed by PCB assembly 916, as described above. In accordance with the present disclosure, signals from the PCB assembly 916 are then transmitted to the coil assembly 936 which is positioned adjacent to the magnet 932. The coil assembly 936 applies an electromagnetic force to magnet 932. The magnet 932 moves as a function of the magnitude and direction of the electromagnetic force applied by the coil assembly 936. Since the magnet 932 is physically attached to rotating opto-mechanical barrel assembly 934, the variation in the electromagnetic force exerted on the magnet 932, by the coil assembly 936, is transferred to the rotating opto-mechanical barrel assembly 934. The imaging optics 914 is housed within rotating opto-mechanical barrel assembly 934. Therefore, adjustments made to the position of rotating opto-mechanical barrel assembly 934 have a direct impact on the position of the imaging optics 914. A stop member 938 is provided to impose a physical limit on the amount of movement which may be made by the rotating opto-mechanical barrel assembly 934.
As discussed above, the conventional means for adjusting the focus of the imaging optics includes movement of the imaging optics axially along the optical path. In accordance with the present disclosure, adjustments to the focus of the imaging optics are achieved by pivoting or rotating opto-mechanical barrel assembly 934 about a rotation axis which is defined by pivot pin 940. Pivot pin 940 is rotatably positioned within a hub 942 which is fixed within a portion of the opto-mechanical barrel assembly 934.
Imaging optics 914 is configured to focus optical information on sensor 944. Sensor 944 produces electronic signals corresponding to an array of pixel information for the target image. The electronic signals from sensor 944 are transmitted to control and logic circuitry, such as, for example, PCB assembly 916. The control and logic circuitry process the signals and provide an output signal to an actuator assembly relative to the focus of the target image. The method for determining whether the target image is in focus and what the corresponding output signal should be is described in further detail in U.S. patent application Ser. No. 10/389,184, filed Mar. 14, 2003, which is incorporated by reference herein.
The structural characteristics of the rotating opto-mechanical barrel assembly 934 introduces a nominal angular error of one degree to the system as a result of performing the desired adjustment, i.e., preferably an 85+/−10 micron linear adjustment in under 20 milliseconds. The desired adjustment may be achieved through a one degree rotation of the opto-mechanical barrel assembly 934. By splitting the error between the two focus positions, a nominal error of less than 0.5 degrees is achieved and tolerated. Such a low error figure is achieved due to the exceedingly small amount of linear motion required to cause the desired focus adjustment. In application of the present invention, a statistical error of approximately two (2) degrees is considered to be the outer boundary for acceptable optical quality.
Referring now to
The described embodiments of the present invention are intended to be illustrative rather than restrictive, and are not intended to represent every embodiment of the present invention. Various modifications and variations can be made without departing from the spirit or scope of the invention as set forth in the following claims both literally and in equivalents recognized in law.
This application is a continuation-in-part application of co-pending U.S. patent application Ser. No. 10/459,935, filed on Jun. 12, 2003, which claims priority to two U.S. Provisional Applications filed on Feb. 13, 2003 and Apr. 4, 2003 and assigned U.S. Provisional Application Ser. Nos. 60/447,093 and 60/460,370, respectively, the contents of which are incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
4136821 | Sugiura et al. | Jan 1979 | A |
4251798 | Swartz et al. | Feb 1981 | A |
4762985 | Imai et al. | Aug 1988 | A |
4874933 | Sanner | Oct 1989 | A |
4897532 | Swartz et al. | Jan 1990 | A |
4920255 | Gabeler | Apr 1990 | A |
4957348 | May | Sep 1990 | A |
5007729 | Erickson et al. | Apr 1991 | A |
5117137 | Kobayashi | May 1992 | A |
5198648 | Hibbard | Mar 1993 | A |
5308960 | Smith et al. | May 1994 | A |
5502564 | Ledger | Mar 1996 | A |
5561283 | Dvorkis et al. | Oct 1996 | A |
5602379 | Uchimura et al. | Feb 1997 | A |
5780834 | Havens et al. | Jul 1998 | A |
5796089 | Marom | Aug 1998 | A |
5932860 | Plesko | Aug 1999 | A |
6053413 | Swift et al. | Apr 2000 | A |
6066857 | Fantone et al. | May 2000 | A |
6098887 | Figarella et al. | Aug 2000 | A |
6141051 | Koch et al. | Oct 2000 | A |
6182898 | Schmidt et al. | Feb 2001 | B1 |
6186400 | Dvorkis et al. | Feb 2001 | B1 |
6223986 | Bobba et al. | May 2001 | B1 |
6230976 | Sautter et al. | May 2001 | B1 |
6283371 | Son | Sep 2001 | B1 |
6327103 | Belliveau et al. | Dec 2001 | B1 |
6340114 | Correa et al. | Jan 2002 | B1 |
6405926 | Yomogida et al. | Jun 2002 | B1 |
6478225 | Swartz et al. | Nov 2002 | B1 |
6522441 | Rudeen | Feb 2003 | B1 |
6597465 | Jarchow et al. | Jul 2003 | B1 |
6637655 | Hudrick et al. | Oct 2003 | B1 |
6729546 | Roustaei | May 2004 | B1 |
20010003346 | Feng | Jun 2001 | A1 |
20020011520 | Gurevich et al. | Jan 2002 | A1 |
20020085260 | Huang et al. | Jul 2002 | A1 |
20020131139 | Mandella et al. | Sep 2002 | A1 |
20040031850 | Shellhammer | Feb 2004 | A1 |
20040118927 | Breytman et al. | Jun 2004 | A1 |
20040165100 | Motta | Aug 2004 | A1 |
Number | Date | Country |
---|---|---|
WO 0129836 | Apr 2001 | WO |
WO 0244790 | Jun 2002 | WO |
Number | Date | Country | |
---|---|---|---|
20040159703 A1 | Aug 2004 | US |
Number | Date | Country | |
---|---|---|---|
60460370 | Apr 2003 | US | |
60447093 | Feb 2003 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10459935 | Jun 2003 | US |
Child | 10694425 | US |