The present invention is generally directed to systems and methods that allow traffic light systems to be remotely controlled using high-integrity data communication, for example, involving optical pulse transmission from an optical emitter to an optical detector that is communicatively-coupled to a traffic light controller at an intersection.
Traffic signals have long been used to regulate the flow of traffic at intersections. Generally, traffic signals have relied on timers or vehicle sensors to determine when to change the phase of traffic signal lights, thereby signaling alternating directions of traffic to stop, and others to proceed. This situation is commonly exemplified in an emergency-vehicle application.
Emergency vehicles, such as police cars, fire trucks and ambulances, are generally permitted to cross an intersection against a traffic signal. Emergency vehicles have typically depended on horns, sirens and flashing lights to alert other drivers approaching the intersection that an emergency vehicle intends to cross the intersection. However, due to hearing impairment, air conditioning, audio systems and other distractions, often the driver of a vehicle approaching an intersection will not be aware of a warning being emitted by an approaching emergency vehicle.
There are presently a number of known optical traffic priority systems that permit for a fixed code to be embedded into the data stream to identify each vehicle and provide security. Such a code can be compared to a list of authorized codes at the intersection to restrict access by unauthorized users. This approach can be disadvantageous for certain applications or environments. For example, one problem with this approach arises when the transmitted data protocol is generally known or can easily be intercepted and re-created by unauthorized users. Once the transmitted data has been decoded or the transmitted data has been recorded for future playback, an unauthorized device can be used to activate the system. In addition, an unauthorized device can be used to activate the system without intercepting any transmitted data by attempting to activate the system using various codes until a code is discovered that successfully activates the system.
There are some straight-forward approaches for preventing such unauthorized access to the traffic light control systems. One approach is to remove any such intercepted or discovered code from the system database altogether. Coordination of such removal, however, can be burdensome and expensive since the vehicle code and the authorized code list at each intersection would need to be changed. Another approach is to prevent the unauthorized use by equipping all authorized vehicles, as well as the intersection (traffic light control) systems, with special communication transceivers that interact to provide another layer of security before providing access to the traffic light control systems. This approach can also be burdensome and expensive since each of the vehicles, as well as the systems at each intersection, would need additional equipment.
The present invention is directed to overcoming the above-mentioned challenges and others that are related to the types of approaches and implementations discussed above and in other applications. The present invention is exemplified in a number of implementations and applications, some of which are summarized below.
In connection with one embodiment, the present invention is directed to implementations that allow traffic light systems to be remotely controlled using high-integrity data communication. One such implementation employs optical encrypted data being transmitted to traffic light control equipment located at an intersection.
In a more particular example embodiment, a secure optical-communication traffic-preemption system includes an optical emitter and a traffic light circuit. The optical emitter is adapted to transmit light pulses that represent an encrypted code that is an encryption using a time-varying encryption key including at least an identification code. The traffic light circuit has an optical detector located at a traffic location and adapted to receive the transmitted light pulses, and has a decoding circuit adapted to respond to the received light pulses by attempting to validate the included identification code. In response to validating the included identification code, a traffic-preemption command is generated for a traffic light at the traffic location.
In another more particular example embodiment, a method is provided for securely communicating an operation identification code to a traffic location in an optical-communication traffic-preemption system. The operation identification code is encrypted using a time-varying encryption key. Light pulses are transmitted from an optical emitter, with the light pulses representing the operation identification code that is encrypted. The light pulses are received at an optical detector situated at the traffic location. The received encrypted operation identification code is decrypted using a time-varying decryption key and the decrypted operation identification code is validated.
The above summary of the present invention is not intended to describe each illustrated embodiment or every implementation of the present invention. The figures and detailed description that follow more particularly exemplify these embodiments.
The invention may be more completely understood in consideration of the detailed description of various embodiments of the invention in connection with the accompanying drawings, in which:
While the invention is amenable to various modifications and alternative forms, specifics thereof have been shown by way of example in the drawings and will be described in detail. It should be understood, however, that the intention is not necessarily to limit the invention to the particular embodiments described. On the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.
The present invention is believed to be applicable to a variety of different types of validation of operation requests in an optical traffic preemption system. While the present invention is not necessarily limited to such approaches, various aspects of the invention may be appreciated through a discussion of various examples using these and other contexts.
The optical traffic preemption system shown in
This secure communication is provided in the optical traffic preemption system of
In
In various embodiments, secure communication is provided by encrypting the operation identification code before transmission by the optical emitter 24A and 24B and recovering the operation identification code at the phase selector 18 by decrypting the encrypted operation identification code. Validation of the operational identification code by the phase selector 18 can include the decryption and additional validation approaches.
In various embodiments, emitters 24A, 24B and 24C include an encryption algorithm and an encryption key, and phase selector 18 includes a validation algorithm and a validation key. In one embodiment, the encryption and validation keys can be a shared symmetric encryption/decryption key. In another embodiment, emitters 24A, 24B and 24C can share an encryption key and phase selector 18 can have the corresponding decryption key for the validation key, such as in public key encryption. In one embodiment, the encryption algorithm encrypts data that includes the identification code of the requested command or operation and the encrypted data is transmitted from emitters 24A, 24B and 24C in the stream of light pulses. In another embodiment, the identification code of the requested command or operation is transmitted unencrypted along with a validation code that can be generated from the requested command or operation using the encryption algorithm and encryption key. The validation algorithm and validation key are used by the phase selector 18 to prevent unauthorized usage, such as an attempt by an unauthorized emitter 24D to control the intersection 10.
In contrast to a typical application for secure communication, a preemption request can be transmitted continuously by an emitter 24A or 24B and the preemption request should be recognizable by the phase selector 18 regardless of when reception at a detector assembly 16A or 16B begins. A preemption request can include a specific vehicle identification code that is transmitted continuously by emitters 24A during the emergency travel of vehicle 20 or by emitter 24B during the scheduled operation of vehicle 22. Reception of the preemption request can begin when an emitter 24A or 24B comes into range of a detector assembly 16A or 16B at intersection 10. Typically, existing systems recognize a received preemption request after two complete repetitions of the vehicle identification code are received.
Because an emitter 24A or 24B can repeatedly transmit a preemption request that is a short message and the preemption request should be quickly recognizable by phase selector 18 beginning at any point, the preemption request is especially vulnerable to unauthorized usage, including unauthorized duplication of the preemption request. A typical encryption scheme is deficient because recognition is not possible beginning at any point and/or playback of a recorded transmission defeats the encryption.
Various embodiments of the invention provide secure communication of preemption requests without increasing the response time of the phase selector 18. Secure communication of a preemption request is provided using the limited amount of encryption state that can be included in the preemption request and using a time-varying encryption key that is synchronized or approximately synchronized with a time-varying decryption key. The time-varying keys can prevent unauthorized activation by playback of a recorded transmission after the keys are updated. Various embodiments of the invention can transfer the requested command or operation in a code with a fixed length (and in other embodiments with a protocol-defined variable length) from emitters 24A, 24B and 24C to detector assemblies 16A and 16B. Example operation identification codes include a vehicle identification code of a preemption request and a code to download information from an emitter 24C to phase selector 18. For a request to preempt the normal operation of the traffic lights 12, the code can be repeated continuously during transmission from emitters 24A and 24B to ensure initiation of preemption as soon as an emitter 24A or 24B comes into range of the intersection 10. For an operation that does not require a time-critical response from the phase selector 18, the code can vary during transmission to allow more information to be transferred from emitters 24A, 24B and 24C to detector assemblies 16A and 16B. For example, an operation to download information from an emitter 24C to phase selector 18 can begin with a download command in a first code in the stream of light pulses followed by the information to be downloaded in subsequent codes in the stream of light pulses.
In a related embodiment, the requested command or operation can be transmitted in a code from emitters 24A, 24B and 24C to detector assemblies 16A and 16B, for initiating a higher-speed optical communication. For example, where optically-coded data is typically transmitted at about 10-15 Hz, the higher-speed optical communication is provided at a rate that is at least an order of magnitude higher. This higher-speed communication is implemented by both the transmitter and receiver circuitry to permit larger amounts of data to be downloaded at each traffic intersection for installing a new or modified computer-executable program module, new feature, algorithm, block-out vehicle codes, and/or enabling an already-present feature. While the present invention also contemplates downloading such upgrade-directed data using other communication tools (e.g., wired or wireless communication circuitry communicatively coupled via the external data port 43 of
In one embodiment, the codes that can potentially be encrypted and transferred from emitters 24A, 24B and 24C to detector assemblies 16A and 16B can be subdivided into various ranges. For example, a code with a fixed width of 14-bits has 16,384 potential values, and these codes can be subdivided into 10,000 vehicle identification codes and 6384 other “special” codes, as shown at code table 25. A value of zero can correspond to a default vehicle identification code that is not associated with any particular vehicle. The vehicle identification codes can be transmitted by emitters 24A, 24B and 24C to request preemption of the traffic lights 12. Following validation of the vehicle identification code by the phase selector 18, the phase selector can issue a traffic preemption command to the traffic signal controller 14 to select a particular phase of the traffic lights 12. The special codes can be used to command other operations, including a command to download a decryption key to phase selector 18 from emitter 24C.
In one embodiment, transmission of an unencrypted vehicle identification code alternates with transmission of a special code that validates the vehicle identification code. Because the vehicle identification codes and the special validation codes are in different ranges, the phase selector 18 can readily distinguish the vehicle identification code from the validation code. The validation algorithm can use the received vehicle identification code, the validation code, the validation algorithm, and the validation key to determine proper authorization.
In another embodiment, the vehicle identification code is transmitted repeatedly by an emitter 24A with an encryption that varies for each transmission of the vehicle identification code. Thus, the data that is encrypted does not vary between transmissions, but the encryption does vary between transmissions. For an example of 14-bit width data values, a pseudo-random number generator can generate a 14-bit number each cycle using a 14-bit linear feedback shift register having feedback based on a prime polynomial. Such a pseudo-random number generator can generate every non-zero 14-bit number exactly once in a sequence before repeating the sequence after generating all the 16,383 non-zero 14-bit numbers. It will be appreciated that the pseudo-random sequence can readily be generated in software without a linear feedback shift register.
Each transmission including the vehicle identification code can be arranged to differ from the prior transmission by a bit-wise exclusive-or with a pseudo-random number from the sequence. Because the pseudo-random sequence does not include the value of zero, for backwards compatibility the absence of encryption can be indicated by successive identical transmitted values. In one approach, the data value including the vehicle identification code for each transmission is encrypted by a bit-wise exclusive-or between the data value and the value of a scramble register, and the value of the scramble register is updated for each transmission with an bit-wise exclusive-or between the next pseudo-random number in the sequence and the current value of the scramble register.
The phase selector 18 can receive two successive encrypted data values including the encrypted vehicle identification code and perform a bit-wise exclusive-or between the two successively received encrypted data values to determine the pseudo-random number in the sequence. As discussed below, the value of the pseudo-random number in the sequence can be used to determine the values of the scramble register used by the emitter 24A for each of the two encryptions for the successively received values, and these values of the scramble register can be used for decryption by a bit-wise exclusive-or. The unencrypted vehicle identification code from the two successive transmissions can be compared to validate proper decryption, and further validation can be performed using the unencrypted vehicle identification code.
After any sequence of the 16,383 pseudo-random numbers, the scramble register has a value that is the exclusive-or of the scramble register before the sequence and each of the 16,383 pseudo-random numbers, which are all the non-zero 14-bit numbers. The scramble register has the same value before and after the sequence. For example, 8,192 of these pseudo-random numbers are odd causing the least significant bit of the scramble register to be inverted an even number of times and the remaining 8,191 are even such that the least significant bit of the scramble register is unaffected. An even number of inversions causes the least significant bit of the scramble register to be the same before and after the sequence. Thus, given a particular initial value for the scramble register and a particular seed value for the pseudo-random number generator, the corresponding scramble register value can be determined from the pseudo-random number generated by the pseudo-random number generator. The keys and/or the validation algorithm may include the initial value for the scramble register, the seed for the pseudo-random number generator and the prime polynomial used by the pseudo-random number generator.
In yet another embodiment, a repeating cycle of values from a sequence, such as a pseudo-random sequence, is used to encrypt a vehicle identification code that is repeatedly encrypted and transmitted by an emitter 24A. The encrypted vehicle identification code can be transmitted by an emitter 24A within a transmitted data value that also includes a field identifying the position in the sequence of the value used for encryption. For example, a repeating cycle of eight values from a pseudo-random sequence can be successively used to encrypt a vehicle identification code. A three bit field transmitted unencrypted along with each encrypted vehicle identification code can be used by a phase selector 18 to determine the value from the pseudo-random sequence that was used to encrypt the vehicle identification code. Thus, the phase selector 18 can decrypt the vehicle identification code. The phase selector 18 can decrypt two successively received vehicle identification codes and compare these vehicle identification codes to verify proper decryption.
In an alternative embodiment, multiple data values can be encrypted and sequentially transferred from an emitter 24B to the phase selector 18 to increase the amount of information that may be transported. Each data value transferred can include a field identifying each of the plurality of values. For example, four data values may be transmitted and each data value may have an unencrypted 2-bit field identifying whether the data value is the first, second, third, or fourth data value. Thus, if the same four data values containing the information are repeatedly transferred, then phase selector 18 can successfully identify the individual data values and extract the information. For example, if an ambulance turns a corner at another intersection before approaching intersection 10, the first data value received by phase selector 18 may be the third data value. After successively receiving the fourth, first, and second data values, phase selector 18 can extract the information. The multiple data values can be used to transfer additional encryption information.
In one embodiment, each vehicle 20, 22, and 23 has a set of thumbwheel switches used by an administrator or operator for the vehicle to select a vehicle identification code for the vehicle from the codes of code table 25. In addition, the thumbwheel switches can be used to manually provide a key that is included in the encryption key for the optical emitter 24A, 24B, and 24C respectively mounted on vehicles 20, 22, and 23. For example, code table 25 can include 10,000 vehicle identification codes and 6384 special codes and selection of one of the 6384 special codes on the thumbwheel switches can update a value that is included in the encryption key. In one embodiment, such a special code from the thumbwheel switches of emitter 24C can be transferred by authorized person 21 using a manually initiated key download command to phase selector 18 for use in a decryption key.
In one embodiment, certain of the 6384 special codes or other command codes can be used to command update of the validation algorithm and validation key with an update value that is either encoded in the special code or provided by data values subsequent to the special code. For example, a phase selector 18 can implement three different validation algorithms and each validation algorithm can have a corresponding special code that enables the validation algorithm. Typically, any subsequent data values with the update value for the validation algorithm and/or validation key can use any data value within either the range for vehicle identification codes or the range for special codes. Generally, an update of the validation algorithm or validation key should pass any validation process currently in force and potentially additional layers of security before the update is accepted by the phase selector 18.
In another embodiment, optical emitter 24A, 24B, and 24C have a real-time clock. The date and/or time from the real-time clock or another time-based parameter or other natural parameter is used to select the encryption key used by the optical emitters 24A, 24B, and 24C. For example, a hash algorithm of the date and time, and potentially a manually updated key, can be used to generate an updated value for the encryption key every ten minutes. Thus, the optical emitters 24A, 24B, and 24C periodically change the encryption key automatically. Generally, any information used for encryption, other than the data value that is encrypted at an optical emitter 24A, 24B, and 24C and recovered at the phase selector 18, can be part of the encryption key. Similarly, any information used for decryption, other than the data value, can be part of the decryption key. The encryption and decryption keys can be dependent on a manually provided key, such as a key provided on thumbwheel switches and/or from a coupled portable computer, and/or the current date and time. The encryption and decryption keys can be manually updated, for example, in response to detection of unauthorized usage, and/or automatically updated based on the current data and time.
Upon passing authorization, phase selectors constructed in accordance with the present invention can be configured to use an identification code in various ways. In one configuration, the phase selector 18 is provided with a list of authorized identification codes providing an additional level of authorization. In this configuration, the phase selector 18 confirms that the vehicle is indeed fully authorized to preempt the normal traffic signal sequence. If the transmitted code does not match one of the authorized codes on the list, preemption does not occur.
In another configuration, the phase selector 18 logs all preemption requests by recording the time of preemption, direction of preemption, duration of preemption, identification code, confirmation of passage of a requesting vehicle within a predetermined range of a detector, and denial of a preemption request due to improper authorization. In this configuration, attempted abuse of an optical traffic preemption system can be discovered by examining the logged information.
In another embodiment of the present invention, an optical traffic preemption system helps run a mass transit system more efficiently. An authorized mass transit vehicle having an optical emitter constructed in accordance with the present invention, such as the bus 22 in
Unlike an emergency vehicle 20, a mass transit vehicle 22 equipped with an optical emitter may not require total preemption. In one embodiment, a traffic signal offset is used to give preference to a mass transit vehicle 22, while still allowing all approaches to the intersection to be serviced. For example, a traffic signal controller that normally allows traffic to flow 50 percent of the time in each direction responds to repeated phase requests from the phase selector to allow traffic flowing in the direction of the mass transit vehicle 22 to proceed 65 percent of the time and traffic flowing in the other direction to flow 35 percent of the time. In this embodiment, the actual offset can be fixed to allow the mass transit vehicle 22 to have a predictable advantage. Generally, proper authorization should be validated before executing an offset for a mass transit vehicle 22.
In a typical installation, the traffic preemption system does not actually control the lights at a traffic intersection. Rather, the phase selector 18 alternately issues phase requests to and withdraws phase requests from the traffic signal controller, and the traffic signal controller 14 determines whether the phase requests can be granted. The traffic signal controller 14 may also receive phase requests originating from other sources, such as a nearby railroad crossing, in which case the traffic signal controller 14 may determine that the phase request from the other source be granted before the phase request from the phase selector. However, as a practical matter, the preemption system can affect a traffic intersection 10 and create a traffic signal offset by monitoring the traffic signal controller sequence and repeatedly issuing phase requests that will most likely be granted.
According to a specific example embodiment, the traffic preemption system of
The phase selector 18 includes the two channels, with each channel having signal processing circuitry (36A and 36B) and a decoder circuit (38A and 38B), a main phase selector processor 40, long term memory 42, an external data port 43 and a real time clock 44. The main phase selector processor 40 communicates with the traffic signal controller 14, which in turn controls the traffic lights 12.
With reference to the channel one, the signal processing circuitry 36A receives an analog signal provided by the detector assembly 16A. The signal processing circuitry 36A processes the analog signal and produces a digital signal that is received by the decoder circuit 38A. The decoder circuit 38A extracts data from the digital signal, validates proper authorization and provides the data to the main phase selector processor 40. Channel two is similarly configured, with the detector assembly 16B coupled to the signal processing circuitry 36B, which in turn is coupled to the decoder circuit 38B.
The long term memory 42 is implemented using electronically erasable programmable read only memory (EEPROM). The long term memory 42 is coupled to the main phase selector processor 40 and is used to store a list of authorized identification codes and to log data. It will be appreciated that keys 39 can be stored in long term memory 42.
The decoder circuits 38A and 38B use keys 39 to check for proper authorization. In one embodiment, a received vehicle identification code is decrypted using the decryption key and the resulting decrypted vehicle identification code is checked against a list of authorized identification codes from long term memory 42. In another embodiment, a received vehicle identification code and the decryption key is used to seed a pseudo-random number generator to produce a pseudo-random number that is compared with a validation code transmitted received along with the vehicle identification code. For proper authorization, the pseudo-random number should match the validation code and the received vehicle identification code should match an entry in a list of authorized identification codes from long term memory 42.
The external data port 43 is used for coupling the phase selector 18 to a computer. In one embodiment, external data port 43 is an RS232 serial port. Typically, portable computers are used in the field for exchanging data with and configuring a phase selector. Logged data is removed from the phase selector 18 via the external data port 43 and keys 39 and a list of authorized identification codes is stored in the phase selector 18 via the external data port 43. The external data port 43 can also be accessed remotely using a wired or wireless modem, local-area network or other such device.
Keys 39 can be updated from a portable computer via external data port 43. In addition, main phase selector processor 40 can update keys 39 in response to a command received from detector assemblies 16A and 16B to update the keys that has been validated for proper authorization by a decoder circuit 38A or 38B.
The real time clock 44 provides the main phase selector processor 40 with the actual time. The real time clock 44 provides time stamps that can be logged to the long term memory 42 and is used for timing other events, including timed update of the validation algorithm and/or keys 39. In one embodiment, the validation algorithm and values for keys 39 are selected from a list stored in memory 42 at specified times, such as once a day. In another embodiment, the validation algorithm and values for keys 39 are generated from the date and time or another time-based parameter provided by the real time clock 44 or another natural parameter. For example, a hash algorithm of the date, time, and/or a current value for manually provided key is used to periodically generate values automatically for keys 39. In yet another embodiment, the validation algorithm and keys 39 are updated with new values at a particular time, such as three in the morning of the day after receiving the new values for validation algorithm and values for keys 39.
In an alternative embodiment, the validation algorithm uses multiple validation keys. For example, real time clock 44 can be incompletely synchronized with a similar real time clock in each of emitters 24A, 24B and 24C and validation using two validation keys may compensate for validation keys that are periodically updated using incompletely synchronized real-time clocks. During a first half or other initial portion of the period for a validation key based on real-time clock 44, decoder circuits 38A and 38B can perform validation using the validation key and the prior validation key. Validation is successful if either validation attempt succeeds. During a second half or other final portion of the period for a validation key based on real-time clock 44, decoder circuits 38A and 38B can similarly perform validation using the validation key and the next validation key.
In various embodiments, the data transmitted by emitters 24A, 24B and 24C and received by detectors 16A and 16B is provided by interleaving the presence or absence of an optical pulse between pulses of a chain of pulses transmitted at a particular frequency. For example, the presence of an interleaved optical pulse can represent a binary one and the absence of an interleaved optical pulse can represent a binary zero. The particular frequency can determine a priority, such as a frequency of approximately 10 Hz for an emergency vehicle and a frequency of approximately 14 Hz for a mass transit vehicle.
In various other embodiments, the data transmitted by emitters 24A, 24B and 24C and received by detectors 16A and 16B is provided by transmitting a chain of pulses that either shifts or does not shift the nominal frequency of each pulse. For example, not shifting the nominal frequency of a pulse can correspond to one data value and shifting a specific pulse to a slightly higher or slight lower frequency relative to the nominal frequency can represent other data values. For example, not shifting the nominal frequency, shifting down the nominal frequency by one unit, shifting up the nominal frequency by one unit, and shifting up the nominal frequency by two units can correspond to data values for a pulse of zero, one, two, and three, respectively.
Once enabled and equipped with the appropriate code selection, the light pulse signaling can be emitted from the vehicle-installed equipment toward the equipment at the intersection, as shown at node 68. As shown at node 84, the light pulse signaling is detected at the intersection and a data signal is passed to node 86. Assuming that the vehicle identification code is authorized, the data signal includes the vehicle identification code as encrypted using the key selected as discussed above in connection with 25 of
While certain aspects of the present invention have been described with reference to several particular example embodiments, those skilled in the art will recognize that many changes may be made thereto. For example, the optical emitter and detector circuitry, as well as the data signal processing (data look-up, data sending and formatting, and data en/decryption) can be implemented using a signal processing circuit arrangement including one or more processors, volatile and/or nonvolatile memory, and a combination of one or more analogy, digital, discrete, programmable-logic, semi-programmable logic, non-programmable logic circuits. Examples of such circuits for comparable signal processing tasks are described in the previously-discussed commercial devices and various references including, for example, U.S. Pat. Nos. 5,172,113; 5,519,389; 5,539,398; and 4,162,447. Such implementations and adaptations are embraced by the above-discussed embodiments without departing from the spirit and scope of the present invention, aspects of which are set forth in the following claims.
Number | Name | Date | Kind |
---|---|---|---|
3550078 | Long | Dec 1970 | A |
3831039 | Henschel | Aug 1974 | A |
4162447 | Teshirogi et al. | Jul 1979 | A |
4162477 | Munkberg | Jul 1979 | A |
4228419 | Anderson | Oct 1980 | A |
4230992 | Munkberg | Oct 1980 | A |
4234967 | Henschel | Nov 1980 | A |
4463339 | Frick et al. | Jul 1984 | A |
4680811 | Harper et al. | Jul 1987 | A |
4704610 | Smith et al. | Nov 1987 | A |
4717913 | Elger | Jan 1988 | A |
4727600 | Avakian | Feb 1988 | A |
4734881 | Klein et al. | Mar 1988 | A |
4914434 | Morgan et al. | Apr 1990 | A |
4970439 | Stopa | Nov 1990 | A |
4972185 | Stopa et al. | Nov 1990 | A |
4992790 | Montgomery | Feb 1991 | A |
5014052 | Obeck | May 1991 | A |
5159480 | Gordon et al. | Oct 1992 | A |
5172113 | Hamer | Dec 1992 | A |
5187373 | Gregori | Feb 1993 | A |
5187476 | Hamer | Feb 1993 | A |
5202683 | Hamer et al. | Apr 1993 | A |
5519389 | DeGunther et al. | May 1996 | A |
5539398 | Hall et al. | Jul 1996 | A |
5602739 | Haagenstad et al. | Feb 1997 | A |
5926113 | Jones et al. | Jul 1999 | A |
5986575 | Jones et al. | Nov 1999 | A |
6243026 | Jones et al. | Jun 2001 | B1 |
6281808 | Glier et al. | Aug 2001 | B1 |
6429812 | Hoffberg | Aug 2002 | B1 |
6621420 | Poursartip | Sep 2003 | B1 |
Number | Date | Country | |
---|---|---|---|
20060273924 A1 | Dec 2006 | US |