Multi-pulse fuel injection systems and control logic for port fuel injection pulse monitoring in engine assemblies
11773791 · 2023-10-03
Assignee
Inventors
- J. Michael Gwidt (Brighton, MI, US)
- Daniel P. Himes (Detroit, MI, US)
- Mark D. Carr (Fenton, MI)
- Jonathan A. Law (Fenton, MI, US)
- Jeffrey M. Hutmacher (Fowlerville, MI, US)
Cpc classification
F02D41/403
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/405
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/3017
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/402
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2041/224
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D13/0219
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2200/1015
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/221
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
International classification
F02D41/22
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D13/02
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/30
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
Abstract
Presented are multi-pulse fuel injection systems for monitoring engine fuel injectors for missed pulses, methods for making/using such systems, and vehicles equipped with such systems. A method of operating a fuel injection system includes an engine controller determining if the system's injectors are operating in a multi-pulse mode for injecting multiple fuel pulses per combustion cycle to an engine's cylinders and, if so, monitoring pulse signals transmitted to the injectors for injecting the multiple fuel pulses. For each combustion cycle for each injector, the controller flags a cylinder misfire if any one of the fuel pulses for that combustion cycle is missed. For each cylinder, the controller calculates a misfire ratio of a total number of cylinder misfires to a total number of combustion cycles; if one of these misfire ratios exceeds a calibrated misfire limit, the controller commands a resident subsystem to execute control operations to mitigate the misfires.
Claims
1. A method of operating a fuel injection system for an engine assembly, the engine assembly including multiple cylinders, multiple pistons each reciprocally movable in a respective one of the cylinders, and multiple fuel injectors each operable to inject multiple pulses of fuel per combustion cycle to a respective one of the cylinders, the method comprising: determining, via an engine controller, if the fuel injectors are operating in a multi-pulse mode to actively inject multiple pulses of fuel per combustion cycle to the cylinders; monitoring, via the engine controller responsive to determining the fuel injectors are operating in the multi-pulse mode, pulse signals transmitted to the fuel injectors to inject the multiple pulses of fuel per combustion cycle for multiple combustion cycles; identifying, for each of the fuel injectors for each of the combustion cycles, a cylinder misfire if any one of the multiple pulses of the combustion cycle is missed; determining, via the engine controller for each of the cylinders, a misfire ratio of a total number of the cylinder misfires to a total number of the combustion cycles; and transmitting, via the engine controller responsive to any one of the misfire ratios exceeding a calibrated misfire limit, a command signal to a resident subsystem to execute an automated control operation configured to mitigate the cylinder misfires.
2. The method of claim 1, wherein monitoring the pulse signals transmitted to the fuel injectors includes tracking electrical signals generated by a driver submodule in the engine controller and output from the engine controller to the fuel injectors.
3. The method of claim 2, further comprising detecting if any of the multiple pulses is missed by determining, for each of the tracked electrical signals, a substantially equivalent electrical signal is not received at nor output by a corresponding one of the fuel injectors.
4. The method of claim 1, wherein the multiple pulses of fuel per combustion cycle includes at least first, second, and third pulses, and wherein identifying the cylinder misfire includes any one or more or all of the first, second, and third pulses being missed.
5. The method of claim 1, further comprising: storing, in a memory device for each of the cylinders, a respective failure counter tracking the total number of cylinder misfires of the cylinder; and incrementing the respective failure counter each time the cylinder experiences one of the cylinder misfires.
6. The method of claim 5, further comprising: storing, in the memory device for each of the cylinders, a respective combustion event counter tracking the total number of combustion cycles of the cylinder; and incrementing the respective combustion event counter each time the cylinder completes one of the combustion cycles.
7. The method of claim 6, further comprising: storing, in the memory device for each of the cylinders, a respective missed pulse counter tracking a total number of missed pulses of the cylinder; and incrementing the respective missed pulse counter each time the cylinder misses one of the pulses of fuel.
8. The method of claim 1, wherein the resident subsystem includes a port fuel injection (PFI) system of the fuel injection system, the fuel injectors include multiple PFI injectors, and the command signal causes the PFI system to disable the PFI injector for each of the cylinders in which the misfire ratio exceeds the calibrated misfire limit.
9. The method of claim 1, wherein the resident subsystem includes an engine diagnostics module (EDM), and the command signal causes the EDM to set a diagnostic code with a corresponding user notification indicating engine service is needed.
10. The method of claim 1, further comprising transmitting, via the engine controller to the fuel injectors prior to determining if the fuel injectors are operating in the multi-pulse mode, injector-on command signals to power on the fuel injectors.
11. The method of claim 1, wherein the engine assembly further includes intake ports fluidly connected to the cylinders and direct injection (DI) injectors operable to inject fuel directly into the cylinders, wherein the fuel injectors include port fuel injection (PFI) injectors operable to indirectly inject fuel to the cylinders via the intake ports, and wherein the multi-pulse mode includes both the DI injectors and the PFI injectors jointly injecting fuel into the cylinders for the combustion cycles.
12. The method of claim 1, wherein the engine controller includes an engine control module (ECM) with an ECM driver submodule and an ECM monitor submodule, wherein the ECM driver submodule transmits the pulse signals to the fuel injectors, and wherein the ECM monitor submodule monitors the pulse signals and detects the cylinder misfires.
13. The method of claim 1, wherein the calibrated misfire limit is a predefined maximum allowable percentage value calibrated to the engine assembly, and the misfire ratio is calculated as a mathematical percentage of the total number of the cylinder misfires to the total number of the combustion cycles.
14. A non-transitory, computer-readable medium storing instructions executable by one or more processors of an engine controller of an engine assembly with multiple cylinders, multiple pistons reciprocally movable in the cylinders, and multiple fuel injectors operable to inject multiple pulses of fuel per combustion cycle to the cylinders, the instructions, when executed by the one or more processors, causing the engine controller to perform operations comprising: determining if the fuel injectors are operating in a multi-pulse mode to actively inject multiple pulses of fuel per combustion cycle to the cylinders; monitoring, responsive to determining the fuel injectors are operating in the multi-pulse mode, pulse signals transmitted to the fuel injectors to inject the multiple pulses of fuel per combustion cycle for multiple combustion cycles; identifying, for each of the fuel injectors for each of the combustion cycles, a cylinder misfire if any one of the multiple pulses of the combustion cycle is missed; determining, for each of the cylinders, a misfire ratio of a total number of the cylinder misfires to a total number of the combustion cycles; and transmitting, responsive to any one of the misfire ratios exceeding a calibrated misfire limit, a command signal to a resident subsystem to execute an automated control operation configured to mitigate the cylinder misfires.
15. A motor vehicle, comprising: a vehicle body with a passenger compartment; a plurality of road wheels attached to the vehicle body; an engine assembly attached to the vehicle body and operable to drive one or more of the road wheels to thereby propel the motor vehicle, the engine assembly including multiple cylinders and multiple pistons each reciprocally movable in a respective one of the cylinders; a fuel injection system including multiple fuel injectors each operable to inject multiple pulses of fuel per combustion cycle to a respective one of the cylinders; and an engine controller programmed to: determine if the fuel injectors are operating in a multi-pulse mode to actively inject multiple pulses of fuel per combustion cycle to the cylinders; responsive to determining the fuel injectors are operating in the multi-pulse mode, monitor pulse signals transmitted to the fuel injectors to inject the multiple pulses of fuel per combustion cycle for multiple combustion cycles; identify, for each of the fuel injectors for each of the combustion cycles, a cylinder misfire if any one of the multiple pulses of the combustion cycle is missed; determine, for each of the cylinders, a misfire ratio of a total number of the cylinder misfires to a total number of the combustion cycles; and responsive to any one of the misfire ratios exceeding a calibrated misfire limit, transmit a command signal to a resident subsystem to execute an automated control operation configured to mitigate the cylinder misfires.
16. The motor vehicle of claim 15, wherein monitoring the pulse signals transmitted to the fuel injectors includes tracking electrical signals generated by a driver submodule in the engine controller and output from the engine controller to the fuel injectors.
17. The motor vehicle of claim 15, wherein identifying the cylinder misfires includes detecting if any of the multiple pulses is missed by determining, for each of the tracked electrical signals, a substantially equivalent electrical signal is not received at nor output by a corresponding one of the fuel injectors.
18. The motor vehicle of claim 15, wherein the resident subsystem includes a port fuel injection (PFI) system of the fuel injection system of the motor vehicle, the fuel injectors include multiple PFI injectors, and the command signal causes the PFI system to disable the PFI injector for each of the cylinders in which the misfire ratio exceeds the calibrated misfire limit.
19. The motor vehicle of claim 15, wherein the resident subsystem includes an engine diagnostics module (EDM) and a vehicle display device inside the passenger compartment of the motor vehicle, and the command signal causes the EDM to set a diagnostic code and the vehicle display device to display a corresponding user notification indicating a need for engine service.
20. The motor vehicle of claim 15, wherein the fuel injectors include port fuel injection (PFI) injectors operable to indirectly inject fuel to the cylinders via intake ports of the engine assembly, the fuel injection system further includes direct injection (DI) injectors operable to inject fuel directly into the cylinders, and wherein the multi-pulse mode includes both the DI injectors and the PFI injectors jointly injecting fuel into the cylinders for the combustion cycles.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3) The present disclosure is amenable to various modifications and alternative forms, and some representative embodiments of the disclosure are shown by way of example in the drawings and will be described in detail herein. It should be understood, however, that the novel aspects of this disclosure are not limited to the particular forms illustrated in the above-enumerated drawings. Rather, this disclosure covers all modifications, equivalents, combinations, permutations, groupings, and alternatives falling within the scope of this disclosure as encompassed, for example, by the appended claims.
DETAILED DESCRIPTION
(4) This disclosure is susceptible of embodiment in many different forms. Representative embodiments of the disclosure are shown in the drawings and will herein be described in detail with the understanding that these embodiments are provided as an exemplification of the disclosed principles, not limitations of the broad aspects of the disclosure. To that extent, elements and limitations that are described, for example, in the Abstract, Introduction, Summary, and Detailed Description sections, but not explicitly set forth in the claims, should not be incorporated into the claims, singly or collectively, by implication, inference or otherwise.
(5) For purposes of the present detailed description, unless specifically disclaimed: the singular includes the plural and vice versa; the words “and” and “or” shall be both conjunctive and disjunctive; the words “any” and “all” shall both mean “any and all”; and the words “including,” “containing,” “comprising,” “having,” and the like, shall each mean “including without limitation.” Moreover, words of approximation, such as “about,” “almost,” “substantially,” “generally,” “approximately,” and the like, may each be used herein in the sense of “at, near, or nearly at,” or “within 0-5% of,” or “within acceptable manufacturing tolerances,” or any logical combination thereof, for example. Lastly, directional adjectives and adverbs, such as fore, aft, inboard, outboard, starboard, port, vertical, horizontal, upward, downward, front, back, left, right, etc., may be with respect to a motor vehicle, such as a forward driving direction of a motor vehicle when the vehicle is operatively oriented on a horizontal driving surface.
(6) Referring now to the drawings, wherein like reference numbers refer to like features throughout the several views, there is shown in
(7)
(8) The engine assembly 12 employs a series of reciprocating pistons 16, each of which is slidably movable within a respective one of the mutually parallel cylinder bores 15 in an engine block 13. Engine pistons 16 are typically provided in even numbers of 4, 6, 8, etc., and arranged in a V-type or I-type configuration; however, disclosed concepts are similarly applicable to cylinder counts (e.g., 3, 5, etc.) and layouts (e.g., H-type, rotary, etc.). The top surface of each piston 16 cooperates with the inner periphery of its corresponding cylinder 15 and a respective chamber surface 19 of a cylinder head 25 to define a variable-volume combustion chamber 17. Each piston 16 is connected by a respective connecting rod 21 and optional linkages to a crankpin of a rotating crankshaft 11. The crankshaft 11, in turn, transforms the linear reciprocating motion of the pistons 16 to rotational motion that is output, for example, as a number of rotations per minute (RPM) to a power transmission (not shown) to drive one or more road wheels 22. The crankshaft 11 is shown packaged within a crankcase 23 mounted underneath the engine block 13. While shown as discrete parts, the engine block 13 and cylinder head 25 may be integrally formed as single-piece, unitary “monobloc” construction.
(9) An air intake system transmits intake air to the cylinders 15 through an intake manifold 29, which directs and distributes air into the individual combustion chambers 17 via respective intake runners and intake ports of the cylinder head 25. The engine's air intake system has airflow ductwork and various electronic devices for monitoring and regulating incoming air flow. The air intake devices can include, as a non-limiting example, a mass airflow sensor 32 for monitoring mass airflow (MAF) 53 and intake air temperature (IAT) 55. A throttle valve 34 controls airflow to the engine assembly 12 in response to an engine throttle control (ETC) signal 57 from a programmable engine control unit (ECU) 5, which may be embodied as an electronic engine control module (ECM) that contains both an ECM driver submodule 7 and an ECM monitor submodule 9. A pressure sensor 36 in the intake manifold 29 monitors, for instance, manifold absolute pressure (MAP) 59 and barometric pressure.
(10) To reduce engine emissions and modulate peak in-cylinder temperatures, an optional external flow passage (not shown) may recirculate finite amounts of exhaust gases in engine exhaust from an exhaust manifold 39 to the intake manifold 29. The engine assembly 12 employs an exhaust gas recirculation (EGR) valve 38 to meter the volume of recirculated exhaust introduced back into the cylinders 15. The programmable engine control unit (or “ECM”) 5 controls mass flow of exhaust gas to the intake manifold 29 by controlling the opening/closing of the EGR valve 38 via EGR command 61. In
(11) Airflow from the intake manifold 29 into the combustion chamber 17 is controlled by one or more intake engine valves 20. Evacuation of exhaust gases out of the combustion chamber 17 to the exhaust manifold 39 is controlled by one or more exhaust engine valves 18. These engine valves 18, 20 are illustrated herein as spring-biased poppet valves; however, other commercially available types of engine valves may be employed. In
(12) Activation of the engine valves 18, 20 may be modulated by controlling exhaust and intake variable cam phasing/variable lift control (VCP/VLC) devices 46 and 48. These VCP/VLC devices 46, 48 are operable to control an intake camshaft 47 and an exhaust camshaft 49. Rotation of the intake and exhaust camshafts 47, 49 are linked and indexed to rotation of the crankshaft, thus linking the opening and closing of the intake and exhaust valves 20, 18 to positions of the crankshaft 11 and the pistons 16. The intake VCP/VLC device 46 may variably switch and control valve lift of the intake valve(s) 20 in response to an intake variable lift control (iVLC) signal 63, and variably adjust and control phasing of the intake camshaft 47 for each cylinder 15 in response to an intake variable phasing control (iVCP) signal 65. Exhaust VCP/VLC device 48 may variably switch and control valve lift of the exhaust valve(s) 18 in response to an exhaust variable lift control (eVLC) signal 67, and variably adjust and control phasing of the exhaust camshaft 49 for each cylinder 15 in response to an exhaust variable phasing control (eVCP) signal 69.
(13) With continuing reference to the representative configuration of
(14) In accord with the illustrated example, each DI fuel injector 28 is packaged within the cylinder head 25 (or, alternatively, in the engine block 13) and directly fluidly coupled to the combustion chamber 17 to selectively inject fuel directly into the chamber 17. By comparison, each PFI fuel injector 27 is packaged within the cylinder head 25 (or, alternatively, on the intake manifold 29) and directly fluidly coupled to the intake runner upstream from the intake port to selectively inject fuel indirectly to the combustion chamber 17, e.g., when the intake valve 20 is open. In various embodiments, among other functionality, the ECU 5 selectively controls operation of the PFI injectors 27 and the DI injectors 28, including respective percentages of fuel provided therefrom to the combustion chambers 17, e.g., to optimize performance for the engine 12 in terms of torque, fuel economy, and/or other application-specific factors. As described in further detail below, the ECU 5 provides these and related functions in accordance with the steps of the process 100 described in connection with the controller-executable algorithm of
(15) The engine assembly 12 is equipped with a variety of sensing devices for monitoring engine operation, including a crank sensor 42 that monitors crankshaft rotational position and outputs a crank angle/speed (RPM) signal 43. A temperature sensor 44 monitors, for example, one or more engine-related temperatures (e.g., coolant temp, oil, etc.) and outputs a signal 45 indicative thereof. An in-cylinder combustion sensor 30 monitors combustion-related variables, such as in-cylinder combustion pressure, charge temperature, fuel mass, air-to-fuel ratio, etc., and outputs a signal 31 indicative thereof. An exhaust gas sensor 40 monitors one or more exhaust gas-related variables, e.g., actual air/fuel ratio (AFR), burned gas fraction, etc., and outputs a signal 73 indicative thereof.
(16) With reference next to the flow chart of
(17) Method 100 begins at START terminal block 101 of
(18) In a specific, yet purely representative instance, current engine operating conditions may be monitored in real-time to determine if the vehicle is executing a transient engine operation (e.g., tip-in to rapid acceleration) or the engine is operating at or above a key part-load operation (2000+ RPM and 5+ Bar BMEP). For either case, a predefined, multi-pulse fuel injection control protocol may be retrieved from memory-stored lookup tables and implemented to help improve overall engine operation. DI and/or PFI injection of multiple fuel pulses per cylinder per combustion cycle may also be desirable in specifically designated “special operation” regimes, e.g., to facilitate rapid catalytic converter light-off and/or to mitigate engine combustion noise (e.g., “engine knocking”). Upon completion of some or all of the control operations presented in
(19) After initializing the pulse monitoring protocol, method 100 advances to ACTIVE MULTI-PULSE INJECTION decision block 103 to determine if one or more or all of an engine assembly's fuel injectors are actively operating in a multi-pulse mode. For example, the ECU 5 may assess whether or not the PFI injectors 27 are operating in a multi-pulse mode to actively inject multiple pulses of fuel per combustion cycle per cylinder into the cylinders 15 of engine assembly 12. An example of a multi-pulse operating mode may include both the DI injectors 28 and the PFI injectors 27 working in unison to inject fuel (e.g., a pilot pulse followed by a main pulse followed by one or more post pulses) into the cylinders 15 for each cycle in a series of combustion cycles. ECU 5 of
(20) Upon determining that one or more of the engine assembly's fuel injectors are actively operating in a multi-pulse mode (Block 103=YES), method 100 responsively executes MULTI-PULSE MONITORING subroutine process block 105 to actively monitor commanded injector pulses. By way of example, when the ECU 5 is operating the PFI fuel injectors 27 in a multi-pulse mode, the ECM monitor submodule 9 may actively track commanded pulse signals as they are being output by the ECM driver submodule 7 to the PFI injectors 27 to inject multiple fuel pulses per combustion cycle per cylinder for multiple sequential combustion cycles. The ECM monitor submodule 9 of
(21) With continuing reference to
(22) Table 1 shows an example of a fuel injection pulse log for a representative engine assembly with four cylinders—labelled cylinders (“Cyl”) A, B, C and D—and a hybrid PFI-DI fuel system with a single dedicated PFI injector for each cylinder. In this example, each PFI injector was instructed to inject three pulses of fuel per combustion cycle for five consecutive combustion cycles. Table 1 labels each successfully completed pulse as “PFI” and labels each missed pulse with an “X”. The first cylinder (Cyl A) experienced a single missed fuel pulse in each of the 4th and 5th combustion cycles, whereas the second cylinder (Cyl B) experienced two missed fuel pulses in each of the 3rd, 4th and 5th combustion cycles, the third cylinder (Cyl C) missed all three fuel pulses in only the 4th combustion cycle, and the fourth cylinder (Cyl D) did not experience any missed fuel pulses for the five combustion cycles. If none of the monitored fuel injectors experiences a missed fuel pulse over the course of the monitored combustion cycles (Block 107=NO), the method 100 may loop back to subroutine process block 105 and continue monitoring injector pulse commands for future combustion events.
(23) TABLE-US-00001 TABLE 1 Combustion 1 Combustion 2 Combustion 3 Combustion 4 Combustion 5 Cyl A PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI X PFI PFI X Cyl B PFI PFI PFI PFI PFI PFI PFI X X PFI X X PFI X X Cyl C PFI PFI PFI PFI PFI PFI PFI PFI PFI X X X PFI PFI PFI Cyl D PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI PFI
(24) Responsive to detecting one or more missed fuel pulses during a multi-pulse operating mode (Block 107=YES), method 100 of
(25) TABLE-US-00002 TABLE 2 Number of Number of Number of missing pulses cylinder misfires combustion events Fail % Cyl A 2 2 5 40% Cyl B 6 3 5 60% Cyl C 3 1 5 20% Cyl D 0 0 5 0%
(26) Table 2 shows an example of a cylinder misfire log for the representative 4-cylinder ICE assembly discussed above with respect to Table 1. The first column of Table 2 shows the missed pulse counter for each cylinder; as noted above, the first cylinder (Cyl A) experienced a total of two missed pulses over the course of five combustion cycles, the second cylinder (Cyl B) experienced a total of four missed pulses during the same five cycles, the third cylinder (Cyl C) experienced a total of three missed pulses for these same cycles, and the fourth cylinder (Cyl D) did not experience any missed fuel pulses. The second column of Table 2 shows the failure counter for each cylinder; in this example, the first cylinder (Cyl A) experienced a total of two cylinder misfires (Combustions 4 and 5) over the course of five combustion cycles, the second cylinder (Cyl B) experienced a total of three cylinder misfires during the same five cycles (Combustions 3, 4 and 5), the third cylinder (Cyl C) experienced a total of one cylinder misfires for these combustion cycles (Combustion 4), and the fourth cylinder (Cyl D) did not experience any cylinder misfires. The third column of Table 2 shows the combustion event counters for all four cylinders; as shown in Table 1, all four cylinders underwent five consecutive 3-pulse combustion cycles.
(27) Method 100 advances from data block 109 to EXCESSIVE MISFIRE decision block 113 of
(28) Upon determining that a misfire ratio exceeds the predefined calibratable limit (Block 113=YES), the method 100 responsively automates ameliorative action to remediate the excessive misfires. The engine control unit 5 of
(29) In another example, the ECM 5 outputs command signals to the engine's port fuel injection system that causes the PFI system to temporarily disable the PFI injector 27 for each cylinder 15 with a misfire ratio that exceeds the calibrated misfire limit, as indicated at DISABLE PFI operation block 115. At the same time, the ECM 5 may temporarily disable all of the PFI injectors 27 (i.e., activate a DI-only operating mode), temporarily disable multi-pulse fuel injection across both the PFI injectors 27 and the DI injectors 28, and/or may activate a “limp home” mode (e.g., disabling in-vehicle accessories and setting a maximum engine output to 2000 RPM). Another non-limiting option may include a resident Displacement on Demand (DoD) module deactivating the engine cylinders that have experienced excessive cylinder misfire so long as there is a sufficient number of active cylinders to propel the hose vehicle.
(30) Aspects of this disclosure may be implemented, in some embodiments, through a computer-executable program of instructions, such as program modules, generally referred to as software applications or application programs executed by any of a controller or the controller variations described herein. Software may include, in non-limiting examples, routines, programs, objects, components, and data structures that perform particular tasks or implement particular data types. The software may form an interface to allow a computer to react according to a source of input. The software may also cooperate with other code segments to initiate a variety of tasks in response to data received in conjunction with the source of the received data. The software may be stored on any of a variety of memory media, such as CD-ROM, magnetic disk, and semiconductor memory (e.g., various types of RAM or ROM).
(31) Moreover, aspects of the present disclosure may be practiced with a variety of computer-system and computer-network configurations, including multiprocessor systems, microprocessor-based or programmable-consumer electronics, minicomputers, mainframe computers, and the like. In addition, aspects of the present disclosure may be practiced in distributed-computing environments where tasks are performed by resident and remote-processing devices that are linked through a communications network. In a distributed-computing environment, program modules may be located in both local and remote computer-storage media including memory storage devices. Aspects of the present disclosure may therefore be implemented in connection with various hardware, software, or a combination thereof, in a computer system or other processing system.
(32) Any of the methods described herein may include machine readable instructions for execution by: (a) a processor, (b) a controller, and/or (c) any other suitable processing device. Any algorithm, software, control logic, protocol or method disclosed herein may be embodied as software stored on a tangible medium such as, for example, a flash memory, a solid-state drive (SSD) memory, a hard-disk drive (HDD) memory, a CD-ROM, a digital versatile disk (DVD), or other memory devices. The entire algorithm, control logic, protocol, or method, and/or parts thereof, may alternatively be executed by a device other than a controller and/or embodied in firmware or dedicated hardware in an available manner (e.g., implemented by an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable logic device (FPLD), discrete logic, etc.). Further, although specific algorithms may be described with reference to flowcharts and/or workflow diagrams depicted herein, many other methods for implementing the example machine-readable instructions may alternatively be used.
(33) Aspects of the present disclosure have been described in detail with reference to the illustrated embodiments; those skilled in the art will recognize, however, that many modifications may be made thereto without departing from the scope of the present disclosure. The present disclosure is not limited to the precise construction and compositions disclosed herein; any and all modifications, changes, and variations apparent from the foregoing descriptions are within the scope of the disclosure as defined by the appended claims. Moreover, the present concepts expressly include any and all combinations and subcombinations of the preceding elements and features.