Information
-
Patent Grant
-
6216062
-
Patent Number
6,216,062
-
Date Filed
Thursday, November 11, 199925 years ago
-
Date Issued
Tuesday, April 10, 200123 years ago
-
Inventors
-
Original Assignees
-
Examiners
- Cuchlinski, Jr.; William A.
- To; Tuan C.
Agents
-
CPC
-
US Classifications
Field of Search
US
- 701 1
- 701 35
- 364 565
- 364 550
- 340 438
- 324 115
- 324 166
- 324 114
-
International Classifications
-
Abstract
A display system for vehicle data provides a smooth and responsive display of vehicle data even when the data is transmitted on an irregular basis by extrapolating from the previously received data when data is not received in a given interval. The invention allows display data to be preempted by higher priority data in a shared communications system.
Description
BACKGROUND OF THE INVENTION
The present invention relates to vehicle instrumentation including speedometers and tachometers, and in particular to a display system allowing for the smooth display of changing but irregularly transmitted data.
Driver display data that was once transmitted as analog voltages (e.g., fuel level) or mechanically (e.g., road speed) is now transmitted as digital words in serial fashion on a digital communications network within the vehicle. The digital words representing data from different sources may be interleaved to be transmitted on a single cable (“time multiplexed”) thereby substantially reducing wiring weight and costs. Display devices may be attached to this network to receive and display data related to their function. Such displays may include those providing numeric outputs (“digital displays”) or those having a moving pointer (“analog displays”).
Efficiencies in circuitry may be obtained if several vehicle sensors communicate with a single network interface card. The interface card converts data from the sensors to the proper format for transmission on the network and handles the necessary network protocols.
Often a network interface card will process both engine control data such as that from oxygen, air mass and fuel flow sensors, as well as driver display information from speedometer and tachometer senders. During certain times of rapidly changing engine conditions, such as during acceleration, the transmission of higher priority engine control data may interfere with the regular transmission of driver display information. This can result in a “stepping” or jerkiness in the operations of displays such as the speedometer or tachometer, which are also receiving rapidly changing data.
BRIEF SUMMARY OF THE INVENTION
The present invention provides a method of sending display data on an irregular interval without producing steps or jumps in the resultant display. This allows display data to be easily integrated with higher priority data on a common network interface. In the invention, if a digital word is not received within the regular interval, the display uses an extrapolated value based on the previously received digital word plus a fraction of the difference between the last two previously received digital words. The extrapolated digital word prevents sudden jumps in the display at limes when the displayed value is rapidly changing. Because, the extrapolation uses a simple fixed fraction of the difference between previously received digital word values, it does not require a recording of the time at which the previous digital words arrived or complex calculations such as would be required for linear extrapolation techniques.
Specifically then, the present invention provides a display system for use with a time-multiplexed digital communication network. The system includes a data sender attached to the network and associated with a physical object such as a rotating shaft to communicate on the network on an irregular interval, a series of first digital words representing a measurement of the physical object. A data receiver receive, the digital words on the irregular interval and produces second digital words on a periodic interval, the second digital words having values extrapolated from the first digital words. A display system receives the second digital words and provides a human readable display of the data of the second digital words.
It is thus one object of the invention to provide a display system that may accommodate irregular transmission rates inherent in the efficient use of network communication resources.
The extrapolation may extrapolate a current second digital word from the first digital word by calculating a difference between a previous first digital word prior to the current second digital word and a preceding first digital word prior to the previous first digital word. The current second digital word may be set to a value equal to the sum of a portion of the difference and the previous first digital word.
Thus it is another object of the invention to provide an extrapolation method that does not require recording times of receipt of the digital words or complex arithmetic operations necessary for true linear extrapolation.
The receiver may include a timer generating a periodic interrupt signal and a microprocessor responding to the periodic interrupt signal to extrapolate a current second digital word.
Thus it is another object of the invention to provide a simple method of producing a regular periodic series of digital words to the display unit such as may prevent perceivable stepping in the display.
The data receiver may further provide a filtering of the rate of change with time of the second digital words prior to their receipt by the display system. This may be done, for example, by creating a series of current filtered second digital words, each current filtered second digital word equal to the sum of a current second digital word times 1/m plus a previous filtered second digital word prior to the current filtered second digital word times (m−1)/m where m is an arbitrary factor controlling the amount of filtering.
Thus it is another object of the invention to provide flexible adjustment in the trade-off between elimination of jumps in the display and fast response of the display to changes in the displayed data. Adjustment of the filter constant m controls the amount of filtering.
A subsequent filtering stage may be provided in which a set of twice filtered second digital words are created, each current twice filtered second digital word equal to the sum of a current filtered second digital word time, 1/n and a previous twice filtered second digital word prior to the current filtered second digital word times (n−1)/n where n is an arbitrary factor independent of m controlling the amount of filtering. Further, a series of blended filtered second digital words may be created, each being a combination in a predetermined proportion of the current filtered second digital word minus the current twice-filtered second digital word.
Thus it is another object of the invention to provide a filter that allows control of overshoot as is represented by the second filtered digital words.
The foregoing and other objects and advantages of the invention will appear from the following description. In the description, reference is made to the accompanying drawings, which form a part hereof, and in which there is shown by way of illustration a preferred embodiment of the invention. Such embodiment does not necessary represent the full scope of the invention, however, and reference must be made to the claims herein for interpreting the scope of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1
is a simplified block diagram of the display system of the present invention having a data sender communicating with a network interface sending data over a multiplexed communication network to a second network interface attached to a display;
FIG. 2
is a set of graphs, the top graph showing the timing of transmission of first data from the sender of
FIG. 1
, the middle graph showing the values of the first data as a function of time, and the bottom graph showing a second set of digital words extrapolated from the first set of digital words according to the present invention;
FIG. 3
is a function block diagram showing operation of the present invention on the first digital words of
FIG. 2
to produce the second digital words of
FIG. 2
as may be realized by discrete circuitry; and
FIG. 4
is a flow chart showing the steps of the present invention as may be realized by an electronic processor executing a stored program.
DETAILED DESCRIPTION OF THE INVENTION
Referring now to
FIG. 1
, a display system
10
may include a sender module
12
such as a rotation counter attached to a physical element of the vehicle
14
such as an axle or drive shaft to make measurements of that physical object. While the present invention contemplates use with speedometers and tachometers, it will be understood that it is not limited to these devices but may be used with any display requiring fast response and step-less operation.
The sender module
12
may periodically supply first data
15
indicating the sensed quantity (e.g., road speed or engine rpm) to a network module
16
via input/output (“I/O”) circuitry on the network module
16
. The I/O circuitry
22
of the network module
16
may also receive data words
17
related to higher priority engine control functions or the like and may provide outputs to transmit data to actuators or other devices (not shown).
The network module
16
may provide some additional processing of the first data
15
(including the conversion of count information to rate information in some cases) and a formatting of the digital word for transmission on network cable
26
according to predetermined network protocols, for example, the CAN protocol specified in ISO document ISO/TC22/SC3WG1, thus creating the first digital word
27
from the first data. Because the network cable
26
serves as a common communication path for many sensors and actuators whose digital words are interleaved in time multiplexing, the protocol associates a header or unique time slot to each first digital word
27
indicating the consumer of the first digital word
27
, in this case, ultimately a display
28
.
As well as the I/O circuitry
22
, the network module
16
may include a processor
18
, a memory
20
for holding a stored program, receiving the first data
15
and network interface circuitry
24
all as are generally understood in the art.
The display
28
may receive data from a second network module
30
having components
22
′,
20
′,
18
′ and
24
′ similar to like numbered components in network module
16
. The network module
30
receives the first digital words
27
off of the network cable
26
and processes them according to a stored program held in memory
20
′ as executed by processor
18
′ to produce new digital words
29
as will be described. The I/O interface
22
′ then converts digital words
29
produced by the processor
18
to a form appropriate for driving a display
28
, for example, an analog waveform for driving a coil movement or pulses for driving a stepper motor.
Referring now to
FIG. 2
, the first digital words
27
(represented as values A
i
) are interleaved with other digital words in separate transmission frames
32
to multiplex the bandwidth of the network cable
26
among many devices transmitting data. The digital words
27
will, in general, have a lower priority than other data and thus may be allocated to given frames
32
separated by an irregular interval. Thus as depicted, digital word A
1
is transmitted three frames prior to A
2
, which is six frames prior to the transmission of A
3
.
As mentioned above, this irregular transmission may result from preemption by higher priority data such as data related to engine control.
Referring still to
FIG. 2
, the network module
30
creates a second set of digital words
29
(represented as values B
i
) occurring on a regular, periodic interval
34
. Although A
1
and B
1
and A
2
and B
2
are shown aligned, in fact they are typically asynchronous. As will be described further below, the values B
i
are set equal to the values of A
i
occurring in the immediate prior interval
34
if a value of A
i
does occur during that interval. Thus in the example shown, B
1
takes the value of A
1
and B
2
takes the value of A
2
. Importantly, however, if a digital word A
i
does not occur in the interval
34
preceding a particular digital word B
i
, (for example, as occurs for B
3
), the present invention synthesizes a value for B
i
based on the preceding received A
i
value (in this case A
2
) plus a predetermined fraction (1/q) of the difference Δ
i
between the two preceding received first digital words A
i−1
and A
i−2
, in this case A
1
and A
2
. This extrapolation is continued until a digital word A
i
is received (in this case A
3
) in the interval
34
prior to the value of B
i
being generated.
This is not a linear extrapolation insofar as the algorithm requires no knowledge of timing of receipt of digital words A
i−1
and A
i−2
. Further, the transmission rate of the first digital words A
i
need not be synchronous with the generation rate of the second digital words B
i
.
Referring now to
FIGS. 2 and 3
, a current digital word A
i
may be received by the network module
30
within a given interval
34
before the generation of a digital word B
i
. If so, it is connected directly to a filter section
36
indicated schematically by the operation of a switch
38
which switches to receive the incoming digital word A
i
.
If a digital word A
i
is not received within the interval
34
, however, then the filter section
36
receives a synthesized value formed from the difference Δ
i
between the previous first digital word A
i−1
, and the first digital word preceding the previous digital word: A
1−2
, the difference Δ
i
produced by subtraction block
40
. This difference Δ
i
is multiplied by a scaling factor 1/q as indicated by scaling block
42
and summed to the preceding first digital word A
i−1
.
This same process is shown in the flow diagram of
FIG. 4
, where the receipt of new data A
i
is detected at decision block
44
. If a new data A
i
has arrived during the preceding interval
34
, then the synthesized value B
i
is set equal to that value A
i
as shown in process block
48
and a new Δ
1
value is computed for Δ
i
=(A
i
-A
i−1
) as indicated by process block
50
. If at decision block
44
, no new data A
i
is detected within the interval
34
, then the second digital word B
i
is synthesized from the value A
i−1
+Δ
i−1
/q as indicated by process block
46
.
Thus, as shown in
FIG. 2
, a new value B
3
may be generated from the previous value of A
2
(not falling within the interval
34
preceding B
3
) plus a difference value Δ
2
/q indicating generally the trend of data in the last two digital words A
1
and A
2
.
In this way, for example, during a period of acceleration, a speedometer will move upward smoothly in speed even without the presence of a new digital word. Similarly, if the speed is constant and the Δ value is zero, a uniform speed will be displayed despite the irregularity in the first digital words.
Referring again to
FIGS. 3 and 4
, once the extrapolated value B
i
is obtained, it may be filtered in a set of filter steps (blocks
52
,
62
,
72
and
78
of
FIG. 4
) or by a set of filter stages (blocks
52
′,
62
′,
72
′ and
78
′ of
FIG. 3
) which serve generally to smooth out rapid changes in the value B
i
received or generated. As will be seen, the filters may be adjusted to provide the desired trade-off between a highly responsive display that shows changes in B
i
values as they occur and which may be desirable so that the operator of the vehicle has immediate access to the latest data and a filtered display that prevents overshooting and minor fluctuations and that may thereby accommodate slight irregularities produced by the estimation process of the present invention.
Referring to
FIG. 3
, first filter stage
52
′ creates values E
i
that are the weighted sum of a previous value E
i−1
and the latest generated value B
i
. This is shown schematically in
FIG. 3
by multiplier
54
scaling the received B
i
value by 1/m and summing it at summing block
56
with the previous value E
i−1
stored at memory
57
times the factor (m−1)/m per multiplier
60
.
Referring again to
FIG. 4
, this same step is shown by process block
52
in which values of E
i
are generated equal to (1/m)B
i
+((m−1)/m) E
i−1
.
Referring to
FIG. 3
, a second filter stage
62
′ receives the values E
i
to create second filtered values F
i
that are the weighted sum of a previous value F
i−1
and the latest generated value E
i
. This is shown schematically in
FIG. 3
by multiplier
64
scaling the received E
i
value by 1/n and summing it at summing block
66
with the previous value F
i−1
stored at memory
68
times the factor (n−1)/n per multiplier
70
.
Referring to
FIG. 4
, this same step is shown by process block
62
in which values of E
i
are generated equal to (1/n)E
i
+((n−1)/n) F
i−1
.
Referring again to
FIG. 3
, a value G
i
may be generated being proportional to Ei and inversely proportional to F according to the formula Gi=2E
i
−F
i
. This summation is shown by summing block
74
receiving a scaled value of E
i
through multiplier
76
. The purpose of this process block is to de-emphasize rapid changes in the display value and thereby to prevent overshoot of the displayed value. This process is indicated in
FIG. 3
as block
72
and in
FIG. 4
as step
72
.
Referring again to
FIG. 3
, the value G
i
is again filtered in a manner similar to that of blocks
52
′ and
62
′ as shown by block
78
′ in which prescaler
80
multiplies the value of G
i
by 1/p followed by summing block
82
adding the value of H
i−1
stored at memory
84
after being scaled by (p−1)/p by scaler
86
.
This same step is shown in
FIG. 4
as process block
78
′ in which values H
i
are generated equal to (1/p)G
i
+((p−1)/p)H
i−1
. This last filter stage provides additional smoothing of data that is sent to the display
28
as indicated in
FIG. 4
as process block
80
.
Each of the values m, n, and p may be individually adjusted to provide the desired filtering tradeoff for a particular vehicle and type of data.
The above description has been that of a preferred embodiment of the present invention, and it will occur to those that practice the art that many modifications may be made without departing from the spirit and scope of the invention. In order to apprise the public of the various embodiments that may fall within the scope of the invention, the following claims are made.
Claims
- 1. A display system for a vehicle comprising:a time multiplexed data communication network; a data sender attached to the communication network and communicating with a physical object to transmit on the communications network on an irregular time interval a series of first digital words representing a measurement of the physical object; a data receiver receiving the first digital words on the irregular time interval and producing second digital words on a periodic interval, the second digital words having value extrapolated from the first digital words; and a display receiving the second digital words and providing a human readable display of the data of the second digital words.
- 2. The display system of claim 1 wherein the data receiver operates according to a stored program to extrapolate a current second digital word from the first digital words by:(i) calculating a difference between a previous first digital word prior to the current second digital word and a preceding first digital word prior to the previous first digital word; and (ii) set the current second digital to a value equal to a sum of a portion of the difference and the previous first digital word.
- 3. The display system of claim 2 wherein the portion is a predetermined constant fraction.
- 4. The display system of claim 2 wherein the data receiver includes a timer generating a periodic interrupt signal and a microprocessor responding to the periodic interrupt signal to extrapolate a current second digital word.
- 5. The display system of claim 1 wherein the data receiver further provides a filtering of the rate of change with time of the second digital words prior to their receipt by the display system.
- 6. The display system of claim 5 wherein the data receiver is an electronic processor and operates according to a stored program to filter the rate of change with time of the second digital words by creating a series of current filtered second digital words, each current filtered second digital word equal to the sum of a current second digital word times 1/m and a previous filtered second digital word prior to the current filtered second digital word times (m−1)/m where m is an arbitrary factor controlling the amount of filtering.
- 7. The display system of claim 6 wherein the data receiver is an electronic processor and operates according to a stored program to filter the rate of change with time of the second digital words by creating a series of current twice-filtered second digital words, each current twice filtered second digital word equal to the sum of a current filtered second digital word times 1/n and a previous twice-filtered second digital word prior to the current filtered second digital word times (n−1)/n where n is an arbitrary factor independent of m controlling the amount of filtering.
- 8. The display system of claim 7 wherein the data receiver operates according to a stored program to filter the rate of change with time of the second digital words by creating a series of blended filtered second digital words each being a combination in predetermined proportion of the current filtered second digital words and the current twice filtered second digital words.
- 9. The display system of claim 8 wherein the data receiver operates according to a stored program to filter the rate of change with time of the second digital words by creating a series of current thrice filtered second digital words, each current thrice filtered second digital word equal to the sum of a current blended second digital word times 1/p and a previous blended second digital word prior to the current filtered second digital word times (p−1)/p where p is an arbitrary factor controlling the amount of filtering.
- 10. The display system of claim 1 wherein the data senders detect rotation rate of a physical object selected from the group consisting of a vehicle engine and a vehicle wheel.
- 11. The display system of claim 1 wherein the data sender includes a microprocessor transmitting the first digital words as a pre-emptable task.
- 12. A method of transmitting and displaying vehicle data transmitted on an irregular interval over a time multiplexed data communication network comprising the steps of:measuring a physical object of the vehicle to produce a series of first digital words indicating a measurement of the physical object; transmitting the first digital words over the communications network on an irregular time interval; receiving the irregularly transmitted first digital words from the communications network at a data receiver and producing second digital words on a periodic interval, the second digital words having values extrapolated from the first digital words; and receiving the second digital words at a display providing a human readable display of the data of the second digital words.
- 13. The method of claim 12 extrapolating a current second digital word from the first digital words further includes the steps of:(i) calculating a difference between a previous first digital word prior to the current second digital word and a preceding first digital word prior to the previous first digital word; and (ii) set the current second digital to a value equal to a sum of a portion of the difference and the previous first digital word.
- 14. The method of claim 13 wherein the portion is a predetermined constant fraction.
- 15. The method of claim 12 including the step of limiting the rate of change with time of the second digital words prior to their receipt by the display.
- 16. The method of claim 15 wherein the step of limiting the rate of change with time of the second digital words creates a series of current filtered second digital words, each current filtered second digital word equal to the sum of a current second digital word times 1/m and a previous filtered second digital word prior to the current filtered second digital word times (m−1)/m where m is an arbitrary factor controlling the amount of filtering.
- 17. The method of claim 16 further including the step of creating a series of current twice-filtered second digital words, each current twice filtered second digital word equal to the sum of a current filtered second digital word times 1/n and a previous twice-filtered second digital word prior to the current filtered second digital word times (n−1)/n where n is an arbitrary factor independent of m controlling the amount of filtering.
- 18. The method of claim 17 further including the step of creating a series of blended filtered second digital words each being a combination in predetermined proportion of the current filtered second digital words and the current twice filtered second digital words.
- 19. The method of claim 18 further including the step of creating series of current thrice filtered second digital words, each current thrice filtered second digital word equal to the sum of a current blended second digital word times 1/p and a previous blended second digital word prior to the current filtered second digital word times (p−1)/p where p is an arbitrary factor controlling the amount of filtering.
- 20. The method of claim 12 wherein the data senders detect rotation rate of a physical object selected from the group consisting of a vehicle engine and a vehicle wheel.
US Referenced Citations (9)