Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
INTRUSIVE DIAGNOSTICS AND PROGNOSTICS USING CYCLE EFFICIENCY MANAGEMENT
Document Type and Number:
WIPO Patent Application WO/2019/046182
Kind Code:
A1
Abstract:
An apparatus includes an internal information circuit structured to receive internal information of a vehicle; a static information circuit structured to receive static information external to the vehicle; a dynamic information circuit structured to receive dynamic information external to the vehicle; an aftertreatment system goal determination circuit structured to determine a goal for an aftertreatment system of the vehicle based on at least one of the internal information, the static information, and the dynamic information; and a powertrain configuration circuit structured to configure a powertrain component of the vehicle to achieve the goal.

Inventors:
CHUNODKAR APURVA ARVIND (US)
TULPULE PINAK JAYANT (US)
HAAS MICHAEL (US)
SUJAN VIVEK ANAND (US)
FOLLEN KENNETH M (US)
SHOOK PATRICK J (US)
Application Number:
PCT/US2018/048120
Publication Date:
March 07, 2019
Filing Date:
August 27, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CUMMINS INC (US)
International Classes:
F01N3/20; B60W10/06; F01N9/00
Domestic Patent References:
WO2016130517A12016-08-18
WO2016206289A12016-12-29
WO2014163046A12014-10-09
Foreign References:
US20160040615A12016-02-11
US20170051654A12017-02-23
US20150198445A12015-07-16
US20080183345A12008-07-31
Attorney, Agent or Firm:
LUETTGEN, David G. et al. (US)
Download PDF:
Claims:
WHAT IS CLAIMED IS:

1. An apparatus comprising:

an internal information circuit structured to receive internal information of a vehicle;

a static information circuit structured to receive static information external to the vehicle;

a dynamic information circuit structured to receive dynamic information external to the vehicle;

an aftertreatment system goal determination circuit structured to determine a goal for an aftertreatment system of the vehicle based on at least one of the internal

information, the static information, and the dynamic information; and

a powertrain configuration circuit structured to configure a powertrain component of the vehicle to achieve the goal.

2. The apparatus of claim 1, wherein the static information includes map data.

3. The apparatus of claim 1, wherein the dynamic information includes at least one of traffic density data and construction zone data.

4. The apparatus of claim 1, wherein the goal includes running an aftertreatment diagnostic with the internal information circuit at a frequency that is inversely proportional to a confidence in failure of the aftertreatment system.

5. The apparatus of claim 4, wherein the powertrain configuration circuit is structured to create motoring events to enable more frequent aftertreatment diagnostics.

6. The apparatus of claim 4, wherein the confidence in failure is based on a comparison of a signature of a NOx sensor to a threshold.

7. The apparatus of claim 1, wherein the goal includes maintaining a steady state operation of the aftertreatment system for a predetermined period of time.

8. The apparatus of claim 7, wherein a steady state of operation includes a steady state engine-out NOx detected by the internal information circuit.

9. The apparatus of claim 7, wherein the powertrain configuration circuit is structured to dynamically change a powertrain reference in response to a predicted change in route and environment to maintain at least one of engine power, torque, or speed demand at a predetermined operating point so that the steady state operation is achieved.

10. The apparatus of claim 1, wherein the goal includes performing diagnostics on a NOx sensor.

11. The apparatus of claim 10, wherein the powertrain configuration circuit is structured to create a motoring event for a predetermined duration to achieve the goal.

12. The apparatus of claim 10, wherein the aftertreatment system goal determination circuit I structured to predict a motoring duration that is sufficiently long for NOx sensor diagnostics based on the internal vehicle information, the static information, and the dynamic information; and

wherein the powertrain configuration circuit is structured to change at least one of a cruise speed, a throttle pedal response, or a coasting management feature to force a motoring event for the duration while satisfying a mission demand.

13. The apparatus of claim 1, wherein the goal includes matching an operating state of the aftertreatment system to a mission demand.

14. The apparatus of claim 13, wherein the powertrain configuration circuit is structured to select a route to match the operating state.

15. The apparatus of claim 13, wherein the apparatus is structured to communicate the operating state to a fleet management system; and

wherein the fleet management system is structured to match missions with available vehicles.

16. The apparatus of claim 1, wherein the goal includes creating an engine-out NOx spike.

17. The apparatus of claim 16, wherein the powertrain configuration circuit is structured to create a gear shift event.

18. The apparatus of claim 17, wherein the aftertreatment system goal determination circuit is structured to set a shift event duration to control an engine-out NOx magnitude and duration and to create the opportunity to run a NOx sensor diagnosis during the gear shift event.

19. A method comprising:

receiving, by a processing circuit, internal information of a vehicle;

receiving, by the processing circuit, static information external to the vehicle; receiving, by the processing circuit, dynamic information external to the vehicle; determining, by the processing circuit, a goal for an aftertreatment system of the vehicle based on at least one of the internal information, the static information, and the dynamic information; and

configuring, by the processing circuit, a powertrain component of the vehicle to achieve the goal.

20. A system comprising:

a controller structured to:

receive internal information of a vehicle;

receive static information external to the vehicle;

receive dynamic information external to the vehicle;

determine a goal for an aftertreatment system of the vehicle based on at least one of the internal information, the static information, and the dynamic information; and

configure a powertrain component of the vehicle to achieve the goal.

Description:
INTRUSIVE DIAGNOSTICS AND PROGNOSTICS USING CYCLE

EFFICIENCY MANAGEMENT

CROSS-REFERENCE TO RELATED APPLICATION

[0001] This application claims the benefit of and priority to U.S. Application No.

62/551,024, filed August 28, 2017, the entire content of which is hereby incorporated by reference in its entirety.

TECHNICAL FIELD

[0002] The present disclosure relates to cycle efficiency management (CEM), and more specifically to intrusive diagnostics and prognostics using CEM.

BACKGROUND

[0003] Cycle efficiency management (CEM) can be used to optimize fuel economy over a drive cycle. A CEM system can control powertrain components including an engine, transmission, accessories, final drive, and wheels to optimize fuel economy. A CEM system can also provide an operator of the vehicle with information regarding anticipated and currently desired operation behavior. CEM systems can help users reduce fuel consumption during a drive cycle or over the course of a mission or assignment, optimize parameters based on a set of new physics (e.g., vehicle speed), manage acceleration and available power, and intelligently make powertrain control decisions based on an improved awareness of the environment.

SUMMARY

[0004] One embodiment relates to an apparatus. The apparatus includes an internal information circuit, a static information circuit, a dynamic information circuit, an aftertreatment system goal determination circuit, and a powertrain configuration circuit. The internal information circuit is structured to receive internal information of a vehicle. The static information circuit is structured to receive static information external to the vehicle. The dynamic information circuit is structured to receive dynamic information external to the vehicle. The aftertreatment system goal determination circuit is structured to determine a goal for an aftertreatment system of the vehicle based on at least one of the internal information, the static information, and the dynamic information. The powertrain configuration circuit is structured to configure a powertrain component of the vehicle to achieve the goal.

[0005] Another embodiment relates to a method. The method includes receiving, by a processing circuit, internal information of a vehicle; receiving, by the processing circuit, static information external to the vehicle; receiving, by the processing circuit, dynamic information external to the vehicle; determining, by the processing circuit, a goal for an aftertreatment system of the vehicle based on at least one of the internal information, the static information, and the dynamic information; and configuring, by the processing circuit, a powertrain component of the vehicle to achieve the goal.

[0006] Another embodiment relates to a system. The system includes a controller structured to receive internal information of a vehicle, receive static information external to the vehicle; receive dynamic information external to the vehicle; determine a goal for an aftertreatment system of the vehicle based on at least one of the internal information, the static information, and the dynamic information; and configure a powertrain component of the vehicle to achieve the goal.

[0007] These and other features, together with the organization and manner of operation thereof, will become apparent from the following detailed description when taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE FIGURES

[0008] FIG. 1 is a block diagram of subsystems of a vehicle including a cycle efficiency management (CEM) system, according to an example embodiment.

[0009] FIG. 2 is a schematic diagram of an intelligent transportation system, according to an example embodiment.

[0010] FIG. 3 is a schematic diagram of an aftertreatment system, according to an example embodiment.

[0011] FIG. 4 is a schematic diagram of the CEM of FIG. 1, according to an example embodiment. [0012] FIG. 5 is a graph showing engine motoring events and a NOx sensor diagnostic signature, according to an example embodiment.

[0013] FIG. 6 is a graph showing engine out NOx levels with dynamic reference and without dynamic reference, according to an example embodiment.

[0014] FIG. 7 is a flow diagram of a method for intrusive diagnostics and prognostics using CEM, according to an example embodiment.

DETAILED DESCRIPTION

[0015] For the purposes of promoting an understanding of the principles of the disclosure, reference will now be made to the embodiments illustrated in the drawings and specific language will be used to describe the same. It will nevertheless be understood that no limitation of the scope of the disclosure is thereby intended, any alterations and further modifications in the illustrated embodiments, and any further applications of the principles of the disclosure as illustrated therein as would normally occur to one skilled in the art to which the disclosure relates are contemplated herein.

[0016] Referring to the Figures generally, the various embodiments disclosed herein relate to systems and methods for intrusive diagnostics and prognostics using CEM or a CEM system based on internal vehicle information, static external vehicle information (e.g., information that may change with distance but not with time), and dynamic external vehicle information (e.g., information that may change with time). According to the present disclosure, a controller may be communicably coupled with one or more external data provision and collection sources (e.g., a telematics system provider, another vehicle via a Vehicle-to- Vehicle network, a Vehicle-to-X network), such that the controller may receive data and have a knowledge of one or more upcoming conditions of the vehicle. Based on these conditions, the CEM may determine a goal for aftertreatment system diagnostics and/or prognostics. Based on the determined goal, the CEM may

configuration powertrain components in order to achieve the goal.

[0017] By implementing the systems and methods as disclosed herein, the CEM system can receive improved quality of sensed inputs or new inputs required by diagnostics, create better operating conditions for running key diagnostics, perform fault isolation tests in-mission to narrow down a root cause of component or system failure indicated by onboard diagnostics (OBD), and predict imminent system or component failures (e.g., prognostics).

[0018] Referring now to FIG. 1, a block diagram of an engine system 100 on which cycle efficiency management (CEM) 110 is implemented is shown according to an example embodiment. The engine system 100 may work on a vehicle. The vehicle may be any type of passenger or commercial automobile, such as a car, truck, sport utility vehicle, cross-over vehicle, van, minivan, automobile, tractor, and so on.

[0019] The CEM 110 is configured to optimize fuel economy of the vehicle over its drive cycles by using input from powertrain components (e.g., including engine 121, transmission 122, final drive 123), an operator of the vehicle (e.g., through HMI 124 and throttle pedal 126), GPS/RLM 125, and various sensors (e.g., wind speed & miscellaneous sensor 127). As used herein, the powertrain (or powertrain system) refers to the components that provide the power to propel the vehicle, including the engine 121, transmission 122, final drive 124, drive/propeller shaft, differentials (not shown in the present figure), and so on. In operation, the engine 121 combusts fuel to generate mechanical power to rotate a crankshaft. The transmission 122 receives the rotating crankshaft and manipulates the engine speed (i.e., the rotation of the crankshaft) to control a rotation speed of the drive/propeller shaft, which is also coupled to the transmission 122. The rotating drive shaft is received by a differential, which transmits the rotational power to a final drive 123 (e.g., wheels) to effect a movement of the vehicle.

[0020] Types of input received by the CEM 110 include mission parameters such as route information, gross vehicle weight (GVW), and target time from the GPS/RLM 125, environment information such as wind speed, humidity, temperature, etc. from the wind speed and miscellaneous sensors 127, and driver decisions such as gas pedal position of the throttle pedal 126 and gear from the HMI 124. The GPS/RLM 125 can receive information to determine coordinate positioning and/or supply data in advance of an operation or forthcoming positions or in real-time as the vehicle is operated and rout traversed. Alternate embodiments provide for road terrain data to be maintained in computer storage and downloaded to the CEM 110 prior to the start of a trip or transmitted wirelessly over-the-air at any time, for example, by using cellular technology. The positioning information provided by the GPS/RLM 125 can be used to determine where the vehicle is on a route, the current road condition, and to predict future road conditions and related engine speed and fueling requirements.

[0021] The HMI 124 enables the operator of the vehicle to communicate with the vehicle and the CEM 110. For example, the HMI 124 may include, but is not limited, an interactive display (e.g., a touchscreen), an accelerator pedal, a clutch pedal, a shifter for the transmission, a cruise control input setting, etc. Via the HMI 124, the operator can designate preferred characteristics of one or more vehicle parameters.

[0022] Based on the input, the CEM 110 can make intelligent decisions to help optimize operation of the powertrain. In particular, the CEM 110 outputs instructions to various control modules of the vehicle, including engine management 131, transmission management 132, final drive management 133, operator management 134, and road load management 135. Types of output from the CEM 110 include fuel burn to engine management 131, vehicle speed and vehicle acceleration to transmission management 132 and final drive management 133. These managements 131 through 133 may actively manipulate the vehicle speed profile to reduce fuel consumption over the mission, and manage available power based on estimated power demand to reduce excess fuel burn. In further embodiments, the CEM 110 uses improved knowledge of vehicle and mission parameters to more intelligently control parasitic devices for reduced fuel consumption.

[0023] The CEM 110 can also provide the operator with anticipated and currently desired vehicle operation behavior to help the operator make strategic decisions about mission parameters for reduced fuel consumption (e.g., vehicle cruise setpoint, fuel refill recommendation,). For example, the CEM 110 may use the HMI 124 to guide the operator for appropriate vehicle speed/power targets, as well as transmission gear selection targets. In other words, the CEM 110 can perform a supervisory role in connection with vehicle operation and instruct the vehicle operator with recommendation via the HMI 124. For example, the CEM 110 may perform a supervisory function by determining whether down-shifting, no-shifting, or up-shifting the transmission from its current gear will yield a more fuel efficient solution in the long run. By down-shifting the transmission, the engine 121 operates at a higher speed while producing the same amount of driveshaft power. The higher engine speed in the down-shifted mode may place the engine 121 at an operating point of low efficiency. This low efficiency will cause more fuel to be used in producing the same amount of power. This excess fuel energy will go toward generating heat that will cause an increase in the system temperature. In contrast, the same concept can be used to create an up-shift event to potentially place the engine at a more efficient operating condition, thereby reducing the amount of fuel energy used in generating heat. Thus, by shifting the transmission up or down, the system operating temperature of the engine system can be controlled. As an example, the CEM 110 determines whether to recommend changing to or maintaining a low efficiency operation, for example, by recommending, to the operator via the HMI 124 to increase the engine speed via a down shift operation. The recommendation can be provided as a visual indicator on a display, such as a touch screen display, that is visible to the vehicle operator, and/or audibly indicated over a speaker or earphones in the vehicle cockpit.

[0024] The CEM 110 also instructs advanced diagnostics 140 and aftertreatment system management 150. In some embodiments, the advanced diagnostic 140 may be configured as any type of on-board detection system (e.g., OBD II, OBD I, EOBD, JOBD). In other embodiments, the advanced diagnostics 140 may be any type of diagnostic and prognostic system included with vehicles. The advanced diagnostics 140 may be communicably coupled to one or more sensors, physical or virtual, positioned throughout the vehicle such that the advanced diagnostics 140 may receive data indicative of one or more fault conditions, potential symptoms, operating conditions to determine a status of a component (e.g., healthy, problematic, malfunctioning). The aftertreatment system management 150 is configured to manage the operation of an aftertreatment system of the vehicle. The structure of the aftertreatment system will be discussed in detail with reference to FIG. 3.

[0025] In some embodiments, the components of the engine system 100 communicate with the CEM 110 or one another via a wired connection, which may be a serial cable, a CAT5 cable, or any other form of wired connection. In one embodiment, the components of engine system 100 are connected to a vehicle network such as a control area network (CAN) or a manufacturer proprietary network. Each of the components is structured to transmit and/or receive data (e.g., instructions, commands, signals, values) to/from one or more of other components shown in FIG. 1. [0026] Referring now to FIG. 2, a schematic diagram of an intelligent transportation system 200 is shown according to one embodiment. The intelligent transportation system (ITS) 200 is structured to provide an environment that facilitates and allows the exchange of information or data (e.g., communications) between a vehicle and one or more other components or sources. In this regard and for example, the ITS 200 may include telematics systems that facilitate the acquisition and transmission of data acquired regarding the operation of the vehicle. As shown and generally speaking, the ITS 200 includes a vehicle 210 communicably coupled via a network 202 to each of an external static information source 220 and an external dynamic information source 230, a component or system outside of the vehicle 210. The engine system 100 of FIG. 1 can be implemented on the vehicle 210. The information/data may be stored inside or outside of the vehicle 210.

[0027] The network 202 may be any type of communication protocol that facilitates the exchange of information between and among the vehicle 210 and the external static and dynamic information sources 220 and 230. In this regard, the network 202 may communicably couple the vehicle 210 with each of the external static and dynamic information sources 220 and 230. In one embodiment, the network 202 may be configured as a wireless network. In this regard, the vehicle 210 may wirelessly transmit and receive data from at least one of the external static and dynamic information sources 220 and 230. The wireless network may be any type of wireless network, such as Wi-Fi, WiMax, Geographical Information System (GIS), Internet, Radio, Bluetooth, Zigbee, satellite, radio, Cellular, Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Long Term Evolution (LTE), light signaling, etc. In an alternate embodiment, the network 202 may be configured as a wired network or a combination of wired and wireless protocol. For example, the CEM 110 of the vehicle 210 may electrically, communicably, and/or operatively couple via fiber optic cable to the network 202 to selectively transmit and receive data wirelessly to and from at least one of the external static and dynamic information sources 220 and 230.

[0028] The external static information source 220 may be any information (e.g., data, value) provider capable of providing external static information, where external static information refers to information or data that may vary as a function of position (e.g., the grade of the road may vary along a route) but is substantially unchanging with respect to time. In this regard, the external static information source 220 may include one or more map based databases 222, where the map based database 222 includes static information (i.e., map data) including, but not limited to, road grade data (e.g., the road grade at various spots along various routes), speed limit data (e.g., posted speed limits in various road locations), elevation or altitude data at various points along a route, curvature data at various points along a route, location of intersections along a route, etc. It should be understood that the present disclosure contemplates other sources of external static information (e.g., a global positioning system satellite that provides latitude, longitude, and/or elevation data), such that the database configuration is not meant to be limiting or intended to be the only type of static information source contemplated.

[0029] The external dynamic information source 230 may be any external dynamic information (e.g., data, value) provider, where external dynamic information refers to information or data that may vary as a function of both time and location (e.g.,

construction speed limits). In this regard, the external dynamic information source 230 may include any source capable of providing the external dynamic information.

Accordingly, the external dynamic information source 230 may include vehicle-to- vehicle 232 communications. In this regard, the vehicle 210 may communicate with one or more other vehicles directly (e.g., via NFC) to obtain data regarding one or more upcoming conditions for the vehicle 210. In another embodiment, the external dynamic information source 230 may include a vehicle-to-X 234 configuration, where the "X" refers to any remote information providing source. For example, the remote information providing source may include one or more servers, computers, mobile devices, etc. Accordingly, the external dynamic information may include, but is not limited to, a traffic density at a particular location at a particular time, a weather condition at a particular location at a particular time, etc. Like the external static information sources 220, it should be understood that the present disclosure contemplates other sources of external dynamic information sources, such that the depicted examples are not meant to be limiting or intended to be the only type of dynamic information source contemplated.

[0030] The internal vehicle information 214 may include, but is not limited to, information from the powertrain (e.g., including engine 121, transmission 122, final drive 123), HMI 124, GPS/RLM 125, throttle pedal 126, wind speed and miscellaneous sensor 127, advanced diagnostics 140, and aftertreatment system management 150. For example, the internal information 214 may include, but is not limited to, the vehicle speed, the current transmission gear/setting, the load on the vehicle/engine, the throttle position, a set cruise control speed, data relating to the exhaust aftertreatment system, output power, engine speed, fluid consumption rate (e.g., fuel consumption rate, diesel exhaust fluid consumption rate), any received engine/vehicle faults (e.g., a fault code indicating a low amount of diesel exhaust fluid), engine operating characteristics (e.g., whether all the cylinders are activated or which cylinders are deactivated), and so on. Data relating to the exhaust aftertreatment system includes, but is not limited to, NOx emissions, particulate matter emissions, and conversion efficiency of one or more catalysts in the system (e.g., the selective catalytic reduction catalyst). The internal vehicle information 214 may be stored and selectively transmitted to one or more desired sources (e.g., another vehicle such as in a vehicle-to-vehicle communication session, a remote operator).

[0031] Referring to FIG. 3, a schematic diagram of an aftertreatment system 300 is shown according to an example embodiment. The aftertreatment system 300 is in fluid communication with an engine 301, which may correspond to the engine 121 of FIG. 1. The aftertreatment system 300 receives the exhaust from the combustion process in the engine 301 and reduces the emissions from the engine 301 to less environmentally harmful emissions (e.g., reduce the NOx amount, reduce the emitted particulate matter amount). The aftertreatment system 300 may include any component used to reduce diesel exhaust emissions, such as a selective catalytic reduction catalyst (SCR) 307, a diesel oxidation catalyst (DOC) 303, a diesel particulate filter (DPF) 304, a diesel exhaust fluid (DEF) doser 306 with a supply of diesel exhaust fluid, an ammonia slip catalyst (ASC) 308, and a plurality of sensors for monitoring the engine 301 (e.g., NOx sensors 302 and 309). It should be understood that other embodiments may include different, less than, and/or additional components than that listed above. In the aftertreatment system 300 that includes the particulate filter(s) (e.g., DPF 304), active particulate filter regeneration can serve in part as a regeneration event for the catalytic device(s) and particulate filter(s) to remove urea deposits and to desorb hydrocarbons. In some embodiments, the

aftertreatment system 300 does not include particulate filter(s) but only catalytic device(s) and there are no active particulate filter regeneration events. An example aftertreatment system with particulate filtration is shown in FIG. 3 for illustration only but not for limitation. [0032] Components in the aftertreatment system 300 can be arranged in any suitable manner. In the aftertreatment system 300 shown in FIG. 3, the DOC 303 is disposed upstream of the DPF 304, which is disposed upstream of the SCR 307, which is disposed upstream of the ASC 308. The DEF 306 is disposed between the DPF 304 and the SCR 307. The DOC 303 may include, for example, palladium, platinum and/or aluminum oxide which serves as catalysts to oxidize the hydrocarbons and carbon monoxide with oxygen to form carbon dioxide and water. The DPF 304 can remove diesel particulate matter or soot from the exhaust gas of the engine 301. The SCR 307 may include a reduction catalyst that facilitates conversion of NOx to N 2 by a reductant. In some embodiments, the SCR 307 includes a vanadia catalyst. In other embodiments, the SCR 307 includes zeolite, base metals, and/or any other suitable type of reduction catalyst. The reductant used to convert NOx to N 2 includes, for example, hydrocarbon, ammonia, urea, diesel exhaust fluid (DEF), or any suitable reductant. The reductant may be injected into the exhaust flow path by the DEF 306 in liquid and/or gaseous form, such as aqueous solutions of urea, ammonia, anhydrous ammonia, or other reductants suitable for SCR operations. The ASC 308 is used downstream of the SCR 307 to reduce the ammonia slip.

[0033] The upstream NOx sensor 302 is configured to monitor the NOx emissions from the engine (also known as engine out NOx (EONOx)). The downstream NOx sensor 309 is configured to monitor the NOx emissions from the tailpipe (also known as system out NOx (SONOx)). Conversion efficiency is described as the efficiency with which an aftertreatment device can convert NOx into other constituents. In one example

embodiment, the measured values of NOx entering and exiting the aftertreatment system 300 can be utilized to determine a conversion efficiency of the aftertreatment system 300 using the following:

NOx conversion efficiency = (EONOx— SONOx) /EONOx

[0034] The NOx conversion efficiency provides an indication of the efficacy of the aftertreatment system 300. For example, a relatively higher conversion efficiency indicates that a substantial amount of the NOx present in the exhaust stream is being reduced to nitrogen and other less pollutant compounds. However, a relatively lower conversion efficiency indicates that the NOx in the exhaust gas stream is substantially not being converted to nitrogen and other less pollutant compounds. [0035] Referring now to FIG. 4, the structure of a CEM 400 is shown according to one example embodiment. The CEM 400 may correspond to the CEM 110 of FIG. 1. The CEM 400 is shown to include a processor 401 and memory 402. The processor 401 may be implemented as a general-purpose processor, an application specific integrated circuit (ASIC), one or more field programmable gate arrays (FPGAs), a digital signal processor (DSP), a group of processing components, or other suitable electronic processing components. The memory 402 (e.g., NVRAM, RAM, ROM, Flash Memory, hard disk storage) may store data and/or computer code for facilitating the various processes described herein. Thus, the memory 402 may provide computer code or instructions to the CEM 400 for executing the processes described herein. Moreover, the memory 402 may be or include tangible, non-transient volatile memory or non-volatile memory.

Accordingly, the memory 402 may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described herein.

[0036] The CEM 400 is shown to include various circuits for completing the activities described herein. In one embodiment, the circuits of the CEM 400 may utilize the processor 401 and/or memory 402 to accomplish, perform, or otherwise implement various actions described herein with respect to each particular circuit. In this

embodiment, the processor 401 and/or memory 402 may be considered to be shared components across each circuit. In another embodiment, the circuits (or at least one of the circuits) may include their own dedicated processing circuit having a processor and a memory device. In this latter embodiment, the circuit may be structured as an integrated circuit or an otherwise integrated processing component. In yet another embodiment, the activities and functionalities of circuits may be embodied in the memory 402, or combined in multiple circuits, or as a single circuit. In this regard and while various circuits with particular functionality are shown in FIG. 4, it should be understood that the ECM 400 may include any number of circuits for completing the functions and activities described herein. For example, the activities of multiple circuits may be combined as a single circuit, as an additional circuit(s) with additional functionality, etc.

[0037] Certain operations of the CEM 400 described herein include operations to interpret and/or to determine one or more parameters. Interpreting or determining, as utilized herein, includes receiving values by any method known in the art, including at least receiving values from a datalink or network communication, receiving an electronic signal (e.g. a voltage, frequency, current, or PWM signal) indicative of the value, receiving a computer generated parameter indicative of the value, reading the value from a memory location on a non-transient computer readable storage medium, receiving the value as a run-time parameter by any means known in the art, and/or by receiving a value by which the interpreted parameter can be calculated, and/or by referencing a default value that is interpreted to be the parameter value.

[0038] More particularly, the CEM 400 includes an internal information circuit 403, a static information circuit 404, a dynamic information circuit 405, an aftertreatment system goal determination circuit 406, and a powertrain configuration circuit 407 for completing the activities described herein. The internal information circuit 403 is structured to receive, gather, and/or acquire internal vehicle information 420. In one embodiment, the internal information circuit 403 includes one or more data acquisition devices within the vehicle, such as the advanced diagnostics 140 that facilitate acquisition of the internal vehicle information 420. In another embodiment, the internal information circuit 403 includes communication circuitry for facilitating reception of the internal vehicle information 420. In still another embodiment, the internal information circuit 403 includes machine-readable content for receiving and storing the internal information. In yet another embodiment, the internal information circuit 403 includes any combination of data acquisition devices, communication circuitry, and machine readable content. As mentioned above, the internal information may include any type of internal information regarding the vehicle and from the vehicle itself (e.g., a vehicle speed, a load on the vehicle, a torque output, a transmission setting, an engine temperature, one or more fault codes or a history of fault codes). The internal information circuit 403 is structured to provide the acquired and/or gathered internal information to the aftertreatment system goal determination circuit 406.

[0039] The static information circuit 404 is structured to receive, gather, and/or acquire external static information 430 from one or more external static information sources (e.g., the map database 222) and provide or transmit the external static information 430 to the aftertreatment system goal determination circuit 406. The static information circuit 404 may also store the received external static information 430, where the storage

configuration may be variable from application-to-application (e.g., store external static information for the past thirty days). In this regard, the static information circuit 404 may correlate various pieces of static information with frequently traveled routes for the vehicle in order to facilitate fast retrieval and use. As mentioned above, the external static information 430 may include any piece of information or data that is static in nature (e.g., unchanging with respect to location, such as the road grade at a various location).

Accordingly, the static information circuit 404 may include communication circuitry or other communication devices that facilitate the acquisition and reception of the external static information 430. In another embodiment, the static information circuit 404 may include machine readable content for facilitating the acquisition and reception of the external static information 430. In yet another embodiment, the static information circuit

404 may include any combination of hardware (e.g., communication components) and machine-readable content.

[0040] The dynamic information circuit 405 is structured to receive, acquire, and/or gather external dynamic information 440 from one or more external dynamic information sources (e.g., a remote device, another vehicle, an infrastructure component). As mentioned above, the external dynamic information 440 may include any information or data that may change with respect to time and distance (e.g., the dynamic speed limits at construction sites). In response, the dynamic information circuit 405 is structured to transmit or provide the received external dynamic information 440 to the aftertreatment system goal determination circuit 406. Similar to the static information circuit 430, the dynamic information circuit 405 may include one or more configurability options that dictate how long various pieces of dynamic information are stored. For example, the dynamic speed limit may be measured at a certain rate at a certain time and location, which is stored by the dynamic information circuit 405. The dynamic information circuit

405 may update the stored dynamic speed limit upon a manual update from the operator (e.g., a refresh input received via the HMI 124) and/or upon a configuration that dictates or defines how often the dynamic data is provided to the CEM 400. This may change as the vehicle is operated. Accordingly, the dynamic information circuit 405 is structured to update or trigger an update by sending an alert to the dynamic external information source in advance of the vehicle travelling a certain location. Like the static information circuit 404, the dynamic information circuit 405 may include communication circuitry (e.g., relays, wiring) or other communication devices that facilitate the acquisition and reception of the external dynamic information 440. In another embodiment, the dynamic information circuit 405 may include machine readable content for facilitating the acquisition and reception of the external static information 440. In yet another

embodiment, the dynamic information circuit 405 may include any combination of hardware (e.g., communication components) and machine-readable content.

[0041] In regard to either the external dynamic information or the external static information, both pieces may be received by each respective circuit 404 and 405 in advance of the vehicle traveling a route or reaching a location. For example, if an operator designates a route for the vehicle, then the circuits 404 and 405 may provide requests to the external static and dynamic information sources to receive the data at various points along the route. The external dynamic information may be periodically updated to account for changing conditions. If the operator does not designate a route, the circuits 404 and 405, based on the current location and direction of travel of the vehicle, may utilize a relatively smaller window to request static and dynamic external information for locations/spots/positions that the vehicle is likely to encounter. For example, if the operator is on a road with no turn-offs for two miles, the circuits 404 and 405 can request dynamic and static external information for those two miles because the CEM 400 may determine that the vehicle must continue on this path. If the vehicle is in a busy area in a metropolitan area where one of several different routes may be traversed at any moment, the circuits 404 and 405 may employ a region or zone of interest for acquiring external static and dynamic information (e.g., a two square mile radius or any predefined radius about the vehicle). The received data may then be correlated or associated with wherever the operator chooses to direct the vehicle within that two square mile zone of interest. This zone of interest may then move with the vehicle. Of course, it should be understood that the present disclosure contemplates other techniques, methods, and strategies that may be used to control the frequency of external dynamic and static data providing based on location, such that all possible strategies are intended to fall within the spirit and scope of the present disclosure.

[0042] The aftertreatment system goal determination circuit 406 is structured to determine a goal for aftertreatment diagnostics based on at least one of internal vehicle information 420, external static information 430, and external dynamic information 440.

The powertrain configuration circuit 407 is structured to configure powertrain components based on the goal determined by the circuit 406. Various examples are discussed in detail below.

[0043] In a first example, the aftertreatment system goal determination circuit 406 determines a goal of running aftertreatment diagnostics more frequently based on confidence in failure of the aftertreatment system. In other words, the internal information circuit 403 will run aftertreatment diagnostics at a frequency that is inversely proportional to a confidence in failure of the aftertreatment system. The powertrain configuration circuit 407 creates motoring events more frequently to enable more frequent aftertreatment diagnostics. The upstream and downstream NOx sensors 302 and 309 of the

aftertreatment system 300 are prone to moisture damaging because the sensors rely upon an electrochemical or catalytic reaction to generate a current, the magnitude of which is indicative of the NOx concentration. When the NOx sensors fail, the diagnostic results of the sensors may show a "signature," as shown in FIG. 5. The NOx sensor diagnostic signature is proximate to a failure threshold. Based on the signature, which indicates a likelihood of NOx sensor failure, the aftertreatment system goal determination circuit 406 determines to run the diagnostics more frequently.

[0044] To achieve the goal of more frequent aftertreatment diagnostics, the powertrain configuration circuit 407 creates motoring events more frequently. As used herein, motoring event refers to zero fueling condition. The motoring may include, for example, driving the vehicle and then coasting it, or driving a vehicle on a dyno. In either situation, the engine 301 can motor based on kinetic energy of the crank and transmission rotating, and would quickly slow down. During a motoring event, fresh intake air flows through the engine 301, but no fuel is sprayed into the cylinders to be combusted. Engine-out gases contain cooler air due to no combustion, but compression events and cylinder heat transfer still happen, as well as trace of NOx due leftover gases from previous combustion events. The powertrain configuration circuit 407 instructs powertrain management (e.g., engine management 131, transmission management 132, final drive management 133) to dynamically recalibrate to create motoring events more frequently. Motoring events enable NOx sensor diagnostics to run more frequently and either increase or decrease confidence in sensor failure, which can be fed back to powertrain management references. In further embodiments, the powertrain configuration circuit 407 can disable coasting to enable greater motoring duration. [0045] In a second example, the aftertreatment system goal determination circuit 406 determines a goal of maintaining steady state operation of aftertreatment system for a period of time. The powertrain configuration circuit 407 creates dynamic powertrain references to maintain the steady state operation. Diagnostics need steady state operation, e.g., steady state engine-out NOx for an extended period of time. The steady state period can be augmented through intrusive operation using powertrain controls. In particular, the powertrain configuration circuit 407 dynamically changes powertrain reference such as cruise speed, gear request, to maintain a steady specified power demand on the engine. The powertrain references are changed in response to predicted changes in route and environment to maintain engine power, torque or speed demand at a specified operating point so that a specific diagnostic such as NOx sensor diagnostic or SCR conversion efficiency diagnostic can run. FIG. 6 shows the cruise speed reference with and without dynamic references and the engine-out NOx as a result of dynamic references comparing to no dynamic references. Besides engine-out NOx, the steady operation state can be the steady state for other parameters, such as aftertreatment temperature, exhaust flow, or the like. Predictive information can be used to set up references that smooth torque transients and thus avoiding poisoning the aftertreatment system and improving durability.

[0046] In a third example, the aftertreatment system goal determination circuit 406 determines a goal of performing diagnostics on NOx sensors. The powertrain

configuration circuit 407 creates motoring events with sufficient duration for NOx sensor diagnostics. As discussed above with reference to the first example, a motoring event refers to zero fueling condition. During a motoring event, fresh intake air flows through the engine 301, but no fuel is sprayed into the cylinders to be combusted. Engine-out gases contain cooler air due to no combustion, but compression events and cylinder heat transfer still happen, as well as trace of NOx due leftover gases from previous combustion events. The aftertreatment system goal determination circuit 406 predicts a motoring duration that is sufficient long for NOx sensor diagnostics based on the internal vehicle information, external static information, and external dynamic information received. Then the powertrain configuration circuit 407 changes cruise speed, throttle pedal response, and/or selectively calibrates coasting management features to force the engine into motoring for the duration while satisfying the driver/mission demand. In some embodiments, coasting management features can be disabled to create more opportunities for motoring.

[0047] Besides NOx sensor diagnostics, the method can be applied to EGR dP sensor diagnostics. The aftertreatment system goal determination circuit 406 predicts a motoring duration that is sufficient long for EGR dP sensor diagnostics based on the internal vehicle information, external static information, and external dynamic information received.

Accordingly, the powertrain configuration circuit 407 changes cruise speed, throttle pedal response, and/or selectively calibrates coasting management features to force the engine into motoring for the duration while satisfying the driver/mission demand. Then the EGR valve is shut off, and the EGR dP sensor diagnostics are performed. In some

embodiments, during idle coasting, EGR valve is shut off and engine can be force to run at specific speed to support auto zero routine.

[0048] In a fourth example, the aftertreatment system goal determination circuit 406 determines a goal of matching operating state of the aftertreatment system. The powertrain configuration circuit 407 selects a route to match the operating state. Each aftertreatment system may have different constraints because each may go through various conditions throughout the life of the system in addition to part-to-part variation due to manufacturing variability. This example can be used by a fleet operator to match routes/missions with available vehicles. Information about a specific aftertreatment system can be tracked, such as urea consumption, number of regeneration events, temperature duty cycle, etc. The aftertreatment system goal determination circuit 406 compiles these parameters as well as instantaneous data from sensors and diagnosis to determine operating state of the specific aftertreatment system, such as the constraints of the aftertreatment system. Based on the operating state of the system, the powertrain configuration circuit 407 selects matching route. For example, the route that matches constraints on aftertreatment operation can be selected, service with additional load can be postponed, the route that may create conditions to monitor potential failure can be selected, the route that supports de-greening system can be selected, the route that has specific altitudes constraints can be selected, and so on. In some embodiments, the powertrain configuration circuit 407 may consider road speed limit or traffic information for the planned route. For example, a route with at least one of the heavy cargo weight and high grades can be selected to maintain higher temperature in the aftertreatment system. Or, a route can be selected which is capable of maintaining high temperatures for cleaning out the aftertreatment system.

[0049] In a fifth example, the aftertreatment system goal determination circuit 406 determines a goal of creating a NOx spike. The powertrain configuration circuit 407 creates a gear shift event. During each gear shift event for automated manual transmission (AMT) and manual transmission (MT), the engine experiences a process of decelerating, idling, and then accelerating for speed matching. In each of these steps, a sudden change in EGR fresh air quantity causes a NOx spike. The NOx spike can be utilized in performing engine-out NOx sensor diagnosis and SCR system diagnosis. If the SCR is loaded with urea, then EONOx and SONOx values can be compared in order to diagnose the SCR. Further, the repeated nature of NOx spikes during each gear shift event and thus repeated SCR diagnosis can track a progression of SCR system health. In some embodiments, the aftertreatment system goal determination circuit 406 sets a shift event duration to effectively control the NOx magnitude and duration and to create the opportunity to run specific diagnosis during the shift event. The powertrain configuration circuit 407 then creates a shift event with the sufficient duration by configuring the operations of the engine and the transmission.

[0050] Besides EONOx spikes, the method can be used to create periodic changes in EONOx levels. During the period changes, the EONOx sensor can be diagnosed by comparing the actual sensor output with a predicted output from a virtual sensor at various operating points. If the SCR is loaded with urea, then EONOx and SONOx values can be compared to diagnose the SCR performance. In particular, the aftertreatment system goal determination circuit 406 determines a goal of creating periodic changes in EONOx levels. Accordingly, the powertrain configuration circuit 407 changes gear shift references, vehicle acceleration limits, engine power limits, engine torque limits, etc. to cause periodic changes in the EONOx level.

[0051] The CEM 400 may optionally include an operation optimization circuit 408 structured to optimize the vehicle operation according to the powertrain configuration set by the powertrain configuration circuit 407. When diagnostics such as SCR conversion efficiency, NOx sensor diagnostics, is enabled as discussed above with reference to the first through fourth examples, the operation optimization circuit 408 provides transient references from current operating condition to desired operating condition so as to optimize a combination of metrics, such as but not limited to, engine efficiency, fuel efficiency, time required for transient operation. For example, the fifth example describes a method to periodically change EONOx levels to diagnose either NOx sensor or SCR. The operation optimization circuit 408 can set up gear shift, acceleration/power/torque limit references to optimize fuel efficiency during transient operation between different EONOx sensor levels.

[0052] Referring now to FIG. 7, a flow diagram 700 of a method of controlling a transmission via management of an electric motor in a vehicle is shown according to one embodiment. Method 700 may be implemented with the CEM of 110 of FIG. 1 or CEM 400 of FIG. 4.

[0053] At operation 702, internal hybrid vehicle information is received. The internal information may include any type of internal information regarding the vehicle and from the vehicle itself (e.g., a vehicle speed, a load on the vehicle, a torque output, a

transmission setting, an engine temperature, one or more fault codes or a history of fault codes).

[0054] At operation 704, external static information is received. The external static information may be received from one or more external static information sources (e.g., the map database 222). The external static information may include any piece of information or data that is static in nature (e.g., unchanging with respect to location, such as the road grade at a various location).

[0055] At operation 706, external dynamic information is received. The external dynamic information can be received from one or more external dynamic information sources (e.g., a remote device, another vehicle, an infrastructure component). The external dynamic information may include any information or data that may change with respect to time and distance (e.g., the dynamic speed limits at construction sites).

[0056] At operation 708, a goal is determined for aftertreatment system based on at least one of the internal vehicle information, external static information, and external dynamic information. At operation 710, powertrain components are configured based on the goal determined at operation 708. In the first example, the goal determined at operation 708 is running aftertreatment diagnostics more frequently based on confidence in failure of the aftertreatment system. At operation 710, the powertrain components are configured to create motoring events more frequently to enable more frequent aftertreatment diagnostics. When the NOx sensors fail, the diagnostic results of the sensors may show a "signature," as shown in FIG. 5. The NOx sensor diagnostic signature is proximate to a failure threshold. Based on the signature, which indicates a likelihood of NOx sensor failure, a goal is determined to run the diagnostics more frequently. To achieve the goal of more frequent aftertreatment diagnostics, motoring events are created more frequently. During a motoring event, fresh intake air flows through the engine 301, but no fuel is sprayed into the cylinders to be combusted. Engine-out gases contain cooler air due to no combustion, but compression events and cylinder heat transfer still happen, as well as trace of NOx due leftover gases from previous combustion events. The powertrain management (e.g., engine management 131, transmission management 132, final drive management 133) can be dynamically recalibrated to create motoring events more frequently. Motoring events enable NOx sensor diagnostics to run more frequently and either increase or decrease confidence in sensor failure, which can be fed back to powertrain management references. In further embodiments, coasting is disabled to enable greater motoring duration.

[0057] In the second example, the goal at operation 708 is maintaining steady state operation of aftertreatment system for a period of time. At operation 710, dynamic powertrain references are created to maintain the steady state operation. Diagnostics need steady state operation, e.g., steady state engine-out NOx for an extended period of time. The steady state period can be augmented through intrusive operation using powertrain controls. In particular, the powertrain references such as cruise speed, gear request, are dynamically changed to maintain a steady specified power demand on the engine. The powertrain references are changed in response to predicted changes in route and environment to maintain engine power, torque or speed demand at a specified operating point so that a specific diagnostic such as NOx sensor diagnostic or SCR conversion efficiency diagnostic can run. FIG. 6 shows the cruise speed reference with and without dynamic references and the engine-out NOx as a result of dynamic references comparing to no dynamic references. Besides engine-out NOx, the steady operation state can be the steady state for other parameters, such as aftertreatment temperature, exhaust flow, or the like. Predictive information can be used to set up references that smooth torque transients and thus avoiding poisoning the aftertreatment system and improving durability.

[0058] In the third example, the goal at operation 708 is performing diagnostics on NOx sensors. At operation 710, motoring events are created with sufficient duration for NOx sensor diagnostics. At operation 708, a motoring duration is predicted that is sufficient long for NOx sensor diagnostics based on the internal vehicle information, external static information, and external dynamic information received. Then cruise speed and/or throttle pedal response can be changed and/or coasting management features can be selectively calibrated to force the engine into motoring for the duration while satisfying the driver/mission demand. In some embodiments, coasting management features can be disabled to create more opportunities for motoring.

[0059] Besides NOx sensor diagnostics, the method can be applied to EGR dP sensor diagnostics. For example, a motoring duration is predicted that is sufficient long for EGR dP sensor diagnostics based on the internal vehicle information, external static

information, and external dynamic information received. Accordingly, cruise speed and/or throttle pedal response can be changed, and/or coasting management features can be selectively calibrated to force the engine into motoring for the duration while satisfying the driver/mission demand. Then the EGR valve is shut off, and the EGR dP sensor diagnostics are performed. In some embodiments, during idle coasting, EGR valve is shut off and engine can be force to run at specific speed to support auto zero routine.

[0060] In the fourth example, the goal at operation 708 is matching operating state of the aftertreatment system. At operation 710, a route is selected to match the operating state. Each aftertreatment system may have different constraints because each may go through various conditions throughout the life of the system in addition to part-to-part variation due to manufacturing variability. This example can be used by a fleet operator to match routes/missions with available vehicles. Information about a specific aftertreatment system can be tracked, such as urea consumption, number of regeneration events, temperature duty cycle, etc. At operation 708, these parameters are compiled as well as instantaneous data from sensors and diagnosis to determine operating state of the specific aftertreatment system, such as the constraints of the aftertreatment system. Based on the operating state of the system, a matching route is selected at operation 710. For example, the route that matches constraints on aftertreatment operation can be selected, service with additional load can be postponed, the route that may create conditions to monitor potential failure can be selected, the route that supports de-greening system can be selected, the route that has specific altitudes constraints can be selected, and so on. In some

embodiments, road speed limit or traffic information can be considered for the planned route. For example, a route with at least one of the heavy cargo weight and high grades can be selected to maintain higher temperature in the aftertreatment system. Or, a route can be selected which is capable of maintaining high temperatures for cleaning out the aftertreatment system.

[0061] In the fifth example, the goal at operation 708 is creating a NOx spike. At operation 710, a gear shift event is created. During each gear shift event for automated manual transmission (AMT) and manual transmission (MT), the engine experiences a process of decelerating, idling, and then accelerating for speed matching. In each of these steps, a sudden change in EGR fresh air quantity causes a NOx spike. The NOx spike can be utilized in performing engine-out NOx sensor diagnosis and SCR system diagnosis. If the SCR is loaded with urea, then EONOx and SONOx values can be compared in order to diagnose the SCR. Further, the repeated nature of NOx spikes during each gear shift event and thus repeated SCR diagnosis can track a progression of SCR system health. In some embodiments, a shift event duration is set at operation 708 to effectively control the NOx magnitude and duration and to create the opportunity to run specific diagnosis during the shift event. Then at operation 710 a shift event with the sufficient duration is created by configuring the operations of the engine and the transmission.

[0062] Besides EONOx spikes, the method can be used to create periodic changes in EONOx levels. During the period changes, the EONOx sensor can be diagnosed by comparing the actual sensor output with a predicted output from a virtual sensor at various operating points. If the SCR is loaded with urea, then EONOx and SONOx values can be compared to diagnose the SCR performance. In particular, a goal at operation 708 is creating periodic changes in EONOx levels. At operation 710, gear shift references are changed, such as, vehicle acceleration limits, engine power limits, engine torque limits, etc. to cause periodic changes in the EONOx level. [0063] Optionally, the method can include an operation of optimizing the vehicle operation according to the powertrain configuration set at operation 710. When diagnostics such as SCR conversion efficiency, NOx sensor diagnostics, is enabled as discussed above with reference to the first through fifth examples, transient references are provided from current operating condition to desired operating condition so as to optimize a combination of metrics, such as but not limited to, engine efficiency, fuel efficiency, time required for transient operation. For example, the fifth example describes a method to periodically change EONOx levels to diagnose either NOx sensor or SCR. Gear shift, acceleration/power/torque limit references can be set up to optimize fuel efficiency during transient operation between different EONOx sensor levels.

[0064] It should be understood that no claim element herein is to be construed under the provisions of 35 U.S.C. § 112(f), unless the element is expressly recited using the phrase "means for." The schematic flow chart diagrams and method schematic diagrams described above are generally set forth as logical flow chart diagrams. As such, the depicted order and labeled steps are indicative of representative embodiments. Other steps, orderings and methods may be conceived that are equivalent in function, logic, or effect to one or more steps, or portions thereof, of the methods illustrated in the schematic diagrams. Further, reference throughout this specification to "one embodiment", "an embodiment", "an example embodiment", or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases "in one embodiment", "in an embodiment", "in an example embodiment", and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.

[0065] Additionally, the format and symbols employed are provided to explain the logical steps of the schematic diagrams and are understood not to limit the scope of the methods illustrated by the diagrams. Although various arrow types and line types may be employed in the schematic diagrams, they are understood not to limit the scope of the corresponding methods. Indeed, some arrows or other connectors may be used to indicate only the logical flow of a method. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of a depicted method. Additionally, the order in which a particular method occurs may or may not strictly adhere to the order of the corresponding steps shown. It will also be noted that each block of the block diagrams and/or flowchart diagrams, and combinations of blocks in the block diagrams and/or flowchart diagrams, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and program code.

[0066] Many of the functional units described in this specification have been labeled as circuits, in order to more particularly emphasize their implementation independence. For example, a circuit may be implemented as a hardware circuit comprising custom very- large-scale integration (VLSI) circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A circuit may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.

[0067] As mentioned above, circuits may also be implemented in machine-readable medium for execution by various types of processors, such as the controller 200 of FIG. 2. An identified circuit of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions, which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified circuit need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the circuit and achieve the stated purpose for the circuit. Indeed, a circuit of computer readable program code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within circuits, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network.

[0068] The computer readable medium (also referred to herein as machine-readable media or machine-readable content) may be a tangible computer readable storage medium storing the computer readable program code. The computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, holographic, micromechanical, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. As alluded to above, examples of the computer readable storage medium may include but are not limited to a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), a digital versatile disc (DVD), an optical storage device, a magnetic storage device, a holographic storage medium, a micromechanical storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, and/or store computer readable program code for use by and/or in connection with an instruction execution system, apparatus, or device.

[0069] Computer readable program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages.

[0070] The program code may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the schematic flowchart diagrams and/or schematic block diagrams block or blocks.

[0071] Accordingly, the present disclosure may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the disclosure is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.