The present invention is generally directed to vehicle communication systems and, more particularly, to vehicle communication systems or architectures that include a number of local nodes assigned to different areas of the vehicle.
A communication system for a modern vehicle typically includes an internal vehicle bus that interconnects sensors, actuators, control units, etc. according to specialized networking protocols and standards. Some examples of commonly used vehicle networking protocols and standards include Controller Area Network (CAN), Local Interconnect Network (LIN) and others. Most control units connected to a conventional vehicle bus are function-based control units that carry out a set of tasks relating to the particular function the control unit is intended to control, and do so according to a central operational state.
According to one aspect, there is provided a vehicle communication system that comprises: a central node manager having an electronic processing unit; a plurality of local nodes being located throughout the vehicle, each of the local nodes is associated with a specific zone within the vehicle and includes a communication circuit and one or more control circuit(s), the communication circuit includes a first interface adapted for serial or parallel data communication with the central node manager and a second interface adapted for parallel data communication with the control circuit(s), and the control circuit(s) include a plurality of electronic components arranged to carry out tasks associated with the specific zone where that particular local node is located; and a plurality of node connections connecting the central node manager to the local nodes, each of the node connections is a dedicated connection between the central node manager and a specific local node. Wherein each of the plurality of local nodes is arranged so that when parallel data is provided from the communication circuit to the control circuit(s), the control circuit(s) carry out tasks associated with the specific zone where that particular local node is located.
According to another aspect, there is provided a vehicle communication system that comprises: a central node manager having an electronic processing unit; a plurality of local nodes being located throughout the vehicle, each of the local nodes is a location-based node that manages the tasks for a specific area within the vehicle where that particular location-based node is located; and a plurality of node connections connecting the central node manager to the local nodes. Wherein the vehicle communication system is arranged so that data having a plurality of different data formats is sent from the central node manager to at least one of the plurality of local nodes over a single node connection.
According to another aspect, there is provided a method of operating a vehicle communication system having a central node manager and a plurality of local nodes. The method may comprise the steps of: receiving data at a communication circuit in one of the local nodes; providing parallel data from the communication circuit to one or more control circuit(s) in the local node; and carrying out one or more task(s) with the control circuit(s) in the local node in response to being presented with the parallel data, wherein the task(s) are associated with a specific zone within the vehicle where that particular local node is located.
One or more preferred exemplary embodiments of the invention will hereinafter be described in conjunction with the appended drawings, wherein like designations denote like elements, and wherein:
The vehicle communication system described herein, which is representative of a new type of communication architecture for vehicles, provides many improvements over traditional vehicle buses. Some non-limiting examples of such improvements may include: reducing the mass and complexity of the system, improving system performance, enabling greater design freedom, reducing power consumption by the system, better enabling system expansion and additional features, increasing security and data integrity in the system, and reducing system susceptibility to radiation from nearby electrical devices, to cite just a few of the potential advantages.
With reference to
The central node manager 30 acts as a primary or master controller for system 10 and communicates with the various local nodes 60-76 located throughout the vehicle in order to carry out a number of different tasks, including overseeing security within the system, assigning certain tasks to certain locals nodes, prioritizing global events, and others. In the particular embodiment of
Electronic processing unit 80 may carry out a variety of processing functions and tasks on behalf of the central node manager 30 and, according to the embodiment illustrated in
Shared data path 84 electronically connects the electronic processing unit 80 to one or more communication circuits 88-104, as well as other components, devices, circuits, etc. within the central node manager 30. The exact nature of the shared data path is largely dependent on the overall system setup, the number of local nodes to which the central node manager 30 is connected, etc. For example, if the communication circuits 88-104 are provided as LVDS circuits designed to communicate with local nodes 60-76 over differential pair connections 40-56, respectively, as shown in the embodiment illustrated in
Communication circuits 88-104 are designed to act as transmitters and/or receivers that facilitate communication between the electronic processing unit 80 and the various local nodes 60-76 located throughout the vehicle. In the example shown in
Transmitting unit 114 may include a serializer device that receives parallel input data from the shared data path 84 via a number of input ports 106, configures the parallel to a serialized format, and then transmits the now serialized data over a differential pair connection 40 to a corresponding deserializer device located at the local node 60. The corresponding deserializer device (together with the serializer device 114, sometimes referred to as a SerDes pair) could engage in a similar process to deserialize the transmitted data and convert it back to a parallel format for processing within the local node 60. Skilled artisans will appreciate that the receiving unit 116 operates in a converse manner; that is, it receives serial data from the local node 60 over the differential pair connections 40, deserializes the data into a parallel format, and provides the parallel data to the electronic processing unit 80 via the output ports 108 and shared data path 84. For purposes of simplicity, transmitting and receiving units and differential pair connections for the other communication circuits 90-104 have been omitted, but could be generally the same as those shown in
According to a different example, the communication circuits 88-104 include optical units for bi-directional communication over one or more fiber optic elements, connectors, cables, etc. The optical units may be fiber optic transceiver circuits that are self-configuring and un-keyed, making them fast and easy to install during manufacturing. In the case of a fiber optic configuration with self-configuring interfaces, if a connection was broken or otherwise disrupted, the interfaces could reconfigure making them appear different than their previous state (e.g., they could reconfigure according to some type of rotating algorithm). Other potential features and techniques that may be used with an optical configuration include polling each of the local nodes (e.g., following an ignition event or start up) in order to establish their presence, functionality and/or status, as well as pinging or querying each of the local nodes in an effort to verify their identify (e.g., through a unique address). If a particular local node is unable to verify or authenticate its identification or if a node connection is severed, for example, then the vehicle communication system 10 may take any number of remedial actions or counter measures put in place by the system architect. Such actions may include disabling the vehicle, activating an encryption requirement, providing system wide error sequencing, or sending a warning or distress signal, just to cite a few of the possibilities. The LVDS and optical examples above are not the only possibilities, as the system 10 could be designed to communicate according to some other technology instead like Ethernet, as these are merely two possibilities.
The node connections 40-56 connect the node manager 30 to the various local nodes 60-76 located throughout the vehicle. As mentioned above, different types of node connections may be employed, including serial-based differential pair connections and fiber optic connections. In the differential pair example, the node connections 40-56 may include two sets of differential pairs (i.e., a total of four wires), such as twisted pair copper wires designed for transmission using LVDS, that together achieve bi-directional communication between the central node manager 30 and one or more local nodes 60-76 through separate and dedicated differential paths. Differential pair connections are generally light weight, very fast, and relatively inexpensive. In the fiber optic example, the node connections 40-56 could include one or more fiber optic elements; this could include a single fiber optic fiber, a bundle of fiber optic fibers in the form of a fiber optic cable, or some other type of suitable serial or parallel optic connection or conduit where data is transmitted with light over dedicated optical paths. A “dedicated” node connection, as that term is used here in the context of node connections 40-56, refers to a connection between the central node manager and a single, particular local node. The node connections, whether they are provided in terms of differential pairs, optical connections and/or some other technology, may be considered high-speed or as having high through-put, as those terms are understood in the art. For example, central node manager 30 and one or more local nodes 60-76 may be configured to transmit and/or receive data at Gigabit, multi-Gigabit, or faster speeds. “High-speed” data, as that term is used here in the context of node connections 40-56, refers to serial or parallel data transfers between the central node manager and one or more local node(s) at rates of 100 Megabits per second (Mbps) or greater. Those skilled in the art will appreciate that myriad types of suitable node connections may be used.
Local nodes 60-76, also referred to as area modules or zone modules, are located throughout the vehicle and are configured to carry out certain local tasks for a particular area and/or region of the vehicle. Each local node 60-76 is associated with a specific zone or region of the vehicle. In some instances, the local nodes 60-76 operate according to a local operational state, in which case the local node handles the task or tasks at hand without direct intervention by the central node manager. A “local operational state,” as that term is used here, refers to a mode of operation where a local node carries out or performs tasks associated with a specific zone in the vehicle without first requiring permission or authorization from the central node manager. In other instances, it may be necessary for the local node to obtain permission from and/or otherwise interact with the central node manager in order to perform its tasks, this is referred to as a central operational state. A “central operational state,” as that term is used here, refers to a mode of operation where a local node must first obtain permission or authorization from the central node manager before carrying out or performing tasks associated with a specific zone in the vehicle. A multi-state or dual-state local node refers to a local node that is capable of operating in a local operational state a central operational state or both. The precise amount of control or responsibility assumed by the different local nodes may be left up to the system architect or designer, as vehicle communication system 10 allows for much flexibility and customization in terms of its implementation. In an effort to provide a tangible example of a potential local node,
For example, the vehicle communication system 10 may also include a left front node 62 that is designed to control a left head light, a left front turn signal, a window washer pump and washer fluid level switch, a left front wheel speed sensor, and any other sensors, components and/or other devices that are physically located in a left front zone or area of the vehicle. A left rear node 76 could similarly be used to control a left brake light, a left rear turn signal, a left rear wheel speed sensor, as well as any other sensors, components and/or other devices that are located in a left rear zone of the vehicle. Right front and rear nodes 68 and 72 may also be included within the system to correspondingly control such sensors, components and/or other devices that are located within their respective zones or areas of the vehicle. An instrument panel node 64 could be located in a front center section of the vehicle or cabin and could control various dials, switches, buttons and components of a vehicle infotainment system (e.g., a radio faceplate, volume and tuning knobs, preset buttons, a speaker, etc.), as well as other nearby components like a speedometer, tachometer, hazard light switch, HVAC controls and display, navigation module, light switch, turn signal switch, window washer switch, and horn switch, to name just a few of the possibilities. Because of the large number of devices falling within the area or jurisdiction of the instrument panel node 64, it may be necessary to divide its responsibilities into two or more sub-nodes. Again, a system architect or designer will likely be in a good position to structure and allocate tasks between the various local nodes. A rear shelf node 74 may also be provided to control a dome light, a sunroof switch, a center high mount stop light (CHMSL), left and right side rear speakers, or any other components that are mounted or otherwise located in that area or region of the vehicle. Local nodes or area modules 62-76 may generally have a similar form or architecture to that of local node 60, which is not to say that they are exactly the same, as they will need specific control circuits to carry out their assigned tasks. However, a common or universal design (e.g., common communication circuits 122, as described below) reduces the complexity of the system, with as many common parts used across the different local nodes as possible. Just because the following description is provided in the context of driver door node 60, this in no way indicates that the present system 10 is limited to driver doors only. It is fully expected that local nodes will be provided for other areas or locations within the vehicle, such as those listed above.
Turning now to
Wire bundle 120 connects the driver door node 60 to the rest of the vehicle communication system 10 and also supplies the driver door with power. It was previously stated that the present system architecture reduces the mass and complexity of the system 10, and the wire bundle 120 provides a tangible example of this benefit. In
Communication circuit 122 is designed as a communication interface between the local node 60 and the central node manager 30. The communication circuit 122 may include a first interface that is adapted for serial or parallel data communication with the central node manager 30 over node connection 40, and a second interface that is adapted for parallel data communication with the rest of the local node 60. The first interface of the communication circuit 122 may be directly or indirectly coupled to the node connection 40, and the second interface may be directly or indirectly coupled to the various control circuits 130-136 (e.g., indirectly coupled via electronic processing unit 124 or directly coupled to the inputs of circuits 130-136). It should be appreciated that circuit 122 is preferably the counterpart to the corresponding communication circuit 88 located in the central node manager 30, thus, a duplicative description of this component has been omitted. All of the features and characteristics of circuits 88-104 described above apply equally to circuit 122. During operation in a central operational state, the communication circuit 122 may wake up or activate the electronic processing unit 124 in response to a clock or other signal provided by the central node manager 30, the local node 60 itself, or some other source. For instance, a clock signal could be provided by the central node manager 30 over node connection 40 such that, once deserialized by receiving unit 154, the clock is provided on one of the deserializer output ports and activates electronic processing unit 124 accordingly. Any clock signal not being utilized off of the deserializer device could potentially be used. In a different embodiment, the clock signal may be provided by a free running clock oscillator or some other component that is part of the local node 60 (e.g., a component that is coupled to or embedded within the communication circuit 122). Whether the clock signal is provided by the central node manager 30 or by the local node 60 itself, the electronic processing unit 124 could be configured to operate in a central operational state where it is only activated and carrying out tasks when a clock signal is present; once the clock signal is removed, the processing unit would be deactivated. This is different than a local operational state, where the different control circuits 130-136 are carrying out tasks without the use of a clock governed by the central node manager. This type of configuration, where the electronic processing unit 124 is only running when a clock signal is present, can greatly reduce the electromagnetic compatibility (EMC) and the processing resources of the system. When the communication circuit 122 is not receiving such a clock signal, the local node 60 can still operate according to a local operational state, as the processing unit 124 may not be needed for such tasks. Thus, the local node 60 may be an example of a multi-state or dual-state local node in that it can operate in both a central operational state and a local operational state.
Electronic processing unit 124, which is an optional component, may be designed to carry out certain tasks or functions for the particular local node in which it is located and can include a digital processor 160 and memory 162. The exact nature and type of electronic processing unit that is needed depends greatly on the particular local node or area module which it is servicing, as it is possible for a single local node to include one or more processing units incorporating synchronous and/or asynchronous operations. If the local node is designed to operate according to a local operational state only (i.e., exclusively as a finite state machine without interaction with the central node manager 30), then the electronic processing unit 124 may be omitted altogether, as there may not be any need for such a device. If, on the other hand, the local node is designed to operate according to a multi-state arrangement including both local operational state and/or central operational state operation, then one or more electronic processing units 124 could be provided to interface with the central node manager 30. As will be subsequently explained in more detail, some local nodes are designed to operate exclusively in a local operational state mode, meaning that they take care of local operations without needing authorization or permission from the central node manager 30. Other local nodes are designed to operate in a multi-state or hybrid type of mode where they handle some local tasks on their own, but others require permissive interaction with the central node manager 30. In some instances, the local node performs a certain function or task and then reports to the central node manager; reporting after a task is performed is different than asking for permission before performing the task. In other instances, the local node may need to obtain permission first from the central node manager (e.g., via a clock signal at the communication circuit 122, as previously described), after which it can carry out the function and report back. In this context, the electronic processing unit 124 may be thought of as a static CPU of sorts, in that it needs to be activated by the central node manager 30. These are only some of the possibilities, as others are certainly possible. When a local node is operating in a multi-state mode, there can still be a significant reduction in EMC and/or processing resources, as the central node manager 30 is only being used to execute or handle certain tasks, while the finite state machine portion of the local node carries out the rest.
As mentioned in the preceding paragraph, electronic processing unit 124 is an optional component and can be removed from the local node 60. In an embodiment where the electronic processing unit 124 is not present, data is received at the first interface and is provided from the second interface of the communication circuit 122 to the various control circuits 130-136 without being processed by unit 124. When raw data is presented, applied and/or otherwise provided to the control circuits 130-136, which are preferably arranged as a finite state machine, the data can cause a change in state that results in the local node carrying out tasks associated with that particular area of the vehicle. For example, in terms of driver door node 60, raw data representing the state of various sensors in and/or outside of the driver door may be presented to control circuits 130-136 that cause the circuits to unlock the door, lower the window, adjust the mirror or perform some other driver door-related task. Unlike some traditional vehicle communication systems, where messages are put on a central vehicle bus and include an address for identifying the intended recipient and instructions that need to be extracted and interpreted by the recipient, vehicle communication system 10 may be arranged so that raw data is simply sent to a particular local node without an identifying address or instructions. In this example, no address or identifier is needed because each of the node connections 40-56 is a dedicated connection that couples the central node manager 30 to a single local node 60-76; that is, a message address is unnecessary because there is only one local node or message recipient per dedicated node connection. Moreover, in this example, no specific instructions are needed since the raw data is simply provided or presented to the control circuits 130-136, which are arranged as one or more finite state machines. The finite state machines can simply change states, and correspondingly carry out one or more tasks, in response to the raw data that is inputted to control circuits 130-136. There are numerous potential benefits associate with a system that can communicate in this manner. As illustrated in the circuit diagrams corresponding to control circuits 130-136, the raw data is preferably provided to control circuits 130-136 in a parallel data format. In the preceding description, the electronic processing unit 124 was omitted; it should be appreciated, however, that processing unit 124 could be included as a configurable finite state machine that receives raw data in much the same way as just described. In many instances it may be desirable to provide one or more local nodes without an electronic processing device 124 and, in fact, the following descriptions of control circuits 130-136 assume that the electronic processing unit 124 has been removed.
Mirror control circuit 130 controls driver and passenger side mirrors on the outside of the vehicle and may be implemented, at least partially, in terms of a finite state machine.
Door lock control circuit 132 controls the locking mechanism for one or more doors in the vehicle and can be, at least partially, provided in terms of a finite state machine.
Window control circuit 134 controls the window mechanism for one or more windows in the vehicle and, like the previous circuits of the driver door zone node, is configured as a finite state machine.
Starting with the user interface sub-circuit 250 in
Motor control sub-circuit 252 is shown in
Door speaker circuit 136 provides the driver door with an audio speaker and can be, at least partially, provided in terms of a finite state machine. With reference to
In operation, node manager 30 is designed for use in a multi-state architecture and is able to operate according to different states, including a local operational state where control of small details is delegated to the various zone nodes 60-76 and a central operational state where node manager 30 controls the various zone nodes according to a more traditional system. Operation in the local operational state is designed to reduce or minimize the computational demands on the node manager 30 by allocating more local responsibility to an appropriate zone node. In one particular embodiment, the node manager sends high-speed serial data to one or more local node(s), where the high-speed serial data is deserialized, corresponding parallel data is provided to one or more control circuit(s), and the control circuit(s) respond to the raw parallel data and carry out one or more task(s) associated with the specific zone where that particular local node is located. The aforementioned process may happen without specific instructions being provided in the message from the central node manager that would otherwise need to be extracted and interpreted by the local node. It is also possible that in the aforementioned process, different data formats (e.g., sensor data, audio data, etc.) could be sent over the same node connection. In addition to various tasks directly and indirectly associated with the aforementioned states of operation, node manager 30 may also be responsible for security within vehicle communications system 10.
It is to be understood that the foregoing is a description of one or more preferred exemplary embodiments of the invention. The invention is not limited to the particular embodiment(s) disclosed herein, but rather is defined solely by the claims below. Furthermore, the statements contained in the foregoing description relate to particular embodiments and are not to be construed as limitations on the scope of the invention or on the definition of terms used in the claims, except where a term or phrase is expressly defined above. Various other embodiments and various changes and modifications to the disclosed embodiment(s) will become apparent to those skilled in the art. All such other embodiments, changes, and modifications are intended to come within the scope of the appended claims.
As used in this specification and claims, the terms “for example,” “for instance,” “such as,” and “like,” and the verbs “comprising,” “having,” “including,” and their other verb forms, when used in conjunction with a listing of one or more components or other items, are each to be construed as open-ended, meaning that the listing is not to be considered as excluding other, additional components or items. Other terms are to be construed using their broadest reasonable meaning unless they are used in a context that requires a different interpretation.