1. Field of the Invention
This invention relates generally to a system and method for determining component and device timing in the control architecture of a vehicle system and, more particularly, to a system and method for determining the desirable bounds on the required timing response of various controllers, actuators and sensors in a vehicle system at the system design level.
2. Discussion of the Related Art
Driver assistance systems and vehicle active safety systems are becoming an integral part of vehicle design and development in an attempt to reduce driving stress and to enhance vehicle/roadway safety. For example, adaptive cruise control (ACC) systems are known that relieve drivers from routine longitudinal vehicle control by keeping the vehicle a safe distance away from a preceding vehicle. Also, collision avoidance systems are known that monitor traffic and objects around a vehicle and provide warnings and/or take preventative measures if a potential collision situation is detected.
These systems employ various sensors, actuators and detectors that monitor vehicle parameters, and controllers that control vehicle systems and devices, such as active front and rear wheel steering, differential braking, power steering operation, airbag deployment, etc. Timing control for the vehicle components and devices is a vital concern when designing such systems. Various devices and components require a certain amount of time to activate and some regulations may require that certain safety systems operate within a certain time frame. It has generally been the case that the timing control between the various devices and components in these types of vehicle systems has been identified in the software implementation and during deployment of the system. However, such a design scheme has not always provided the most desirable results.
In accordance with the teachings of the present invention, a system and method are disclosed for determining desirable response time bounds on interacting software components of a system at the design level. The method includes defining component timing specifications in a parametric form, where if a response time of a component is not known, then it is modeled as a parameter, at a system level and at a sub-system level. The method mathematically represents the timing specifications in a system model, provides a constraint extraction algorithm that extracts timing constraints from the mathematical representations, and uses the constraint extraction algorithm to generate a plurality of linear equations that define the constraints on response time requirements of interacting components to achieve the desired system functionality, such as timing bounds on end-to-end latency for component interaction. The method then solves for real time constraint ranges from parameters in the linear equations, and selects values from the real time constraint ranges to be used in the mathematical representations. In non-limiting embodiments, the constraint extraction algorithm can be a boundary discovery algorithm or a proof-tree.
Additional features of the present invention will become apparent from the following description and appended claims taken in conjunction with the accompanying drawings.
The following discussion of the embodiments of the invention directed to a system and method for determining timing for devices and components in a system at the design level is merely exemplary in nature, and is in no way intended to limit the invention or its applications or uses.
The present invention proposes modeling the SSTS at the design level, well before implementation, so that timing inaccuracies can be addressed early. For example, in the event of a collision, certain collision avoidance systems will deactivate the power steering and deploy the airbags in less than 40 ms. Both deactivation of the power steering and deploying the airbags have component limitations on how fast they can react, which needs to be considered in the system design. As will be discussed in further detail below, the requirements for deactivating the power steering and the airbags, for example, will be modeled mathematically. Although these timing relationships are being used as a specific example, the present invention has application for other systems besides vehicle systems, such as in a plant to determine the appropriate response time of robots for correct functioning. In other scenarios, the invention may even be used to determine the appropriate timing configuration of different stages within an assembly line.
In order to provide the modeling discussed above, constraints are employed in the modeling process to determine the desired timing of the operation and devices of the system. Such a determination of the constraints can be shown by, for example, a steer-by-wire vehicle.
The steer-by-wire system 40 has certain specifications that must be met in order for the implementation of the system 40 to be proper. For example, in one known design, a change in the steering angle position provided by the steering wheel 42 needs to cause the wheels 54 to turn within 40 ms, referred to herein as system specification A1, and the vehicle driver should feel the feedback resistance from the feedback motor 48 within 20 ms, referred to herein as system specification A2. Sub-system specifications can be defined as R1, once the steering angle position is changed, the controller 46 shall recalculate the road wheel position and update the road wheel actuator; R2, once a new road wheel angle is received, the actuator shall alter the position of the road wheels 54; R3, once the steering angle position is changed, the controller 46 shall recalculate the feedback resistance to be felt by the driver; and R4, the feedback motor 48 shall adjust the driver resistance to be felt by the driver.
The change in the steering angle position specification A1 and the driver feeling the feedback resistance specification A2 can be modeled as:
A
1
:G(swAlterF≦40(gwTurn)) (1)
A
2
:G(swAlterF≦20(swFeed)) (2)
The sub-system level specifications R1, R2, R3 and R4 can be modeled as:
R1:G(swAlterF(gwAdjust)) (3)
R2:G(gwAdjustF(gwTurn)) (4)
R3:G(swAlterF(swAdjust)) (5)
R4:G(swAdjustF(swFeed)) (6)
From the system level specifications A1 and A2, the sub-system level specifications R1, R2, R3 and R4 can be further modeled as:
R
1
:G(swAlterF≦10(gwAdjust)) (7)
R
2
:G(gwAdjustF≦20(gwTurn)) (8)
R
3
:G(swAlterF≦10(swAdjust)) (9)
R
4
:G(swAdjustF≦10(swFeed)) (10)
Equations (7)-(10) can then be modified to characterize the timing relationship between intermediate events to obtain closed form representations of a solution set as:
R
1
:G(swAlterF≦x
R
2
:G(gwAdjustF≦x
R
3
:G(swAlterF≦x
R
4
:G(swAdjustF≦x
R1ΛR2A1 (15)
R3ΛR4A2 (16)
The above system of parametric temporal logic equations (11)-(14) is such that any solution to constraints extracted from it on parameters x1, x2, x3 and x4 constrains events in such a way that timed design intent is met. The sub-system level specifications R1, R2, R3 and R4 can then be refined, such as, the specification R1 can be defined as:
R′
1
:G(swAlterF≦y1(swPos)) (17)
R″
1
:G(swPosF≦y2(swAdjust)) (18)
From the specifications, constraints can be defined as:
x
1
+x
2≦40 (19)
x
3
+x
4≦20 (20)
y
1
+y
2
≦x
1 (21)
From this, worst case response time bounds for steer-by-wire control and other actions can be determined by knowing the minimum ls and maximum ms response time bounds on the steering wheel sensor, and the minimum ls and maximum ms response time bounds on the road wheel actuator, such as:
max y2, subject to:
x
1
+x
2≦40
y
1
+y
2
≦x
1
la≦x2≦ma (22)
ls≦y1≦ms
x1,x2,y1,y2,la,ma,ls,ms≧0
From this process, complex problems from a logical and temporal domain get converted to a constraint solving domain where efficient tools are available.
Any suitable constraint extraction algorithm can be used at the box 66 to identify the constraints. According to the invention, two possible approaches are employed when the choice of mathematical representation is the discrete-time temporal logic, particularly, a boundary discovery approach, where discrete time logic related checks are used to extract constraints, and a proof-tree approach, where a tree construction is used to extract constraints using temporal logic related checks.
In order to more specifically describe the boundary discovery approach discussed above, a specific example is provided in the graphs of
Γ1≡G(αF≦x
F≦x
G(a
F≦5γ) (23)
The constraint extraction for this example using boundary discovery is performed as follows. A search is started along line L in
Γ1xF≦2β)ΛΓ2x
F≦2γ)
G(a
F≦5γ) (24)
The search is concluded when two points P1 (2,2) and P2(3,3) in
Γ1xF≦2β)ΛΓ2x
F≦x
G(a
F≦5γ) (25)
Thus, equation (25) now has one less parameter. The steps above are repeated until all of the parameters have been assigned their concrete value.
When this has been completed, a point on the boundary of a solution region is obtained, indicated by B1 (2,3) for example. This helps to infer all the points obtained in box 1 shown in
x1≦2,x2≦3 (26)
The above steps are repeated by shifting the origin to O1(2,0) and O2(3,0) and equation (23) is modified until all of the solution points are inferred. The direction of the search is indicated in
Γ1≡G(αF≦x
F≦x
G(a
F≦5γ) (27)
A similar modification is done to equation (23) where the origin is shifted to O2(0,3). Thus, the boundary discovery covers all of the points in the solution region using boundary boxes as shown in
{x1≦2Λx2≦3,2≦x1≦3Λ0≦x2≦2,3≦x1≦4Λ0≦x2≦1,x1=5Λx2=0,0≦x1≦1Λ4≦x2≦5,x1=0Λx2=5} (28)
At each internal node, the constraints are extracted for timing relationships between property corresponding to that node and one of the child nodes. The extracted constraints are shown next to each node. The extracted constraints are propagated to the root node 102 in order. Building the proof-tree 100 includes iteratively building a tree or picking up properties from finer level subdivisions of the system. The choice of properties is made in such a way that untimed design intent for every internal node is covered by its two children nodes. At each internal node, the constraints are extracted for timing relationships between properties corresponding to this node and the ones for the children nodes. The process propagates the extracted constraints to the root node 102 by doing an in-order transversal.
The specific pattern language for the proof-tree methodology can be given as:
P={F
≦x(φψ),G(φ
ψ),F≦x(φ
Gψ),F≦x(Gφ
ψ),G(φ
F≦xψ),G(φ
F≦xGψ)} (29)
The methodology for this language can be given as:
1. For each member ΦεA,
The foregoing discussion discloses and describes merely exemplary embodiments of the present invention. One skilled in the art will readily recognize from such discussion and from the accompanying drawings and claims that various changes, modifications and variations can be made therein without departing from the spirit and scope of the invention as defined in the following claims.