Architecture and reconfigurable tire force estimation for various powertrain configurations
11046323 · 2021-06-29
Assignee
Inventors
- Ehsan Hashemi (Waterloo, CA)
- Seyedalireza Kasaiezadeh Mahabadi (Shelby Township, MI)
- Amir KHAJEPOUR (Waterloo, CA)
- Xueying Kang (Novi, MI, US)
- Jin-Jae Chen (Canton, MI, US)
- Hualin Tan (Novi, MI, US)
- James H. Holbrook (Fenton, MI, US)
- Bakhtiar B. Litkouhi (Washington, MI)
Cpc classification
B60W2552/15
PERFORMING OPERATIONS; TRANSPORTING
B60W30/18172
PERFORMING OPERATIONS; TRANSPORTING
B60W2720/406
PERFORMING OPERATIONS; TRANSPORTING
B60W30/045
PERFORMING OPERATIONS; TRANSPORTING
B60W50/00
PERFORMING OPERATIONS; TRANSPORTING
International classification
B60W50/00
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A method for estimation of a vehicle tire force includes: receiving, by a controller of a vehicle, a measured vehicle acceleration of the vehicle; receiving, by the controller, a measured wheel speed and a measured yaw rate of the vehicle; forming, by the controller, inertia matrices based on an inertia of rotating components of the vehicle; calculating torques at corners of the vehicle using the inertia matrices; estimating tire forces of the vehicle based on the measured vehicle acceleration, the measured wheel speed, and the inertia matrices; and controlling, by the controller, the vehicle, based on the plurality of estimated longitudinal and lateral tire forces.
Claims
1. An integrated method for estimation of vehicle tire force, comprising: receiving, by a controller of a vehicle, a measured vehicle acceleration of the vehicle, the vehicle includes an Electronic Limited Slip Differential (eLSD), and the eLSD has an eLSD gear ratio; receiving, by the controller, a measured wheel speed of the vehicle; receiving, by the controller, a measured yaw rate of the vehicle; forming, by the controller, inertia matrices based on an inertia of rotating components of the vehicle based on the measured wheel speed and the measured vehicle acceleration, wherein forming the inertia matrices includes calculating inertia components of the inertia matrices as a function of the eLSD gear ratio; calculating torques at corners of the vehicle using the inertia matrices; estimating tire forces of the vehicle based on the measured vehicle acceleration, the measured yaw rate, the measured wheel speed, and the inertia matrices; and controlling, by the controller, the vehicle, based on the plurality of estimated tire forces.
2. The method of claim 1, wherein the measured vehicle acceleration is a measured longitudinal acceleration of the vehicle, the method further comprises receiving, by the controller, a measured lateral acceleration of the vehicle, the vehicle includes a transmission system and a central drive shaft coupled between the transmission system and the eLSD, the eLSD includes a differential case, and calculating the inertia components of the inertia matrices includes calculating a moment of inertia of an input shaft to the eLSD using a following equation:
3. The method of claim 2, further comprising receiving, by the controller, a road bank angle and a road grade angle.
4. The method of claim 3, further comprising correcting the measured longitudinal acceleration and the measured lateral acceleration using the road grade angle and the road bank angle to determine a corrected longitudinal acceleration of the vehicle and a corrected lateral acceleration of the vehicle.
5. The method of claim 4, wherein: the rotating components includes a plurality of wheels of the vehicle; the plurality of wheels includes a first wheel, a second wheel, a third wheel, and a fourth wheel; the eLSD includes a clutch coupled to the differential case; the vehicle includes a first shaft interconnecting the eLSD and the fourth wheel; the vehicle includes a second shaft interconnecting the eLSD and the third wheel; forming, by the controller, the inertia matrices includes: determining moments of inertia of the differential case and the clutch; and determining moments of inertia of the third wheel and the fourth wheel as a function of the moments of inertia of the differential case and the clutch.
6. The method of claim 5, wherein: the vehicle includes a plurality of tires; the plurality of tires includes a first tire, a second tire, a third tire, and a fourth tire; the torques at the corners of the vehicle include a first corner torque at the first tire, a second corner torque at the second tire, a third corner torque at the third tire, and a fourth corner torque at the fourth tire; the first corner torque is calculated as a function of a first brake torque at the first tire; the second corner torque is calculated as a function of a second brake torque at the second tire; the third corner torque is calculated as a function of the inertia matrices; and the fourth corner torque is calculated as a function of the inertia matrices.
7. The method of claim 6, further comprising estimating the virtual wheel speed at the corners of the vehicle as a function of the torques at the corners of the vehicle.
8. The method of claim 7, further comprising determining longitudinal and lateral tire forces at the corners of the vehicle as a function of the virtual wheel speed.
9. The method of claim 8, further comprising forming augmented state matrices using the virtual wheel speed at the corners of the vehicle and the longitudinal and lateral tire forces at the corners of the vehicle.
10. The method of claim 9, further comprising filtering the longitudinal and lateral tire forces at the corners of the vehicle.
11. A vehicle, comprising: a plurality of rotating components, wherein the plurality of rotating components includes a plurality of tires; a transmission system coupled to the plurality of tires; a plurality of sensors; an Electronic Limited Slip Differential (eLSD) coupled to the transmission system, the eLSD having an eLSD gear ratio; a controller in communication with the plurality of sensors, wherein the controller is programmed to: receive a measured vehicle acceleration of the vehicle; receive a measured wheel speed of the vehicle; receive a measured yaw rate of the vehicle; form inertia matrices based on an inertia of rotating components of the vehicle based on the measured wheel speed and the measured vehicle acceleration, wherein the controller is programmed to calculate inertia components of the inertia matrices as a function of the eLSD gear ratio; calculate torques at corners of the vehicle using the inertia matrices; estimate tire forces of the vehicle based on the measured vehicle acceleration, the measured yaw rate, the measured wheel speed, and the inertia matrices; and control the vehicle based on the plurality of estimated tire forces.
12. The vehicle of claim 11, wherein the measured vehicle acceleration is a measured longitudinal acceleration of the vehicle, and the controller is further programmed to receive a measured lateral acceleration of the vehicle.
13. The vehicle of claim 12, wherein the controller is further programmed to receive a road bank angle and a road grade angle.
14. The vehicle of claim 13, wherein the controller is further programmed to correct the measured longitudinal acceleration and the measured lateral acceleration using the road grade angle and the road bank angle to determine a corrected longitudinal acceleration of the vehicle and a corrected lateral acceleration of the vehicle.
15. The vehicle of claim 14, wherein: the rotating components includes a plurality of wheels of the vehicle; the plurality of wheels includes a first wheel, a second wheel, a third wheel, and a fourth wheel; the vehicle includes a central drive shaft coupled to the transmission system and an Electronic Limited Slip Differential (eLSD) coupled to the central drive shaft; the eLSD includes a differential case and a clutch coupled to the differential case; the vehicle includes a first shaft interconnecting the eLSD and the fourth wheel; the vehicle includes a second shaft interconnecting the eLSD and the third wheel; the controller forms the inertia matrices by: determining moments of inertia of the differential case and the clutch; and determining moments of inertia of the third wheel and the fourth wheel as a function of the moments of inertia of the differential case and the clutch.
16. The vehicle of claim 15, wherein: the plurality of tires includes a first tire, a second tire, a third tire, and a fourth tire; the torques at the corners of the vehicle include a first corner torque at the first tire, a second corner torque at the second tire, a third corner torque at the third tire, and a fourth corner torque at the fourth tire; the first corner torque is calculated as a function of a first brake torque at the first tire; the second corner torque is calculated as a function of a second brake torque at the second tire; the third corner torque is calculated as a function of the inertia matrices; and the fourth corner torque is calculated as a function of the inertia matrices.
17. The vehicle of claim 16, wherein the controller is programmed to estimate the virtual wheel speed at the corners of the vehicle as a function of the torques at the corners of the vehicle.
18. The vehicle of claim 17, wherein the controller is programmed to determine longitudinal and lateral tire forces at the corners of the vehicle as a function of the virtual wheel speed.
19. The vehicle of claim 18, wherein the controller is programmed to form augmented state matrices using the virtual wheel speed at the corners of the vehicle and the longitudinal and lateral tire forces at the corners of the vehicle and filter the longitudinal and lateral tire forces at the corners of the vehicle.
20. The vehicle of claim 18, wherein the controller is further programmed to filter the longitudinal and lateral tire forces at the corners of the vehicle.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
DETAILED DESCRIPTION
(4) The following detailed description is merely exemplary in nature and is not intended to limit the application and uses. Furthermore, there is no intention to be bound by expressed or implied theory presented in the preceding technical field, background, brief summary or the following detailed description. As used herein, the term “module” refers to hardware, software, firmware, electronic control component, processing logic, and/or processor device, individually or in a combination thereof, including without limitation: application specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and memory that executes one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality.
(5) Embodiments of the present disclosure may be described herein in terms of functional and/or logical block components and various processing steps. It should be appreciated that such block components may be realized by a number of hardware, software, and/or firmware components configured to perform the specified functions. For example, an embodiment of the present disclosure may employ various integrated circuit components, e.g., memory elements, digital signal processing elements, logic elements, look-up tables, or the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices. In addition, those skilled in the art will appreciate that embodiments of the present disclosure may be practiced in conjunction with a number of systems, and that the systems described herein are merely exemplary embodiments of the present disclosure.
(6) For the sake of brevity, techniques related to signal processing, data fusion, signaling, control, and other functional aspects of the systems (and the individual operating components of the systems) may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent example functional relationships and/or physical couplings between the various elements. It should be noted that alternative or additional functional relationships or physical connections may be present in an embodiment of the present disclosure.
(7) As depicted in
(8) In various embodiments, the vehicle 10 may be an autonomous vehicle and a control system 98 is incorporated into the vehicle 10. The control system 98 may be simply referred to as the system. The vehicle 10 is, for example, a vehicle that is automatically controlled to carry passengers from one location to another. The vehicle 10 is depicted in the illustrated embodiment as a passenger car, but it should be appreciated that another vehicle including motorcycles, trucks, sport utility vehicles (SUVs), recreational vehicles (RVs), marine vessels, aircraft, etc., can also be used. In an exemplary embodiment, the vehicle 10 may be a partially or fully automated vehicle. A Level Four system indicates “high automation”, referring to the driving mode-specific performance by an automated driving system of aspects of the dynamic driving task, even if a human driver does not respond appropriately to a request to intervene. A Level Five system indicates “full automation”, referring to the full-time performance by an automated driving system of aspects of the dynamic driving task under a number of roadway and environmental conditions that can be managed by a human driver.
(9) As shown, the vehicle 10 generally includes a propulsion system 20, a transmission system 22, a steering system 24, a brake system 26, a sensor system 28, an actuator system 30, at least one data storage device 32, at least one controller 34, and a communication system 36. The propulsion system 20 may, in various embodiments, include an electric machine such as a traction motor and/or a fuel cell propulsion system. The vehicle 10 further includes a battery (or battery pack) 21 electrically connected to the propulsion system 20. Accordingly, the battery 21 is configured to store electrical energy and to provide electrical energy to the propulsion system 20. Additionally, the propulsion system 20 may include an internal combustion engine. The transmission system 22 is configured to transmit power from the propulsion system 20 to the vehicle wheels 17 according to selectable speed ratios. According to various embodiments, the transmission system 22 may include a step-ratio automatic transmission, a continuously-variable transmission, or other appropriate transmission. The brake system 26 is configured to provide braking torque to the vehicle wheels 17. The brake system 26 may, in various embodiments, include friction brakes, brake by wire, a regenerative braking system such as an electric machine, and/or other appropriate braking systems. The steering system 24 influences a position of the vehicle wheels 17.
(10) The sensor system 28 includes one or more sensors 40 (i.e., sensing devices) that sense observable conditions of the exterior environment and/or the interior environment of the vehicle 10. The sensors 40 are in communication with the controller 34 and may include, but are not limited to, one or more radars, one or more light detection and ranging (lidar) sensors, one or more global positioning systems (GPS) devices, one or more cameras (e.g., optical cameras and/or thermal cameras), ultrasonic sensors, yaw rate sensors, gyroscopes, one or more inertial measurement units (IMUs), one or more steering angle sensor (SAS) for measuring the steering wheel position angle and rate of turn and/or other sensors. The actuator system 30 includes one or more actuator devices 42 that control one or more vehicle features such as, but not limited to, the propulsion system 20, the transmission system 22, the steering system 24 (which includes a steering wheel 25), active aerodynamic devices 60 (
(11) The data storage device 32 stores data for use in automatically controlling the vehicle 10. In various embodiments, the data storage device 32 stores defined maps of the navigable environment. In various embodiments, the defined maps may be predefined by and obtained from a remote system. For example, the defined maps may be assembled by the remote system and communicated to the vehicle 10 (wirelessly and/or in a wired manner) and stored in the data storage device 32. As can be appreciated, the data storage device 32 may be part of the controller 34, separate from the controller 34, or part of the controller 34 and part of a separate system.
(12) The controller 34 includes at least one processor 44 and a non-transitory computer readable storage device or media 46. The processor 44 can be a custom made or commercially available processor, a central processing unit (CPU), a graphics processing unit (GPU), an auxiliary processor among several processors associated with the controller 34, a semiconductor-based microprocessor (in the form of a microchip or chip set), a macroprocessor, a combination thereof, or generally a device for executing instructions. The computer readable storage device or media 46 may include volatile and nonvolatile storage in read-only memory (ROM), random-access memory (RAM), and keep-alive memory (KAM), for example. KAM is a persistent or non-volatile memory that may be used to store various operating variables while the processor 44 is powered down. The computer-readable storage device or media 46 may be implemented using a number of memory devices such as PROMs (programmable read-only memory), EPROMs (electrically PROM), EEPROMs (electrically erasable PROM), flash memory, or another electric, magnetic, optical, or combination memory devices capable of storing data, some of which represent executable instructions, used by the controller 34 in controlling the vehicle 10.
(13) The instructions may include one or more separate programs, each of which comprises an ordered listing of executable instructions for implementing logical functions. The instructions, when executed by the processor 44, receive and process signals from the sensor system 28, perform logic, calculations, methods and/or algorithms for automatically controlling the components of the vehicle 10, and generate control signals to the actuator system 30 to automatically control the components of the vehicle 10 based on the logic, calculations, methods, and/or algorithms. Although a single controller 34 is shown in
(14) In various embodiments, one or more instructions of the controller 34 are embodied in the control system 98. The vehicle 10 includes a user interface 23, which may be a touchscreen in the dashboard. The user interface 23 is in electronic communication with the controller 34 and is configured to receive inputs by a user (e.g., vehicle operator). Accordingly, the controller 34 is configured to receive inputs from the user via the user interface 23. The user interface 23 includes a display configured to display information to the user (e.g., vehicle operator or passenger).
(15) The communication system 36 is in communication with the controller 34 and is configured to wirelessly communicate information to and from other entities 48, such as but not limited to, other vehicles (“V2V” communication), infrastructure (“V2I” communication), remote systems, and/or personal devices. In an exemplary embodiment, the communication system 36 is a wireless communication system configured to communicate via a wireless local area network (WLAN) using IEEE 802.11 standards or by using cellular data communication. However, additional or alternate communication methods, such as a dedicated short-range communications (DSRC) channel, are also considered within the scope of the present disclosure. DSRC channels refer to one-way or two-way short-range to medium-range wireless communication channels specifically designed for automotive use and a corresponding set of protocols and standards. Accordingly, the communication system 36 may include one or more antennas and/or transceivers for receiving and/or transmitting signals, such as cooperative sensing messages (CSMs). The communication system is configured to wirelessly communicate information I between the vehicle 10 and a second vehicle.
(16)
(17) With reference to
(18) .sub.i.sup.x, lateral force observer gain matrix at each corner (related to acceleration and yaw rate correction)
.sub.q.sup.y q ϵ {5,6}. After block 104, the method 100 proceeds to block 106.
(19) At block 106, the controller 34 receives sensor measurements and estimates. For example, at block 106, the controller 34 receives a measured vehicle acceleration of the vehicle 10 as measured by one or more sensors 40 (e.g., accelerometers and/or IMU). Specifically, the controller 34 receives a measured longitudinal acceleration a.sub.x and a measured lateral acceleration a.sub.y of the vehicle 10. The controller 34 also receives a measured steering wheel angle δ of the steering wheel 25 as measured by one of the sensors 40 (e.g., steering angle sensor). The controller 34 also receives a measured yaw rate r of the vehicle 10 as measured by one or more sensors 40 (e.g., yaw rate sensors, gyroscopes, IMU). The controller 34 also receives a measured wheel speed (ω.sub.i, i ϵ {1,2,3,4}) of one or more wheels 17 as measured by one or more of the sensors 40 (e.g., a speed sensor). The controller 34 receives a road grade θ.sub.r and a bank angle ϕ.sub.r of the road that the vehicle 10 is on if available to correct measured longitudinal acceleration a.sub.x and the measured lateral acceleration a.sub.y. The controller 34 receives the road grade θ.sub.r and the bank angle ϕ.sub.r from one of the sensors 40 (e.g., GPS device). At block 106, the controller 34 also estimates several torques, including the brake torque at each corner/tire T.sub.bi, engine torque, electric motor torque, differential torques (such as the central drive shaft torque T.sub.g to the differential 50, and clutch torque T.sub.c (e.g., eLSD control clutch torque)). After block 106, the method 100 proceeds to block 108.
(20) At block 108, the controller 34 corrects the measured longitudinal acceleration a.sub.x and the measured lateral acceleration a.sub.y using the road grade angle and the road bank angle to determine a corrected longitudinal acceleration and a corrected lateral acceleration of the vehicle 10. A time window is used to refine the measured longitudinal acceleration a.sub.x and the measured lateral acceleration a.sub.y for the transient regions and maneuvers on gravel surfaces with high fluctuations in the acceleration measurement. Then, the method 100 proceeds to block 110.
(21) At block 110, the controller 34 determines whether the stationary condition on the corrected longitudinal acceleration, the corrected lateral acceleration, and the measured wheel speed ω.sub.ij at each corner/tire of the vehicle 10 is satisfied. In other words, at block 110, if at least one of the corrected longitudinal acceleration and the corrected lateral acceleration, and the measured wheel speed ω.sub.i of the vehicle 10 is equal to or less than respective predetermined thresholds, then the method 100 returns to block 104. On the other hand, if one or more of the corrected longitudinal acceleration, the corrected lateral acceleration, and the measured wheel speed ω.sub.ij at each corner/tire of the vehicle 10 is greater than the respective predetermined thresholds, then the method 100 proceeds to block 112.
(22) At block 112, the controller 34 forms inertia matrices based on an inertia of rotating components of the vehicle 10 (e.g., the wheels 17, the central drive shaft 12, the differential case 52 of the differential 50, the first (or right) shaft 54 interconnecting the differential 50 to one of the wheels 17, and the second (or left) shaft 56 interconnecting the differential 50 to one of the wheels 17) based on the measured wheel speed ω.sub.i and the measured or corrected vehicle acceleration of the vehicle 10 (e.g., measured longitudinal acceleration a.sub.x and a measured lateral acceleration a.sub.y or the corrected longitudinal acceleration and the corrected lateral acceleration determined at block 108). If the differential 50 is an eLSD at the rear track of the vehicle 10, the controller 34 may employ equations (1) and (2) to calculate the inertia components of the inertia matrices:
(23)
(24)
(25) As described above, the inertia matrices are formed based on inertias of: wheels 17, the differential case 52, the central drive shaft 12, and right/left shafts (i.e., the first shaft 54 and the second shaft 56) from the differential 50 (e.g., eLSD or open differential) to the third and fourth wheels 17c and 17d, among other things. Gain matrices are formed and latest high-slip conditions are incorporated for any gain update. The algorithm detects saturation condition to allocate adaptive observer gains. The threshold for saturation detection changes according to the driving conditions. At block 112, the controller 34 forms a discretized system, inertia, and input matrices (with augmented wheel speed and force states). The discretized system matrices and augmented states of the generalized force estimation structure are generated. The discretization is done by step-invariance for exact solution. After block 112, the method 100 proceeds to block 114.
(26) At block 114, the controller 34 calculates torques at corners of the vehicle 10 using the inertia matrices. To do so, the controller 34 employs equations (3), (4), and (5):
(27)
(28) As described above, the torques at the corners of the vehicle 10 include the first corner torque T.sub.t.sub.
(29) At block 116, the controller 34 forms augmented state matrices by using a virtual wheel speed estimator and vehicle planar kinetics. To do so, the controller 34 may employ equations (6), (7), and (8):
(30) .sub.i.sup.x is the longitudinal force observer gain matrix at each corner (related to acceleration and yaw rate correction);
.sub.q.sup.y is the lateral force observer gain matrix at each corner (related to acceleration and yaw rate correction); {circumflex over (F)}.sub.x.sub.
(31) As described in the equations above, the virtual wheel speed at the corners of the vehicle is calculated as a function of the torques at the corners of the vehicle 10. At block 118, the controller 34 determines the longitudinal and lateral tire forces {circumflex over (F)}.sub.x.sub.
(32) The augmented state vector with dynamic forces may be defined as:
{circumflex over (x)}=[{circumflex over (ω)}.sub.1{circumflex over (ω)}.sub.2{circumflex over (ω)}.sub.3{circumflex over (ω)}.sub.4{circumflex over (F)}.sub.x.sub.
(33) The direct estimator formulation with simultaneous correction/observation is defined as:
{circumflex over ({dot over (x)})}=A.sub.c{circumflex over (x)}+B.sub.c (10) where: {circumflex over (x)} is the augmented state vector; A.sub.c is a continuous-time state matrix; and B.sub.c is a continuous-time input matrix.
(34) At block 116, the new augmented states and direct estimator formulation with simultaneous correction/observation are computationally efficient because of the form of the state matrix. The observation is done on the wheel speed, IMU data (acceleration and yaw rate) by using disturbance observers, wheel dynamics, and longitudinal/lateral dynamic models. The observer gain allocation defines the order of reliance on the model or on the measurements (wheel speed and acceleration). Gains changes are based on the high-slip status to avoid fluctuations (caused by nonlinearities/disturbances) during the transient regions of harsh maneuvers. After block 116, the method 100 proceeds to block 118.
(35) At block 118, the controller 34 employs input and linear observers. The vehicle planar kinetics, wheel dynamics, and input observers at each corner (tire) are combined to ensure reliable estimation in low and high-excitation regions. Specifically, the controller 34 forms the continuous-time state matrix A.sub.c and the continuous-time state matrix B.sub.c using inertia, gain, and model input matrices as defined by equations (11)-(16):
(36)
(37) Equations (11)-(16) are the system matrices in the transformed input/output form. At block 118, the continuous-time state matrix A.sub.c and the continuous-time state matrix B.sub.c are discretized using equation (17):
{circumflex over (x)}.sub.k+1=A.sub.d{circumflex over (x)}.sub.k+B.sub.d,A.sub.d=e.sup.A.sup.
(38) At block 118, the controller 34 then estimates the augmented states (longitudinal and lateral forces {circumflex over (F)}.sub.x.sub.
(39) At block 120, the controller 34 determines whether the persistence criterion on a saturation condition is satisfied. To do so, the controller 34 inspects a persistence criterion (through a time window) to remove short-term outliers and avoid incorrect gain allocation. Also, the controller 34 may detect a saturation condition (obtained by wheel speed/acceleration) and level of excitation (steering & acceleration measurements). In other words, the controller 34 determines whether the tire forces are less than or greater than maximum thresholds and minimum thresholds, respectively, on a saturation condition. If the persistence criterion is not satisfied, the controller 34 proceeds to block 122. At block 122, the controller 34 filters the tire forces at each corner. On the other hand, if the persistence criterion is satisfied, the method 100 proceeds to block 124. At block 124, the controller 34 passes the estimated virtual wheel speeds (Equation (6)) to the estimator (i.e., equations (7) and (8)). After block 124, the method 100 proceeds to block 126 and block 130.
(40) At block 126, each corner's augmented state and system matrices are re-initialized. At block 130, the tire forces {circumflex over (F)}.sub.x.sub.
(41) At block 128, the controller 34 waits for the next sampled data (i.e., the data collected at block 106) and returns to block 106. After block 130, the method 100 proceeds to block 132. At block 132, the controller 34 controls the vehicle 10 using the longitudinal tire forces {circumflex over (F)}.sub.x.sub.
(42) The detailed description and the drawings or figures are a supportive description of the present teachings, but the scope of the present teachings is defined solely by the claims. While some of the best modes and other embodiments for carrying out the present teachings have been described in detail, various alternative designs and embodiments exist for practicing the present teachings defined in the appended claims.