The present application is a United States national stage application claiming the benefit of PCT/US01/24616, filed on Aug. 6, 2001, which claims the benefit of U.S. application Ser. No. 09/640,785, filed on Aug. 21, 2000, now abandoned.
The present invention relates generally to computer data and information systems, and more particularly to computer tools for storing, processing, and displaying fleet vehicle information.
In today's business environment, it is common for companies to own a large amount (i.e., a fleet) of motor vehicles. A company, depending on their particular line of business, may have a fleet of passenger cars, light trucks, vans, heavy trucks or any combination of theses types of vehicles. Typical examples of such companies include commercial courier services, moving companies, freight and trucking companies, as well as passenger vehicle leasing companies and passenger carriers.
Such companies must typically manage each of the hundreds of vehicle within their fleets. The most critical management operations include the maintenance and repair, and maximizing the efficiency of these vehicles. In addition, timely reporting of key information related to the vehicle, such as mileage, trip information, fluid status, and other parameters must be available in a timely fashion. In order to maximize profits, a company must maximize the amount of time each vehicle spends performing its intended function. That is, a company must minimize the amount of time each vehicle spends in a service environment (i.e., a repair and maintenance facility). Further complicating the situation is the fact that the vehicles within a company's fleet may operate throughout the nation's roads, but repair and maintenance facilities and vehicle configuration facilities are sparsely located in certain geographic locations.
One management technique has traditionally been to schedule vehicles for routine inspections on a rotating basis. While this technique has improved efficiency somewhat, it still involves taking a percentage of the fleet's vehicles out of service when in fact, they may not need to be in a service environment or may not be available to be serviced or configured.
One development has led to the decrease in the amount of time vehicles needed to be in the service environment during routine inspections. That is, during the '70s and early 1980's manufacturers started using electronic means to control engine functions and diagnose engine problems. This effort was primarily motivated to meet new and tougher Environmental Protection Agency (EPA) emission standards. Nevertheless, onboard diagnostic systems eventually became more sophisticated. Vehicles today typically include several controllers attached to a vehicle data bus that allow the engine and parts of the vehicle's chassis, body and accessory devices to be monitored.
Several instruments were designed to take advantage of vehicles onboard diagnostic and control systems. First, there were large pieces of equipment to perform diagnostics and these were followed by hand-held devices. These instruments increased the speed and efficiency of vehicle maintenance and configuration. Such instruments, however, did not eliminate the need for vehicles, which may be operating nation-wide, to be brought to a centralized (or regional) repair and maintenance facility. That is, these devices needed to be connected directly to the vehicle. Further, there still has not been any systematic way for companies to remotely diagnose, monitor or configure their fleet's vehicles. That is, routine maintenance or configuration on a rotating basis is arbitrary and not based on which specific vehicles really require service.
Therefore, given the above, what is needed is a system, method, and computer program product for remote vehicle diagnostics, monitoring, configuring and reprogramming. The system, method, and computer program product should allow fleet managers, without heavy infrastructure additions, to take advantage of today's vehicle's onboard diagnostic systems, computer advances, and mobile communications in order to remotely diagnose, monitor and reprogram their fleet's vehicles.
The present invention meets the above-mentioned needs by providing a system, method, and computer program product for remote vehicle diagnostics, monitoring, configuring and reprogramming.
The system of the present invention allows a user to perform total fleet logistics by facilitating vehicle parameter changes, vehicle health tracking, and receipt of vehicle maintenance need indications, thus eliminating the need to physically bring vehicles to a repair and maintenance facility. More specifically, the system includes a plurality of vehicles each having an onboard unit as described herein. The onboard unit is coupled to the vehicle data bus of each of the plurality of vehicles, which in turn is connected to the vehicle's several controllers.
The system further includes an application server which provides the user with a graphical user interface (GUI) (e.g., Web pages over the Internet) in order to send and receive data from each of the plurality of vehicles. A repository database, accessible via the application server, is also included which stores information related to the subscribers of the system and the specifics in relation to the vehicles in their fleet.
An onboard unit server, coupled to the application server, is also included which contains means to convert command data between a format understandable by the user using the GUI (e.g., change max cruise speed to 55 MPH”) and a format understandable by the vehicle data bus of each of the plurality of vehicles (e.g., a binary data stream). Finally, the system includes a communications means, coupled to the onboard unit server, for handling (mobile) communications between the onboard unit server and the onboard units located on each of the plurality of vehicles.
The method and computer program product of the present invention includes the steps of accessing the repository database in order to provide the user with a list of specific vehicles within the fleet and the vehicles' associated vehicle parameters. Next, a command from the user is received via the GUI. The command typically includes information specifying at least one vehicle within the fleet and at least one vehicle parameter. Then, the command is stored in the repository database along with the time and date that the command was received from the user. Next, the command is converted from a format understandable by the user using the GUI, to a format understandable by the vehicle data bus of the at least one vehicle within the fleet.
The method and computer program product of the present invention further includes sending the command, via a wireless mobile communications system to the onboard unit located on the targeted vehicle within the fleet. This causes the previously specified vehicle parameter to be read or changed (depending on whether, for example, the command was related to diagnostic or reprogramming activities respectively). Next, an acknowledgment of the command is received from the vehicle via the wireless mobile communications system. Finally, the acknowledgment is stored in the repository database so that the user may later retrieve it using the GUI.
One advantage of the present invention is that it allows a large fleet (e.g., several hundred) of commercial vehicles (e.g., a fleet of commercial delivery vans and/or trucks), of different makes and models, to be remotely configured, monitored, re-calibrated, and diagnosed without having to be brought to a centralized location (e.g., company headquarters). That is, the present invention provides a means for obtaining “total population” vehicle information.
Another advantage of the present invention is that it provides tampering alert notification should any vehicle parameter be changed without authorization once the vehicle leaves a company location or headquarters.
Another advantage of the present invention is that it provides users (e.g., fleet managers, vehicle distributors, vehicle dealers and the like) with a consistent graphical user interface, regardless of the vehicle makes and models that comprise their fleet.
Another advantage of the present invention is that it enables users to obtain real-time fleet characteristics, trend analysis and diagnostics, as well as allow fleet managers to provide real-time driver/fleet notification.
Yet another advantage of the present invention is that it allows parametric data capture, diagnostic code capture, trip data capture, system reconfiguration, system re-calibration, and correlation analysis to be performed on a fleet of vehicles on a customer-specified schedule.
Further features and advantages of the invention as well as the structure and operation of various embodiments of the present invention are described in detail below with reference to the accompanying drawings.
The features and advantages of the present invention will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference numbers indicate identical or functionally similar elements. Additionally, the left-most digit of a reference number identifies the drawing in which the reference number first appears.
The present invention relates to a system, method, and computer program product for remote commercial vehicle diagnostics, monitoring, configuring and reprogramming. The remote vehicle diagnostics, monitoring, configuration and reprogramming tool described herein will become essential to any business concern which deals with commercial fleet maintenance and service operations (i.e., it is a “total fleet logistics” tool).
In an embodiment of the present invention, an application service provider provides and allows access, on a subscriber basis, to a remote vehicle diagnostics, monitoring, configuration and reprogramming tool via the global Internet. That is, the application service provider would provide the hardware (e.g., servers) and software (e.g., database) infrastructure, application software, customer support, and billing mechanism to allow its customers (e.g., fleet managers, vehicle distributors, vehicle dealers, original equipment manufacturers (OEM), leasing/rental companies, and the like) to remotely diagnose, monitor, configure and/or reprogram, as appropriate, the vehicles within a fleet. The tool would be used by subscribers to obtain real-time fleet characteristics, trend analysis and diagnostics, to perform manual, dynamic or rule based configuration, as well as allow fleet managers to provide real-time driver/fleet notification.
More specifically, the application service provider would provide a World Wide Web site where a fleet manager, using a computer and Web browser software, to remotely diagnose, monitor, configure, and/or reprogram the commercial vehicles for which they are responsible. Such fleet managers would include, for example, those responsible for overseeing a fleet of trucks for a commercial trucking or delivery company. Other users of the remote vehicle diagnostics, monitoring, configuring, and reprogramming tool would also include vehicle dealers, OEMs, and distributors who wish to obtain data concerning the performance of the vehicles within a fleet for “market intelligence” or “improved performance” purposes.
In an alternate embodiment, the remote vehicle diagnostics, monitoring, configuring and reprogramming tool of the present invention maybe run, instead of on the global Internet, locally on proprietary equipment owned by the customers (i.e., the fleet managers, vehicle distributors, vehicle dealers and the like) as a stand alone software application. In yet another embodiment, users may access the remote vehicle diagnostics, monitoring, configuring and reprogramming tool of the present invention via direct dial-up lines rather than through the global Internet.
The remote vehicle diagnostics, monitoring, configuring, and reprogramming tool of the present invention would be utilized, as suggested above, by fleet manager users, for example, in order to facilitate vehicle parameter changes, track vehicle health, and/or receive indications of vehicle maintenance needs.
In an alternate embodiment, the remote vehicle diagnostics, monitoring, configuring and reprogramming tool of the present invention would be utilized by a vehicle component suppliers to re-calibrate any vehicle component, perform firmware downloads, perform component failure analysis, and determine wear characteristics.
In an alternate embodiment, the remote vehicle diagnostics, monitoring, configuring and reprogramming tool of the present invention would be utilized by vehicle manufacturers to analyze quality of components (and thus, suppliers) utilized in their manufacturing processes, and/or retrieve and manage warranty information.
In yet another embodiment, the remote vehicle diagnostics, monitoring, configuring and reprogramming tool of the present invention would be utilized by vehicle leasing companies to receive indications of vehicle maintenance needs, monitor vehicle use and abuse, and/or monitor lessee trip information.
In yet another alternate embodiment, the remote vehicle diagnostics, monitoring and reprogramming tool of the present invention would be utilized by vehicle dealers or vehicle repair facility personnel to perform proactive data analysis, perform pre-arrival diagnostics, re-calibrate vehicle components, and/or perform firmware downloads.
The present invention is described in terms of the above examples. This is for convenience only and is not intended to limit the application of the present invention. In fact, after reading the following description, it will be apparent to one skilled in the relevant art(s) how to implement the following invention in alternative embodiments (e.g., to remotely manage different types and different aspects of vehicles—non-commercial or commercial, etc.).
The terms “user,” “subscriber,” “company,” “business concern,” and the plural form of these terms are used interchangeably throughout herein to refer to those who would access, use, and/or benefit from the remote vehicle diagnostics, monitoring and reprogramming tool of the present invention.
Referring to
The TFL system 100 includes a plurality of users 102 (e.g., fleet managers, vehicle distributors, OEMs, vehicle dealers and the like) which would access to system 100 using a personal computer (PC) (e.g., an IBM™ or compatible PC workstation running the Microsoft® Windows 95/98™ or Windows NT™ operating system, Macintosh® computer running the Mac® OS operating system, or the like), running a commercially available Web browser. In alternative embodiments, users 102 may access TFL system 100 using any processing device including, but not limited to, a desktop computer, laptop, palmtop, workstation, set-top box, personal data assistant (PDA), and the like.
The users 102 would connect to the parts (i.e., infrastructure) of the TFL system 100 which are provided by the TFL application service provider (i.e., elements 106–124 of
TFL system 100 also includes two servers—an application server 108 and an onboard unit server (“OBU”) 118.
The application server 108 is the “back-bone” (i.e., TFL processing) of the present invention. It provides the “front-end” for the TFL system 100. That is, application server 108 includes a Web service 110 which is a typical Web server process running at a Web site which sends out Web pages in response to Hypertext Transfer Protocol (HTTP) requests from remote browsers (i.e., subscribers 102 of the TFL application service provider ). More specifically, a Web server 112 provides graphical user interface (GUI) “front-end” screens to users 102 of the TFL system 100 in the form of Web pages. These Web pages, when sent to the subscriber's PC (or the like), would result in GUI screens being displayed. In an embodiment of the present invention, the server 112 would be implemented using a Netscape Enterprise or compatible Web server, an Apache web server or the like. Connected to the server 112 is an application server 114 which facilitates the data and commands between a repository database 116 and the Web pages on Web server 112. In an embodiment of the present invention, the server 114 would be an Oracle application server.
Also included in the application server 108 is a TFL repository database 116. Database 116, in an embodiment of the present invention, is a Sun E250 machine running the Oracle 8iRDBMS (relational database management server) software. The database 116 is the central store for all information within the TFL system 100 and also stores Web page executable code (e.g., PL/SQL and HTML).
The OBU server 118 is responsible, generally, for routing data between the smart device onboard units 130 within each vehicle (explained in detail below) and the application server 108. The OBU server 118 includes three software modules, implemented in a high level programming language such as the C++ programming language—a dispatcher 120, a communications service 122, and a conversion service 124. The dispatcher 120 is a software module resident on the OBU server 118 and is responsible for serving as an intermediary to route messages between the remaining two components of the OBU server 118 (i.e., the communications service 122 and the conversion service 124).
The communications service 122 is a module that contains software code logic that is responsible for handling in-bound and out-bound vehicle data and commands. As will be described in more detail below, the communications service 122 is configured for the specific means of mobile communications employed within TFL system 100 (e.g., satellite or terrestrial wireless).
The conversion service 124 is a module that contains software code logic that is responsible for converting raw vehicle data (i.e., telemetry) into human-readable format, and vice-versa. In an embodiment of the present invention, the conversion service 124 module includes a relational database implemented in Microsoft® Access or the like which stores telemetry data definitions for a plurality of vehicle makes, models, and associated components. Such definitions would include vehicle component masks, bit length, and data stream order definitions for various vehicle (and component) manufacturers in order to perform the binary (raw) data conversion into human-readable form, and vice-versa.
TFL system 100 also includes an administrative workstation 134. This workstation can be used by personnel of the TFL application service provider to upload, update, and maintain subscriber information (e.g., logins, passwords, etc.) and fleet-related data for each of the users 102 that subscribe to the TFL system 100. The administrative workstation 134 may also be used to monitor and log statistics related to the application server 108 and system 100 in general. Also, the administrative workstation 134 may be used “off-line” by subscribers 102 of the TFL system 100 in order to enter configuration data for supported controllers 132, etc. within their fleet(s). This data is eventually stored in TFL repository database 116.
TFL system 100 also includes a plurality of vehicles 128 (i.e., the “fleet” being remotely diagnosed, monitored and/or reprogrammed). (
More detailed descriptions of the TFL system 100 components, as well their functionality, are provided below.
Referring to
In a preferred embodiment of the present invention, the onboard unit 130 is a small (e.g., 5″×6″×2″) computer board which contains a 32-bit RISC architecture central processing unit (CPU) 202 such as the Intel® Strong ARM 32-bit chip, a 4 megabyte (MB) random access memory (RAM) 204, a 4 MB flash memory 206, a power supply 208, and a compact flash interface memory 210.
Further, onboard unit 130 also includes a user interface channel ports 212 and a vehicle interface channel ports 214. In an embodiment of the present invention, the user interface channel ports 212 contain interface modules for several wire and wireless mobile communications standard devices such as universal serial bus (USB), standard parallel ports, standard serial ports, satellite communications, code division multiple access (CDMA), time division multiple access (TDMA), the Bluetooth® wireless standard chip, intellect data bus (IDB), and the like. This would allow the TFL application service provider to utilize several of the available providers 126 to communicate with vehicles 128 in their subscriber's fleets.
In an embodiment of the present invention, the vehicle interface channel ports 214 contain interface modules for several standard automotive application program interfaces (API's). Such API's include Serial Data Communications Between Microcomputer Systems in Heavy-Duty Vehicle Applications, Document No. J1708, Society of Automotive Engineers (SAE) of Warrendale, Pa. (October 1993); Joint SAE/TMC Electronic Data Interchange Between Microcomputer Systems in Heavy-Duty Vehicle Applications, Document No. J1587, SAE (July 1998); and Recommended Practice for Truck and Bus Control and Communications Network, Document No. J1939, SAE (April 2000); all of which are incorporated herein by reference in their entirety. Other such API's include SAE's onboard diagnostic system (OBD) II standard and several vehicle manufacturer specific/proprietary interfaces and discrete measurement point interfaces.
Referring to
The command server module 210 contains software code logic that is responsible for handling the receiving and transmitting of the communications from the provider 126 and relays such data to either the data parser/requester module 230 or to one of the application specific modules 220, as applicable.
The application specific modules 220 (one for each manufacturer specific controller 132 within the vehicle) each contain software code logic that is responsible for handling interfacing between the command server module 210 to the vehicle data bus 240 (via data parser/requestor module 230) for application specific (i.e., manufacturer specific) parameter readings, alerts, configuration or reprogramming data (as explained in detail below).
The data parser/requester module 230 contains software code logic that is also responsible for handling direct interfacing between the command server module 210 to the vehicle data bus 240 for non-application specific (i.e., “generic” SAE J1708 or SAE1939 discrete measurement points) parameter readings, alerts, configuration or reprogramming data (as explained in detail below).
In an embodiment of the present invention, the onboard unit 130 is designed to be compliant with the SAE's Joint SAE/TMC Recommended Environmental Practices for Electronic Equipment Design (Heavy-Duty Trucks), Document No. J1455 (August 1994) standard, which is incorporated herein by reference in its entirety, because it will be a component included (or installed) within vehicles 132. That is, the onboard unit 130 is physically mounted on the vehicle 128, electrically coupled to the vehicle data bus 240 via the wiring harness of the vehicle 128, and packaged in a manner that resists environmental seepage of dirt and moisture, as well as withstands operational vibration. Further, the onboard unit 130 must be built to withstand, in a preferred embodiment, industrial temperature ranges of −40 to 85 degrees centigrade.
In an alternate embodiment of the present invention, the onboard unit 130 would include a global positioning (GPS) receiver component, which would allow the TFL system 100 to provide location-based logistical management features to users 102.
More details of the onboard unit 130 architecture and functionality are provided below in connection with the description of the TFL system 100 operation.
Referring to
In step 304, the user 102 enters their password in order to login into the TFL system 100. Such login would be provided by a Web page sent out over the Internet 104 (and accessed by user 102 using a PC or the like) by Web service 110. Subscriber information would be kept by the TFL application service provider in the TFL repository database 116.
After the user is logged in, in step 306, the user then enters their vehicle list selection. The vehicle choices (i.e., entire fleet(s), division(s) of vehicles within a fleet, or specific individual vehicles) available for selection are stored for each subscriber in the TFL repository database 116. Once presented with a GUI of available vehicles, in step 308, the user 102 would then enter the parameter(s) (e.g., max cruise speed) they would like to reprogram on the specific vehicle(s) selected in step 306. In step 310, the user 102 would enter the new setting(s) (e.g., 55 MPH) for the selected parameter(s).
In step 312, the application server 108 receives the settings and translates the reprogramming request into a list of commands—one command for each vehicle—and forwards these commands to the dispatcher module 120 located on the onboard unit (OBU) server 118. In step 314, the dispatcher 120 forwards each command to the conversion service 124. In step 316, the conversion service 124 translates the user entered setting(s) (e.g., “55 MPH”) to a binary format understandable to the onboard unit 130 such that it can process the command according to the requirements of the targeted vehicle controller 132. This translation is facilitated by the relational database (as described above) located within the conversion service 124. Once translated, the command (now in binary) is sent back to the dispatcher 120.
In step 318, the conversion service 124 forwards the command to the communications service 122. In step 320, the communications service 122 further encodes and compresses the command (for efficiency of transmission), and routes the command, (passing the firewall 106 and) via the Internet 104, to the communications provider 126. In step 322, the communications provider 126 forwards the command to the onboard unit 130 on the vehicle 128.
As mentioned above, step 322 may be accomplished, depending on the embodiment of the present invention (i.e., according to the provider 126 selected by or available to the TFL application service provider), via any wire or wireless mobile communications standard such as USB, parallel ports, serial ports, satellite communications, CDMA, TDMA, the Bluetooth® wireless standard, IDB, and the like.
In an embodiment of the present invention, more than one communication service provider 126 (and thus more than one means of mobile communications) would be utilized by the TFL application service provider in order to maximize the number of different vehicles 128 belonging to different subscribers 102 that may be diagnosed, monitored and/or reprogrammed by the TFL system 100. Consequently, the OBU server 118 would contain multiple communications service 122 modules, each configured for specific communication service provider 126.
In step 324, the command is received by the command server module 210 executing on the CPU 202 of the onboard unit 130. In step 326, the command is forwarded to the vehicle data bus 240 by the data parser requester module 230 executing on the CPU 202 of the onboard unit 130. The command thus finally reaches the appropriate controller 132 within the vehicle 128. Control flow 300 then ends as indicated by step 328.
As will be apparent to one skilled in the relevant art(s) after reading the above, an acknowledgment of the reprogramming command from the vehicle 128 to the user 102 would flow in the reverse direction from control flow 300. Further, the acknowledgment would be stored in database 116 for the user 102 to (later) retrieve.
It should be understood that control flow 300, which highlights the reprogramming functionality of TFL system 100, is presented for example purposes only. The software architecture of the present invention is sufficiently flexible and configurable such that users 102 may navigate through the system 100 in ways other than that shown in
As mentioned above, the application server 108 will provide a GUI for users 102 (e.g., fleet managers, vehicle distributors, OEMs, vehicle dealers and the like) to enter inputs and receive the outputs as described, for example, in control flow 300. In an embodiment of the present invention, the GUI screens of the present invention may be classified into three categories: alerts (e.g., threshold alerts, tamper warnings, etc.), parameter readings, and reprogramming.
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
Referring to
It should be understood that the screens shown in this section (i.e.,
In an embodiment of the present invention, reprogramming commands to be sent to specific vehicles 128 and parameter readings to be read from specific vehicles 128 can be scheduled by the TFL system 100. That is, the user 102 may specify, for example, pre-defined time periods that parameter readings should be taken for specific vehicles within a fleet. Such pre-defined time periods can be hourly, daily, x times per day, weekly, y times per week, monthly, etc.
The present invention (i.e., TFL system 100, onboard unit 130, control flow 300, and/or any part(s) thereof) may be implemented using hardware, software or a combination thereof and may be implemented in one or more computer systems or other processing systems. In fact, in one embodiment, the invention is directed toward one or more computer systems capable of carrying out the functionality described herein. An example of a computer system 700 is shown in
Computer system 700 can include a display interface 705 that forwards graphics, text, and other data from the communication infrastructure 702 (or from a frame buffer not shown) for display on the display unit 730.
Computer system 700 also includes a main memory 708, preferably random access memory (RAM), and may also include a secondary memory 710. The secondary memory 710 may include, for example, a hard disk drive 712 and/or a removable storage drive 714, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive 714 reads from and/or writes to a removable storage unit 718 in a well known manner. Removable storage unit 718, represents a floppy disk, magnetic tape, optical disk, etc. which is read by and written to by removable storage drive 714. As will be appreciated, the removable storage unit 118 includes a computer usable storage medium having stored therein computer software and/or data.
In alternative embodiments, secondary memory 710 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 700. Such means may include, for example, a removable storage unit 722 and an interface 720. Examples of such may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, and other removable storage units 722 and interfaces 720 which allow software and data to be transferred from the removable storage unit 722 to computer system 700.
Computer system 700 may also include a communications interface 724. Communications interface 724 allows software and data to be transferred between computer system 700 and external devices. Examples of communications interface 724 may include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card, etc. Software and data transferred via communications interface 724 are in the form of signals 728 which may be electronic, electromagnetic, optical or other signals capable of being received by communications interface 724. These signals 728 are provided to communications interface 724 via a communications path (i.e., channel) 726. This channel 726 carries signals 728 and may be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels.
In this document, the terms “computer program medium” and “computer usable medium” are used to generally refer to media such as removable storage drive 714, a hard disk installed in hard disk drive 712, and signals 728. These computer program products are means for providing software to computer system 700. The invention is directed to such computer program products.
Computer programs (also called computer control logic) are stored in main memory 708 and/or secondary memory 710. Computer programs may also be received via communications interface 724. Such computer programs, when executed, enable the computer system 700 to perform the features of the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor 704 to perform the features of the present invention. Accordingly, such computer programs represent controllers of the computer system 700.
In an embodiment where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 700 using removable storage drive 714, hard drive 712 or communications interface 724. The control logic (software), when executed by the processor 704, causes the processor 704 to perform the functions of the invention as described herein.
In another embodiment, the invention is implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s).
In yet another embodiment, the invention is implemented using a combination of both hardware and software.
While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example, and not limitation. It will be apparent to persons skilled in the relevant art(s) that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Thus the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US01/24616 | 8/6/2001 | WO | 00 | 11/10/2003 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO02/17184 | 2/28/2002 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4067061 | Juhasz | Jan 1978 | A |
4258421 | Juhasz et al. | Mar 1981 | A |
4630292 | Judricich et al. | Dec 1986 | A |
4677429 | Glotzbach | Jun 1987 | A |
4809177 | Windle et al. | Feb 1989 | A |
4926331 | Windle et al. | May 1990 | A |
4939652 | Steiner | Jul 1990 | A |
4979170 | Gilhousen et al. | Dec 1990 | A |
5157610 | Asano et al. | Oct 1992 | A |
5337236 | Fogg et al. | Aug 1994 | A |
5359528 | Haendel et al. | Oct 1994 | A |
5426585 | Stepper et al. | Jun 1995 | A |
5442553 | Parrillo | Aug 1995 | A |
5579233 | Burns | Nov 1996 | A |
5581464 | Woll et al. | Dec 1996 | A |
5612875 | Haendel et al. | Mar 1997 | A |
5619412 | Hapka | Apr 1997 | A |
5648768 | Bouve | Jul 1997 | A |
5680328 | Skorupski et al. | Oct 1997 | A |
5682317 | Keeler et al. | Oct 1997 | A |
5694322 | Westerlage et al. | Dec 1997 | A |
5708308 | Katayama et al. | Jan 1998 | A |
5721678 | Widl | Feb 1998 | A |
5729458 | Poppen | Mar 1998 | A |
5732074 | Spaur et al. | Mar 1998 | A |
5742915 | Stafford | Apr 1998 | A |
5787373 | Migues et al. | Jul 1998 | A |
5803043 | Bayron et al. | Sep 1998 | A |
5815071 | Doyle | Sep 1998 | A |
5815822 | Iu | Sep 1998 | A |
5831519 | Pederson et al. | Nov 1998 | A |
5835376 | Smith et al. | Nov 1998 | A |
5835868 | McElroy et al. | Nov 1998 | A |
5864831 | Schuessler | Jan 1999 | A |
5917434 | Murphy | Jun 1999 | A |
5919239 | Fraker et al. | Jul 1999 | A |
5928291 | Jenkins et al. | Jul 1999 | A |
5931877 | Smith et al. | Aug 1999 | A |
5937421 | Petrov et al. | Aug 1999 | A |
5938716 | Shutty et al. | Aug 1999 | A |
5953706 | Patel | Sep 1999 | A |
5954773 | Luper | Sep 1999 | A |
5974356 | Doyle et al. | Oct 1999 | A |
5974396 | Anderson | Oct 1999 | A |
5999876 | Irons et al. | Dec 1999 | A |
6008740 | Hopkins | Dec 1999 | A |
6026384 | Poppen | Feb 2000 | A |
6060981 | Landes | May 2000 | A |
6064929 | Migues et al. | May 2000 | A |
6078873 | Shutty et al. | Jun 2000 | A |
6085725 | Goode et al. | Jul 2000 | A |
6087965 | Murphy | Jul 2000 | A |
6088650 | Schipper et al. | Jul 2000 | A |
6089207 | Goode et al. | Jul 2000 | A |
6091340 | Lee et al. | Jul 2000 | A |
6292724 | Apsell et al. | Sep 2001 | B1 |
6295492 | Lang et al. | Sep 2001 | B1 |
20010018628 | Jenkins et al. | Aug 2001 | A1 |
20010020204 | Runyon et al. | Sep 2001 | A1 |
20020007237 | Phung et al. | Jan 2002 | A1 |
20020016655 | Joao | Feb 2002 | A1 |
20020049523 | Diaz et al. | Apr 2002 | A1 |
20020156558 | Hanson et al. | Oct 2002 | A1 |
20020173885 | Lowrey et al. | Nov 2002 | A1 |
20020177926 | Lockwood et al. | Nov 2002 | A1 |
20030004624 | Wilson et al. | Jan 2003 | A1 |
20030093199 | Mavreas | May 2003 | A1 |
20030105565 | Loda et al. | Jun 2003 | A1 |
20030158656 | David | Aug 2003 | A1 |
20040039504 | Cofee et al. | Feb 2004 | A1 |
20050203673 | El-Hajj et al. | Sep 2005 | A1 |
Number | Date | Country |
---|---|---|
44 23 328 | Jan 1996 | DE |
0 681 951 | Nov 1995 | EP |
0 581 558 | Apr 1997 | EP |
1 398 005 | Jun 1975 | GB |
2 288 892 | Nov 1995 | GB |
2 340 974 | Mar 2000 | GB |
0153605 | May 1997 | KR |
3 66 478 | Aug 1999 | TW |
WO 03077205 | Sep 2003 | WO |
Number | Date | Country | |
---|---|---|---|
20040167689 A1 | Aug 2004 | US |