CA2362961C - Bridge for can to tcp/ip connection - Google Patents
Bridge for can to tcp/ip connection Download PDFInfo
- Publication number
- CA2362961C CA2362961C CA2362961A CA2362961A CA2362961C CA 2362961 C CA2362961 C CA 2362961C CA 2362961 A CA2362961 A CA 2362961A CA 2362961 A CA2362961 A CA 2362961A CA 2362961 C CA2362961 C CA 2362961C
- Authority
- CA
- Canada
- Prior art keywords
- tcp
- message
- network
- frame
- sending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)
- H04L12/4135—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD) using bit-wise arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/106—Mapping addresses of different types across networks, e.g. mapping telephone numbers to data network addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
Abstract
A method and corresponding apparatus for communicating a controller area network (CAN) message between a sending node, attached to a sending CAN
network, and a receiving node, where the sending and receiving nodes are interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP). The invention provides for having the sending node extract the CAN message payload (arbitration field, control field and data field if any) from a CAN message, having it embed the CAN message payload in a TCP/IP frame as the TCP/IP data field of the TCP/IP frame, having it refer to a routing form to determine the address on the TCP/IP network of the receiving node; and having it transmit the TCP/IP frame over the TCP/IP
network using the address for the receiving node from the routing form. The invention also provides for having the receiving node extract the CAN message payload from the TCP/IP frame, and alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content at the receiving node (i.e. in case the receiving node is attached to a receiving CAN
network, to correspond to the CAN message content of the receiving CAN
network, but if the receiving node hosts a browser and is not attached to a receiving CAN network, to correspond to the CAN message content according to the preference of the user of the browser), the altering performed by reference to a mapping relating identifiers based on the network address of the sending node.
network, and a receiving node, where the sending and receiving nodes are interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP). The invention provides for having the sending node extract the CAN message payload (arbitration field, control field and data field if any) from a CAN message, having it embed the CAN message payload in a TCP/IP frame as the TCP/IP data field of the TCP/IP frame, having it refer to a routing form to determine the address on the TCP/IP network of the receiving node; and having it transmit the TCP/IP frame over the TCP/IP
network using the address for the receiving node from the routing form. The invention also provides for having the receiving node extract the CAN message payload from the TCP/IP frame, and alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content at the receiving node (i.e. in case the receiving node is attached to a receiving CAN
network, to correspond to the CAN message content of the receiving CAN
network, but if the receiving node hosts a browser and is not attached to a receiving CAN network, to correspond to the CAN message content according to the preference of the user of the browser), the altering performed by reference to a mapping relating identifiers based on the network address of the sending node.
Description
BRIDGE FOR CAN TO TCP/IP CONNECTION
BACKGROUND OF THE INVENTION
1. Technical Field The present invention pertains to the field of network communication. More particularly, the present invention pertains to enabling communication between two or more controller area network (CAN) nodes of different CAN networks connected by a network implementing transmission control protocol/Internet protocol (TCP/IP), such as the Internet or an Ethernet.
BACKGROUND OF THE INVENTION
1. Technical Field The present invention pertains to the field of network communication. More particularly, the present invention pertains to enabling communication between two or more controller area network (CAN) nodes of different CAN networks connected by a network implementing transmission control protocol/Internet protocol (TCP/IP), such as the Internet or an Ethernet.
2. Description of Related Art A recent innovation in local area networks is the Control Area Network (CAN) standard, the basic level of which is identified in ISO 1.1898 and ISO
1. The CAN standard was originally developed to specify distributed real-time control system requirements in automotive applications. An implementation according to the CAN standard is a real-time, distributed control system including different electronic components that communicate with each other not by signals carried by dedicated wires, but by signals conveyed by a linear bus according to the CAN protocol. Manufacturers such as Inte[TM, PhillipsTM, National SemiconductorTM, NECTM, SiemensTM and MotorolaTM provide very low cost CAN
chips that conform to the protocol. The use of CAN technology has been extended to other custom applications, including industrial control applications.
As shown in Fig. 1, a CAN-type network l la provides for communication of pre-determined messages between stations 12a (nodes of the CAN network, each of which are a control. unit) interconnected in a linear bus structure by a CAN
bus 14a.
Each CAN station is the peer of every other station. Instead of addressing a message to another station by indicating the other station, a transmitting station indicates to all other stations the content of the message using an identifier provided with the message. In such content-based addressing, each message is broadcast to all other, receiving stations, and each receiving station discards the message unless the message is on a pre-determined acceptance list for the receiver.
There are now two versions of CAN. differing in the length of the identifier.
A CAN implementation according to the CAN specification, part A, uses an 1l-bit identifier.
One according to the CAN specification, part B, uses a 29-bit identifier. See CAN Specification, Version 2.0, by Robert Bosch GmbI1, Postfach 50, D-7000 Stuttgart 1 (1991).
Any station of a CAN network can use the CAN bus to transmit (broadcast) a message when the bus is unoccupied.
While transmitting a message, a station monitors the bus for an indication that another station is also attempting to transmit a message. If another station is also attempting to use the bus, the contention for the bus is arbitrated using a scheme in which each message is pre-assigned a priority that accompanies the message.
Message transfer in a CAN-type network is achieved using four types of frames. A data frame, as shown in Fig. 2. conveys data from a transmitter station to receiver stations, and has an identifier (of' different length depending on the version of CAN, as described above) that indicates the type of message, i.e. its content, used for content-addressing. A
remote frame, as shown in Fig. 3, conveys a request for a data frame having an identifier that is the same as used in the remote frame. A remoter frame uses a remote transmission request (RTR) bit to identify itself, i.e. to indicate that it is a request for a CAN message. An error frame, as shown in Fig. 4, is transmitted by any station when the station detects a communication (bus) error, i.e. when the station receives a message but the cyclic redundancy check (CRC) for the message fails. An overload frame (not shown), is used to provide extra delay between data frames or remote frames, a delay that is in addition to the interfame spacing (Fig. 2).
Various application layers have been developed with specifications specifically oriented to industrial and process control applications, control networks for heavy duty trucks and buses, distributed control systems and control networks for cars. However, all of these systems are limited to inter-node communication, and will not support communicating with nodes across an intervening network using a different protocol, such as TCP/IP, which is used for communication on the Internet.
What is needed is a device that enables communication between stations of two different CAN-type networks interconnected by an intervening network, and especially an intervening network using TCP/IP, such as the Internet. Such a device would have to overcome the difficulty that a TCP/IP
network uses physical addressing, while a CAN network uses content-based addressing, as indicated above.
What is also needed is a way to view the content of messages being communicated in a CAN-type network using a remote computer interconnected to the CAN-type network via an intervening network using TCP/IP, such as the Internet. This would allow both monitoring a CAN-type network and also diagnosing problems for the CAN-type network, all from a remote location.
SUMMARY OF THE INVENTION
A method and corresponding apparatus are disclosed for communicating a controller area network (CAN) message between a sending node, attached to a sending CAN network, and a receiving node; where the sending and receiving nodes are interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP); where the CAN message includes a CAN
message payload, which in turn includes an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is CAN-network-dependent or, more generally, node-dependent, a remote transmission request bit, a control field, and an optional data field, if any; and where the communicating is according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field. The invention provides for having the sending node extract the CAN message payload from the CAN message; having the sending node embed the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame; having the sending node refer to a routing form to determine the address on the TCP/IP network of the receiving node; and having the sending node transmit the TCP/IP frame over the TCP/IP network using the address for the receiving node from the routing form.
The receiving node may extract the CAN message payload from the `hCP/IP
frame; alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content at the receiving node, the altering performed by reference to a mapping relating identifiers according to their usage at different network addresses; and, if the receiving node is attached (directly connected) to a CAN network, having the receiving node broadcast the CAN message on the CAN network to which it is directly connected. If the receiving node hosts a browser, there is no broadcasting of the received CAN message payload, but only a displaying of the CAN message by the browser for examination by the user of the browser.
In one aspect of the invention, there is provided a method of communicating a controller area network (CAN) message between a sending node, attached to a sending CAN network, and a receiving node, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP), the CAN message including: a start of frame bit, a CAN message payload, a cyclic redundancy check field, an acknowledgment field, and an end of frame field; the CAN message payload including: an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is node-dependent, a remote transmission request bit, a control field, and an optional data field; the communicating according to TCP/IP performed by transmitting TCP/IP
frames, including a header, a footer, and a "I'CP/IP data field; the method comprising the steps of.
a) having the sending node extract the CAN message payload from the CAN
message; b) having the sending node embed the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame; c) having the sending node refer to a routing form to determine the address on the TCP/IP network of the receiving node; and d) having the sending node transmit the TCP/IP frame over the TCP/IP network using the address for the receiving node from the routing form; wherein the routing form indicates, for each of a plurality of different possible CAN message identifier field values, an address on the TCP/IP network for other CAN networks interconnected with the sending CAN
network via the TCP/IP network.
In another aspect of the invention, there is provided an apparatus for sending a controller area network (CAN) message from a sending node, attached to a sending CAN
network, to a receiving node, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP), the CAN message including: a start of frame bit, a CAN message payload, a cyclic redundancy check field, an acknowledgment field, and an end of frame field; the CAN message payload including: an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is 4a node-dependent, a remote transmission request bit, a control field, and a data field of variable length; the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the apparatus comprising: a) a local CAN controller, responsive to the CAN message as broadcast over the sending CAN network, for extracting the CAN message payload from the CAN
message and for saving the CAN message payload in a buffer; h) an interfacing application, responsive to the CAN message payload in the buffer, for embedding the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP
frame, and for providing the address on the TCP/IP network of the receiving node by referring to a routing form; and c) a TCP/IP protocol utility, responsive to the address of the receiving node and further responsive to the TCP/IP frame in which the CAN message payload is embedded, for transmitting the TCP/IP frame over the TCP/IP network using the address for the receiving node determined from the routing form; wherein the routing form indicates, for each of a plurality of different possible CAN message identifier field values, an address on the TCP/IP network for other CAN networks interconnected with the sending CAN network via the TCP/IP network.
In another aspect of the invention, there is provided an apparatus for receiving at a receiving node a controller area network (CAN) message sent from a sending node, the sending node attached to a sending CAN network, the receiving node attached to a receiving CAN network, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/ Internet protocol (TCP/IP), the CAN message including: a start of frame bit, a CAN message payload, a cyclic redundancy check field, an acknowledgment field, and an end of frame field;
the CAN
message payload including: an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence for the CAN
network in which the CAN message is being communicated, a remote transmission request bit, a control field, and an optional data field: the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a 'TCP/IP data field; the apparatus comprising: a) a TCP/IP protocol utility, responsive to the TCP/IP frame in which the CAN message payload is embedded, for extracting the 4b CAN message payload from the TCP/IP frame, and for providing the network address of the sending node; b) an interfacing application, responsive to the CAN message payload extracted from the TCP/IP frame and fo the network address of the sending node, for altering the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content in the receiving CAN network, the altering performed by reference to a mapping relating identifiers in different CAN networks, the different CAN
networks being distinguished by their TCP/IP network addresses, for providing the CAN
message payload with the altered as needed identifier in a buffer; and c) a local CAN
controller, responsive to the CAN message payload in the buffer, for augmenting the CAN
message payload with additional fields as required to provide a complete CAN message, and for broadcasting the completed CAN message over the receiving CAN network.
BRIEF DESCRIPTION OF THE DRAWINGS
The above and other objects, features and advantages of the invention will become apparent from a consideration of the subsequent detailed description presented in connection with accompanying drawings, in which:
Fig. I is a block diagram showing the interconnection by a TCP/IP network of a CAN-type network with both another CAN-type network and also with a browser, according to the present invention; and Fig. 2 is a data structure diagram for a CAN data frame;
Fig. 3 is a data structure diagram for a CAN remote frame;
Fig. 4 is a data structure diagram for a CAN error frame;
1. The CAN standard was originally developed to specify distributed real-time control system requirements in automotive applications. An implementation according to the CAN standard is a real-time, distributed control system including different electronic components that communicate with each other not by signals carried by dedicated wires, but by signals conveyed by a linear bus according to the CAN protocol. Manufacturers such as Inte[TM, PhillipsTM, National SemiconductorTM, NECTM, SiemensTM and MotorolaTM provide very low cost CAN
chips that conform to the protocol. The use of CAN technology has been extended to other custom applications, including industrial control applications.
As shown in Fig. 1, a CAN-type network l la provides for communication of pre-determined messages between stations 12a (nodes of the CAN network, each of which are a control. unit) interconnected in a linear bus structure by a CAN
bus 14a.
Each CAN station is the peer of every other station. Instead of addressing a message to another station by indicating the other station, a transmitting station indicates to all other stations the content of the message using an identifier provided with the message. In such content-based addressing, each message is broadcast to all other, receiving stations, and each receiving station discards the message unless the message is on a pre-determined acceptance list for the receiver.
There are now two versions of CAN. differing in the length of the identifier.
A CAN implementation according to the CAN specification, part A, uses an 1l-bit identifier.
One according to the CAN specification, part B, uses a 29-bit identifier. See CAN Specification, Version 2.0, by Robert Bosch GmbI1, Postfach 50, D-7000 Stuttgart 1 (1991).
Any station of a CAN network can use the CAN bus to transmit (broadcast) a message when the bus is unoccupied.
While transmitting a message, a station monitors the bus for an indication that another station is also attempting to transmit a message. If another station is also attempting to use the bus, the contention for the bus is arbitrated using a scheme in which each message is pre-assigned a priority that accompanies the message.
Message transfer in a CAN-type network is achieved using four types of frames. A data frame, as shown in Fig. 2. conveys data from a transmitter station to receiver stations, and has an identifier (of' different length depending on the version of CAN, as described above) that indicates the type of message, i.e. its content, used for content-addressing. A
remote frame, as shown in Fig. 3, conveys a request for a data frame having an identifier that is the same as used in the remote frame. A remoter frame uses a remote transmission request (RTR) bit to identify itself, i.e. to indicate that it is a request for a CAN message. An error frame, as shown in Fig. 4, is transmitted by any station when the station detects a communication (bus) error, i.e. when the station receives a message but the cyclic redundancy check (CRC) for the message fails. An overload frame (not shown), is used to provide extra delay between data frames or remote frames, a delay that is in addition to the interfame spacing (Fig. 2).
Various application layers have been developed with specifications specifically oriented to industrial and process control applications, control networks for heavy duty trucks and buses, distributed control systems and control networks for cars. However, all of these systems are limited to inter-node communication, and will not support communicating with nodes across an intervening network using a different protocol, such as TCP/IP, which is used for communication on the Internet.
What is needed is a device that enables communication between stations of two different CAN-type networks interconnected by an intervening network, and especially an intervening network using TCP/IP, such as the Internet. Such a device would have to overcome the difficulty that a TCP/IP
network uses physical addressing, while a CAN network uses content-based addressing, as indicated above.
What is also needed is a way to view the content of messages being communicated in a CAN-type network using a remote computer interconnected to the CAN-type network via an intervening network using TCP/IP, such as the Internet. This would allow both monitoring a CAN-type network and also diagnosing problems for the CAN-type network, all from a remote location.
SUMMARY OF THE INVENTION
A method and corresponding apparatus are disclosed for communicating a controller area network (CAN) message between a sending node, attached to a sending CAN network, and a receiving node; where the sending and receiving nodes are interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP); where the CAN message includes a CAN
message payload, which in turn includes an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is CAN-network-dependent or, more generally, node-dependent, a remote transmission request bit, a control field, and an optional data field, if any; and where the communicating is according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field. The invention provides for having the sending node extract the CAN message payload from the CAN message; having the sending node embed the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame; having the sending node refer to a routing form to determine the address on the TCP/IP network of the receiving node; and having the sending node transmit the TCP/IP frame over the TCP/IP network using the address for the receiving node from the routing form.
The receiving node may extract the CAN message payload from the `hCP/IP
frame; alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content at the receiving node, the altering performed by reference to a mapping relating identifiers according to their usage at different network addresses; and, if the receiving node is attached (directly connected) to a CAN network, having the receiving node broadcast the CAN message on the CAN network to which it is directly connected. If the receiving node hosts a browser, there is no broadcasting of the received CAN message payload, but only a displaying of the CAN message by the browser for examination by the user of the browser.
In one aspect of the invention, there is provided a method of communicating a controller area network (CAN) message between a sending node, attached to a sending CAN network, and a receiving node, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP), the CAN message including: a start of frame bit, a CAN message payload, a cyclic redundancy check field, an acknowledgment field, and an end of frame field; the CAN message payload including: an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is node-dependent, a remote transmission request bit, a control field, and an optional data field; the communicating according to TCP/IP performed by transmitting TCP/IP
frames, including a header, a footer, and a "I'CP/IP data field; the method comprising the steps of.
a) having the sending node extract the CAN message payload from the CAN
message; b) having the sending node embed the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame; c) having the sending node refer to a routing form to determine the address on the TCP/IP network of the receiving node; and d) having the sending node transmit the TCP/IP frame over the TCP/IP network using the address for the receiving node from the routing form; wherein the routing form indicates, for each of a plurality of different possible CAN message identifier field values, an address on the TCP/IP network for other CAN networks interconnected with the sending CAN
network via the TCP/IP network.
In another aspect of the invention, there is provided an apparatus for sending a controller area network (CAN) message from a sending node, attached to a sending CAN
network, to a receiving node, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP), the CAN message including: a start of frame bit, a CAN message payload, a cyclic redundancy check field, an acknowledgment field, and an end of frame field; the CAN message payload including: an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is 4a node-dependent, a remote transmission request bit, a control field, and a data field of variable length; the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the apparatus comprising: a) a local CAN controller, responsive to the CAN message as broadcast over the sending CAN network, for extracting the CAN message payload from the CAN
message and for saving the CAN message payload in a buffer; h) an interfacing application, responsive to the CAN message payload in the buffer, for embedding the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP
frame, and for providing the address on the TCP/IP network of the receiving node by referring to a routing form; and c) a TCP/IP protocol utility, responsive to the address of the receiving node and further responsive to the TCP/IP frame in which the CAN message payload is embedded, for transmitting the TCP/IP frame over the TCP/IP network using the address for the receiving node determined from the routing form; wherein the routing form indicates, for each of a plurality of different possible CAN message identifier field values, an address on the TCP/IP network for other CAN networks interconnected with the sending CAN network via the TCP/IP network.
In another aspect of the invention, there is provided an apparatus for receiving at a receiving node a controller area network (CAN) message sent from a sending node, the sending node attached to a sending CAN network, the receiving node attached to a receiving CAN network, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/ Internet protocol (TCP/IP), the CAN message including: a start of frame bit, a CAN message payload, a cyclic redundancy check field, an acknowledgment field, and an end of frame field;
the CAN
message payload including: an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence for the CAN
network in which the CAN message is being communicated, a remote transmission request bit, a control field, and an optional data field: the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a 'TCP/IP data field; the apparatus comprising: a) a TCP/IP protocol utility, responsive to the TCP/IP frame in which the CAN message payload is embedded, for extracting the 4b CAN message payload from the TCP/IP frame, and for providing the network address of the sending node; b) an interfacing application, responsive to the CAN message payload extracted from the TCP/IP frame and fo the network address of the sending node, for altering the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content in the receiving CAN network, the altering performed by reference to a mapping relating identifiers in different CAN networks, the different CAN
networks being distinguished by their TCP/IP network addresses, for providing the CAN
message payload with the altered as needed identifier in a buffer; and c) a local CAN
controller, responsive to the CAN message payload in the buffer, for augmenting the CAN
message payload with additional fields as required to provide a complete CAN message, and for broadcasting the completed CAN message over the receiving CAN network.
BRIEF DESCRIPTION OF THE DRAWINGS
The above and other objects, features and advantages of the invention will become apparent from a consideration of the subsequent detailed description presented in connection with accompanying drawings, in which:
Fig. I is a block diagram showing the interconnection by a TCP/IP network of a CAN-type network with both another CAN-type network and also with a browser, according to the present invention; and Fig. 2 is a data structure diagram for a CAN data frame;
Fig. 3 is a data structure diagram for a CAN remote frame;
Fig. 4 is a data structure diagram for a CAN error frame;
Fig. 5 is a data structure diagram showing a CAN message included in a TCP/IP frame, according to the present invention;
Fig. 6 is a flow chart/ task allocation diagram, according to the present invention, for transmitting a CAN
message over a TCP/IP network; and Fig. 7 is a flow chart/ task allocation diagram, according to the present invention, for receiving a CAN
message over a TCP/IP network.
BEST MODE FOR CARRYING OUT THE INVENTION
The preferred embodiment will now be described in the particular application where controller area network (CAN) messages are provided over the Internet. The Internet is here used as one example of a network communicating according to transmission control protocol/ Internet protocol (TCP/IP).
It is be understood that the present invention is directed to the communication of CAN messages over any network using TCP/IP, such as any Ethernet, not only the Internet.
Referring now to Fig. 1, a bridge 10a for connecting a controller area network (CAN) lla to an Internet connection 16, which requires transmission control protocol/ Internet protocol (TCP/IP), is shown as including a local CAN
controller 21 for communicating over the CAN network lla;
TCP/IP protocol utility 23 for communicating over the Internet via the Internet connection 16; and an interfacing application 22 for converting CAN messages to a form suitable for communicating over the Internet, i.e. to a form according to TCP/IP, and also for converting Internet communications to a form suitable for communication over a CAN network, i.e. to a form according to one or another of various prescribed CAN
message types. The CAN network 11a includes CAN stations 12a communicating via a CAN bus 14a, through which the bridge 10a also communicates with the CAN stations 12a.
Still referring to Fig. 1, a CAN station 12a in a first CAN network lia, can transmit, via a bridge l0a according to the present invention, a message that is on an acceptance list of a CAN station 24 in a second CAN network llb, interconnected with the first CAN network by the Internet.
For this, the CAN station 24 of the second CAN network lib depends on a second bridge 10b.
Besides being able to transmit a message that is received by a CAN station 24 of a second CAN network ilb, a CAN station 12a of the first CAN network ila can transmit a message so that is viewed by a browser communicating over the Internet via the Internet connection 16. For this, the browser 18 relies on the services of the bridge 10a to convert the CAN message to a form suitable for TCP/IP
communication.
Referring now to Fig. 5, according to the preferred embodiment, a CAN message payload, i.e. a CAN message less framing bits and its CRC and acknowledgment (ACK) fields (the ACK field being used to signal to a sending station when a CAN message is received without error), is embedded in a TCP/IP data field of a TCP/IP frame. A TCP/IP data field can be up to several kilobytes in length, compared to 11 bytes as the maximum length of a CAN message payload. In some aspects of the present invention, this disparity is taken advantage of by embedding more than one CAN message payload in a TCP/IP
frame. In the preferred embodiment, if the bridge 10a is embedding a first CAN message in a TCP/IP frame, and a=second CAN message (for the same destination) is detected before a predetermined time interval elapses, the interfacing application will arrange to have the second CAN message payload added to the same TCP/IP data field, and so on, as described below. The predetermined waiting time is typically a second, but is sometimes as much as 5 seconds.
According to the preferred embodiment of the present invention, the only two CAN message types that are embedded in a TCP/IP frame are a CAN data frame and a CAN remote frame. The CAN error frame is not needed because when a local station 12a broadcasts a CAN message and the local CAN
controller 21 receives the CAN message, the local CAN
controller 21 will signal (on the CAN bus 14a) any error in communication over the CAN bus 14a. And when a CAN message is transmitted by the bridge l0a over the Internet, the Internet TCP/IP provides for error detection and correction.
Finally, if a message is intended for a CAN station 12b of the second CAN network llb, the bridge 10b attached to the CAN bus 14b for the second network extracts the CAN message from the TCP/IP data frame, constructs a CAN data frame or CAN remote frame (depending simply on whether the CAN message contains data), and broadcasts the CAN message on the CAN bus 14b for the second CAN network lib. From that point on, the CAN protocol for error detection and correction becomes effective. Thus it is unnecessary for the bridge 10a to include either a CRC field or an ACK field in a TCP/IP data frame when communicating a CAN message over the Internet.
Referring again to Fig. 1, the local CAN controller 21 of the bridge 10a, which is built around a standard CAN chip, e.g. the SJA 1000, interfaces the bridge 10a to the CAN
network lla. In this interfacing, the local CAN controller 21 provides for proper bit-timing, and performs bit encoding and synchronization. As the interface to the CAN network lla, it also responds to error frames in case of transmitting a CAN message that is not properly received by one or more CAN stations on the CAN network lla. In addition, as mentioned above, it signals an error in communication when it receives a CAN message, over the CAN network lla, for which the CRC fails.
Finally, the local CAN controller 21 has, in the preferred embodiment, its own acceptance list, and it acknowledges successful receipt of all CAN messages on that acceptance list. Such a list is used in case of some CAN
messages being intended for CAN stations of another CAN
network, such as the second CAN network llb, with which communication is through the bridge 10a and over the Internet.
The bridge 10a, including the local CAN controller 21, is hosted by a computer (not shown), which in the preferred embodiment uses an internal bus (not shown) for communicating between various controllers, such as between the local CAN
controller 21 and the CPU (not shown) of the computer. The local CAN controller is, for example, a card in an ISA bus and has an assigned I/O base address. It uses a first-in-first-out (FIFO) buffer 24 for storing CAN messages, and it communicates with modules executing in the CPU of the computer by polling or by interrupts. For example, for the local CAN controller 21, in case of a computer using DOS or a Windows operating system, a so-called ISACAN-PC card, .
available from Hitex-Systementwicklung GmbH, could be used.
Where the local CAN controller 21 interfaces the bridge 10a to the CAN network lla, the TCP/IP protocol utility 23 interfaces the bridge 10a to the TCP/IP connection over the Internet 16. In the preferred embodiment, the TCP/IP
protocol utility 23, executing in the CPU of the computer hosting the bridge, performs Internet communication in the same way as a standard Internet server. Thus, to the Internet, the bridge 10a appears to be an Internet server.
On the Internet side of the TCP/IP protocol utility, data being communicated is in the form of packets, according to TCP/IP. On the interfacing application 22 side, data being communicated is in the form of files according to the operating system used by the bridge 10a. The operating system is, in the preferred embodiment, LINEX.
The interfacing application 22 is what provides the conversion between TCP/IP and CAN message protocol. It executes in the CPU of the computer hosting the bridge 10a, along with the TCP/IP protocol utility 23. The interfacing application 22 has tasks to perform whenever the bridge receives a CAN message either over the Internet or from its directly attached CAN network lla.
Referring now to both Fig. 1 and Fig. 6, when a CAN
message is to be transmitted from the first CAN network lla over the Internet via the bridge 10a, the CAN message is received by the local CAN controller 21 of the bridge 10a, because the CAN message is on an acceptance list of the local CAN controller, as described above, and placed in the FIFO
buffer 24, preferably only the payload, i.e. the parts of the CAN message that are tc be embedded in a TCP/IP data frame, namely the arbitration field, the control field, and the data field, if any (none for a. .AN remote frame). Then the local CAN controller 21 notifies the interfacing application 22 of the CAN message by setting an interrupt, in the preferred embodiment, or when polled by the interfacing application 22.
The interfacing application then acquires the CAN message from the FIFO buffer 24 of the local CAN controller 21.
Next, the interfacing application 22 must determine how to address the CAN message for Internet communication. For this, it uses a routing form indicating where to send each CAN message it acquires from the local CAN controller 21, based on the identifier of the CAN message. The routing form indicates each other CAN network, interconnected with the first by the Internet, to which a CAN message is to be sent, based on the identifier of the CAN message used in the first, local CAN network.
Table 1. Routing form used by interfacing application when sending a CAN
message over a TCP/IP network.
Identifier Internet address (in origin CAN network) of recipient id-CAN-A-xl 111.111.111.111 222.222.222.222 333.333.333.333 444.444.444.444 id-CAN-A-x2 111.111.111.111 id-CAN-A-x3 444.444.444.444 id-CAN-A-x4 111.111.111.111 Table 1 illustrates the routing form used by the interfacing application 22 for the bridge 12a in sending a CAN message from the first CAN network lla over the Internet to either another CAN network lib or to a browser 18. -The identifiers in the table (not the actual mapping) are symbolic. Thus, id-CAN-A-xl represents the identifier of a message xl in CAN network A, (the designator xi indicating, symbolically, the message content, so that e.g. id-CAN-A-xi and id-CAN-B-xl are two different identifiers for the same message content). The actual identifier of course is different. The table indicates that the routing used by the interfacing application will send to four Internet addresses the message from CAN network A with identifier id-CAN-A-xl, the first Internet address being 111.111.111.111 (or an equivalent domain name), and so on.
With a list of recipients prepared, the interfacing application 22 creates a new file containing the CAN message payload, and notifies the TCP/IP protocol utility 23 of the new file and of each recipient address (on the TCP/IP
network) in turn. For each recipient provided, the TCP/IP
protocol utility 23 then places the content of the new file in a TCP/IP data frame and transmits it over the Internet, per each address provided by the interfacing application 22.
In the preferred embodiment, as mentioned above, the bridge 10a may place more than one CAN message payload in a TCP/IP data frame. For this, the interfacing application 22 will wait a predetermined time before saving the new file with the first CAN message payload, in case other CAN
messages are provided by the local CAN controller 21 for any of the same destinations as for the first CAN message.
Referring now to Fig. 7, a bridge according to the present invention is shown acting as a receiving node, receiving a CAN message over the Internet, the CAN message having been provided by a bridge according to the present invention acting as a sending node. When a bridge 10a receives a CAN message payload embedded in a TCP/IP data frame from a remote CAN network lib, it extracts the CAN
message payload, saving it in a new file. Then the TCP/IP
protocol utility 23 notifies the interfacing application 22 of the newly created file, identifying the file by name and location on the host computer, and provides the interfacing application 22 with the Internet address of the sender (the sender being a bridge connecting a remote CAN network to the Internet).
Upon receiving the notification from the TCP/IP protocol utility 23, the interfacing application 22 extracts the CAN
message payload, with an arbitration field including an identifier appropriate to the sending, remote CAN network, and associates the CAN message with the Internet address of the sending, remote CAN network, as provided by the TCP/IP
protocol utility 23. The interfacing application 22 then uses a mapping (as for example in table 2) to determine which identifier in the local CAN network corresponds to the identifier in the new file (i.e. to the identifier used by the remote, sending CAN network), given the Internet address of the sender. Using an interrupt or a polling process to gain access to the FIFO buffer 24 of the local CAN controller 21, the interfacing application 22 then places in the FIFO
buffer 24 the CAN message payload, with the sender's identifier replaced by the corresponding identifier for the local CAN network 10a.
Fig. 6 is a flow chart/ task allocation diagram, according to the present invention, for transmitting a CAN
message over a TCP/IP network; and Fig. 7 is a flow chart/ task allocation diagram, according to the present invention, for receiving a CAN
message over a TCP/IP network.
BEST MODE FOR CARRYING OUT THE INVENTION
The preferred embodiment will now be described in the particular application where controller area network (CAN) messages are provided over the Internet. The Internet is here used as one example of a network communicating according to transmission control protocol/ Internet protocol (TCP/IP).
It is be understood that the present invention is directed to the communication of CAN messages over any network using TCP/IP, such as any Ethernet, not only the Internet.
Referring now to Fig. 1, a bridge 10a for connecting a controller area network (CAN) lla to an Internet connection 16, which requires transmission control protocol/ Internet protocol (TCP/IP), is shown as including a local CAN
controller 21 for communicating over the CAN network lla;
TCP/IP protocol utility 23 for communicating over the Internet via the Internet connection 16; and an interfacing application 22 for converting CAN messages to a form suitable for communicating over the Internet, i.e. to a form according to TCP/IP, and also for converting Internet communications to a form suitable for communication over a CAN network, i.e. to a form according to one or another of various prescribed CAN
message types. The CAN network 11a includes CAN stations 12a communicating via a CAN bus 14a, through which the bridge 10a also communicates with the CAN stations 12a.
Still referring to Fig. 1, a CAN station 12a in a first CAN network lia, can transmit, via a bridge l0a according to the present invention, a message that is on an acceptance list of a CAN station 24 in a second CAN network llb, interconnected with the first CAN network by the Internet.
For this, the CAN station 24 of the second CAN network lib depends on a second bridge 10b.
Besides being able to transmit a message that is received by a CAN station 24 of a second CAN network ilb, a CAN station 12a of the first CAN network ila can transmit a message so that is viewed by a browser communicating over the Internet via the Internet connection 16. For this, the browser 18 relies on the services of the bridge 10a to convert the CAN message to a form suitable for TCP/IP
communication.
Referring now to Fig. 5, according to the preferred embodiment, a CAN message payload, i.e. a CAN message less framing bits and its CRC and acknowledgment (ACK) fields (the ACK field being used to signal to a sending station when a CAN message is received without error), is embedded in a TCP/IP data field of a TCP/IP frame. A TCP/IP data field can be up to several kilobytes in length, compared to 11 bytes as the maximum length of a CAN message payload. In some aspects of the present invention, this disparity is taken advantage of by embedding more than one CAN message payload in a TCP/IP
frame. In the preferred embodiment, if the bridge 10a is embedding a first CAN message in a TCP/IP frame, and a=second CAN message (for the same destination) is detected before a predetermined time interval elapses, the interfacing application will arrange to have the second CAN message payload added to the same TCP/IP data field, and so on, as described below. The predetermined waiting time is typically a second, but is sometimes as much as 5 seconds.
According to the preferred embodiment of the present invention, the only two CAN message types that are embedded in a TCP/IP frame are a CAN data frame and a CAN remote frame. The CAN error frame is not needed because when a local station 12a broadcasts a CAN message and the local CAN
controller 21 receives the CAN message, the local CAN
controller 21 will signal (on the CAN bus 14a) any error in communication over the CAN bus 14a. And when a CAN message is transmitted by the bridge l0a over the Internet, the Internet TCP/IP provides for error detection and correction.
Finally, if a message is intended for a CAN station 12b of the second CAN network llb, the bridge 10b attached to the CAN bus 14b for the second network extracts the CAN message from the TCP/IP data frame, constructs a CAN data frame or CAN remote frame (depending simply on whether the CAN message contains data), and broadcasts the CAN message on the CAN bus 14b for the second CAN network lib. From that point on, the CAN protocol for error detection and correction becomes effective. Thus it is unnecessary for the bridge 10a to include either a CRC field or an ACK field in a TCP/IP data frame when communicating a CAN message over the Internet.
Referring again to Fig. 1, the local CAN controller 21 of the bridge 10a, which is built around a standard CAN chip, e.g. the SJA 1000, interfaces the bridge 10a to the CAN
network lla. In this interfacing, the local CAN controller 21 provides for proper bit-timing, and performs bit encoding and synchronization. As the interface to the CAN network lla, it also responds to error frames in case of transmitting a CAN message that is not properly received by one or more CAN stations on the CAN network lla. In addition, as mentioned above, it signals an error in communication when it receives a CAN message, over the CAN network lla, for which the CRC fails.
Finally, the local CAN controller 21 has, in the preferred embodiment, its own acceptance list, and it acknowledges successful receipt of all CAN messages on that acceptance list. Such a list is used in case of some CAN
messages being intended for CAN stations of another CAN
network, such as the second CAN network llb, with which communication is through the bridge 10a and over the Internet.
The bridge 10a, including the local CAN controller 21, is hosted by a computer (not shown), which in the preferred embodiment uses an internal bus (not shown) for communicating between various controllers, such as between the local CAN
controller 21 and the CPU (not shown) of the computer. The local CAN controller is, for example, a card in an ISA bus and has an assigned I/O base address. It uses a first-in-first-out (FIFO) buffer 24 for storing CAN messages, and it communicates with modules executing in the CPU of the computer by polling or by interrupts. For example, for the local CAN controller 21, in case of a computer using DOS or a Windows operating system, a so-called ISACAN-PC card, .
available from Hitex-Systementwicklung GmbH, could be used.
Where the local CAN controller 21 interfaces the bridge 10a to the CAN network lla, the TCP/IP protocol utility 23 interfaces the bridge 10a to the TCP/IP connection over the Internet 16. In the preferred embodiment, the TCP/IP
protocol utility 23, executing in the CPU of the computer hosting the bridge, performs Internet communication in the same way as a standard Internet server. Thus, to the Internet, the bridge 10a appears to be an Internet server.
On the Internet side of the TCP/IP protocol utility, data being communicated is in the form of packets, according to TCP/IP. On the interfacing application 22 side, data being communicated is in the form of files according to the operating system used by the bridge 10a. The operating system is, in the preferred embodiment, LINEX.
The interfacing application 22 is what provides the conversion between TCP/IP and CAN message protocol. It executes in the CPU of the computer hosting the bridge 10a, along with the TCP/IP protocol utility 23. The interfacing application 22 has tasks to perform whenever the bridge receives a CAN message either over the Internet or from its directly attached CAN network lla.
Referring now to both Fig. 1 and Fig. 6, when a CAN
message is to be transmitted from the first CAN network lla over the Internet via the bridge 10a, the CAN message is received by the local CAN controller 21 of the bridge 10a, because the CAN message is on an acceptance list of the local CAN controller, as described above, and placed in the FIFO
buffer 24, preferably only the payload, i.e. the parts of the CAN message that are tc be embedded in a TCP/IP data frame, namely the arbitration field, the control field, and the data field, if any (none for a. .AN remote frame). Then the local CAN controller 21 notifies the interfacing application 22 of the CAN message by setting an interrupt, in the preferred embodiment, or when polled by the interfacing application 22.
The interfacing application then acquires the CAN message from the FIFO buffer 24 of the local CAN controller 21.
Next, the interfacing application 22 must determine how to address the CAN message for Internet communication. For this, it uses a routing form indicating where to send each CAN message it acquires from the local CAN controller 21, based on the identifier of the CAN message. The routing form indicates each other CAN network, interconnected with the first by the Internet, to which a CAN message is to be sent, based on the identifier of the CAN message used in the first, local CAN network.
Table 1. Routing form used by interfacing application when sending a CAN
message over a TCP/IP network.
Identifier Internet address (in origin CAN network) of recipient id-CAN-A-xl 111.111.111.111 222.222.222.222 333.333.333.333 444.444.444.444 id-CAN-A-x2 111.111.111.111 id-CAN-A-x3 444.444.444.444 id-CAN-A-x4 111.111.111.111 Table 1 illustrates the routing form used by the interfacing application 22 for the bridge 12a in sending a CAN message from the first CAN network lla over the Internet to either another CAN network lib or to a browser 18. -The identifiers in the table (not the actual mapping) are symbolic. Thus, id-CAN-A-xl represents the identifier of a message xl in CAN network A, (the designator xi indicating, symbolically, the message content, so that e.g. id-CAN-A-xi and id-CAN-B-xl are two different identifiers for the same message content). The actual identifier of course is different. The table indicates that the routing used by the interfacing application will send to four Internet addresses the message from CAN network A with identifier id-CAN-A-xl, the first Internet address being 111.111.111.111 (or an equivalent domain name), and so on.
With a list of recipients prepared, the interfacing application 22 creates a new file containing the CAN message payload, and notifies the TCP/IP protocol utility 23 of the new file and of each recipient address (on the TCP/IP
network) in turn. For each recipient provided, the TCP/IP
protocol utility 23 then places the content of the new file in a TCP/IP data frame and transmits it over the Internet, per each address provided by the interfacing application 22.
In the preferred embodiment, as mentioned above, the bridge 10a may place more than one CAN message payload in a TCP/IP data frame. For this, the interfacing application 22 will wait a predetermined time before saving the new file with the first CAN message payload, in case other CAN
messages are provided by the local CAN controller 21 for any of the same destinations as for the first CAN message.
Referring now to Fig. 7, a bridge according to the present invention is shown acting as a receiving node, receiving a CAN message over the Internet, the CAN message having been provided by a bridge according to the present invention acting as a sending node. When a bridge 10a receives a CAN message payload embedded in a TCP/IP data frame from a remote CAN network lib, it extracts the CAN
message payload, saving it in a new file. Then the TCP/IP
protocol utility 23 notifies the interfacing application 22 of the newly created file, identifying the file by name and location on the host computer, and provides the interfacing application 22 with the Internet address of the sender (the sender being a bridge connecting a remote CAN network to the Internet).
Upon receiving the notification from the TCP/IP protocol utility 23, the interfacing application 22 extracts the CAN
message payload, with an arbitration field including an identifier appropriate to the sending, remote CAN network, and associates the CAN message with the Internet address of the sending, remote CAN network, as provided by the TCP/IP
protocol utility 23. The interfacing application 22 then uses a mapping (as for example in table 2) to determine which identifier in the local CAN network corresponds to the identifier in the new file (i.e. to the identifier used by the remote, sending CAN network), given the Internet address of the sender. Using an interrupt or a polling process to gain access to the FIFO buffer 24 of the local CAN controller 21, the interfacing application 22 then places in the FIFO
buffer 24 the CAN message payload, with the sender's identifier replaced by the corresponding identifier for the local CAN network 10a.
Table 2. Mapping used by interfacing application when receiving a CAN
message over a TCP/IP network.
Identifier Internet address Identifier used by sender of sender to be used by recipient id-CAN-B-xl 111.111.111.111 id-CAN-A-xl id-CAN-C-xl 222.222.222.222 id-CAN-D-xl 333.333.333.333 id-CAN-B-x2 111.111.111.111 id-CAN-A-x2 id-CAN-C-x2 222.222.222.222 id-CAN-D-x2 333.333.333.333 id-CAN-E-x3 555.555.555.555 id-CAN-A-x3 id-CAN-B-x4 111.111.111.111 id-CAN-A-x4 In response to the interrupt set by the interfacing application 22, the local CAN controller 21 waits a pre-determined time sufficient for the interfacing application 22 to place the CAN message payload in the FIFO buffer 24, and then retrieves the CAN message payload, provides the additional CAN message fields, including the CRC and ACK
fields, required to build a complete CAN message (CAN data frame or CAN remote frame), and transmits (broadcasts) the complete CAN message over the local CAN network lla.
As mentioned above, the present invention is intended to comprehend having a node hosting only a browser (not a bridge according to the present invention) receive a CAN message provided by a bridge acting as a sending node, in which case the browser, acting as the receiving node, in some embodiments, simply extracts the CAN message payload from the TCP/IP frame and presents the CAN message payload for examination by the user of the browser. In the preferred embodiment, however, the browser-hosting receiving node also uses a mapping to alter the identifier in the received CAN
message so as to conform to identifier-content usage at the receiving node, the altering based on the Internet address of the sending node.
It is to be understood that the above-described arrangements are only illustrative of the application of the principles of the present invention. In particular, as explained above, the present invention is not limited to use in sending CAN
s messages over the Internet; it comprehends sending CAN messages over any network in which communication is according to TCP/IP, such as any Ethernet. In addition, numerous modifications and alternative arrangements may be devised by those skilled in the art without departing from the scope of the present invention, and the appended claims are intended to cover such modifications and arrangements.
message over a TCP/IP network.
Identifier Internet address Identifier used by sender of sender to be used by recipient id-CAN-B-xl 111.111.111.111 id-CAN-A-xl id-CAN-C-xl 222.222.222.222 id-CAN-D-xl 333.333.333.333 id-CAN-B-x2 111.111.111.111 id-CAN-A-x2 id-CAN-C-x2 222.222.222.222 id-CAN-D-x2 333.333.333.333 id-CAN-E-x3 555.555.555.555 id-CAN-A-x3 id-CAN-B-x4 111.111.111.111 id-CAN-A-x4 In response to the interrupt set by the interfacing application 22, the local CAN controller 21 waits a pre-determined time sufficient for the interfacing application 22 to place the CAN message payload in the FIFO buffer 24, and then retrieves the CAN message payload, provides the additional CAN message fields, including the CRC and ACK
fields, required to build a complete CAN message (CAN data frame or CAN remote frame), and transmits (broadcasts) the complete CAN message over the local CAN network lla.
As mentioned above, the present invention is intended to comprehend having a node hosting only a browser (not a bridge according to the present invention) receive a CAN message provided by a bridge acting as a sending node, in which case the browser, acting as the receiving node, in some embodiments, simply extracts the CAN message payload from the TCP/IP frame and presents the CAN message payload for examination by the user of the browser. In the preferred embodiment, however, the browser-hosting receiving node also uses a mapping to alter the identifier in the received CAN
message so as to conform to identifier-content usage at the receiving node, the altering based on the Internet address of the sending node.
It is to be understood that the above-described arrangements are only illustrative of the application of the principles of the present invention. In particular, as explained above, the present invention is not limited to use in sending CAN
s messages over the Internet; it comprehends sending CAN messages over any network in which communication is according to TCP/IP, such as any Ethernet. In addition, numerous modifications and alternative arrangements may be devised by those skilled in the art without departing from the scope of the present invention, and the appended claims are intended to cover such modifications and arrangements.
Claims (5)
1. A method of communicating a controller area network (CAN) message between a sending node, attached to a sending CAN network, and a receiving node, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP), the CAN message including:
-a start of frame bit, -a CAN message payload, -a cyclic redundancy check field, -an acknowledgment field, and -an end of frame field;
the CAN message payload including:
-an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is node-dependent, -a remote transmission request bit, -a control field, and -an optional data field;
the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the method comprising the steps of:
a) having the sending node extract the CAN message payload from the CAN
message;
b) having the sending node embed the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame;
c) having the sending node refer to a routing form to determine the address on the TCP/IP network of the receiving node; and d) having the sending node transmit the TCP/IP frame over the TCP/IP network using the address for the receiving node from the routing form;
wherein the routing form indicates, for each of a plurality of different possible CAN
message identifier field values, an address on the TCP/IP network for other CAN
networks interconnected with the sending CAN network via the TCP/IP network.
-a start of frame bit, -a CAN message payload, -a cyclic redundancy check field, -an acknowledgment field, and -an end of frame field;
the CAN message payload including:
-an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is node-dependent, -a remote transmission request bit, -a control field, and -an optional data field;
the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the method comprising the steps of:
a) having the sending node extract the CAN message payload from the CAN
message;
b) having the sending node embed the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame;
c) having the sending node refer to a routing form to determine the address on the TCP/IP network of the receiving node; and d) having the sending node transmit the TCP/IP frame over the TCP/IP network using the address for the receiving node from the routing form;
wherein the routing form indicates, for each of a plurality of different possible CAN
message identifier field values, an address on the TCP/IP network for other CAN
networks interconnected with the sending CAN network via the TCP/IP network.
2. The method of claim 1, wherein the receiving node is attached to a receiving CAN
network, and the method further comprises the steps of:
a) having the receiving node extract the CAN message payload from the TCP/IP
frame;
b) having the receiving node alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content in the receiving CAN
network, the altering performed by reference to a mapping relating identifiers in different CAN networks, the different CAN networks being distinguished by their network addresses; and c) having the receiving node broadcast the CAN message on the receiving CAN
network.
network, and the method further comprises the steps of:
a) having the receiving node extract the CAN message payload from the TCP/IP
frame;
b) having the receiving node alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content in the receiving CAN
network, the altering performed by reference to a mapping relating identifiers in different CAN networks, the different CAN networks being distinguished by their network addresses; and c) having the receiving node broadcast the CAN message on the receiving CAN
network.
3. The method of claim 1, wherein the receiving node hosts a browser, and the method further comprises the steps of:
a) having the receiving node extract the CAN message payload from the TCP/IP
frame;
b) having the receiving node alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content at the receiving node, the altering performed by reference to a mapping relating identifiers based on the network address of the sending node.
a) having the receiving node extract the CAN message payload from the TCP/IP
frame;
b) having the receiving node alter the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content at the receiving node, the altering performed by reference to a mapping relating identifiers based on the network address of the sending node.
4. An apparatus for sending a controller area network (CAN) message from a sending node, attached to a sending CAN network, to a receiving node, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/Internet protocol (TCP/IP), the CAN message including:
-a start of frame bit, -a CAN message payload, -a cyclic redundancy check field, -an acknowledgment field, and -an end of frame field;
the CAN message payload including:
-an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is node-dependent, -a remote transmission request bit, -a control field, and -a data field of variable length;
the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the apparatus comprising:
a) a local CAN controller, responsive to the CAN message as broadcast over the sending CAN network, for extracting the CAN message payload from the CAN
message and for saving the CAN message payload in a buffer;
b) an interfacing application, responsive to the CAN message payload in the buffer, for embedding the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame, and for providing the address on the TCP/IP network of the receiving node by referring to a routing form; and c) a TCP/IP protocol utility, responsive to the address of the receiving node and further responsive to the TCP/IP frame in which the CAN message payload is embedded, for transmitting the TCP/IP frame over the TCP/IP network using the address for the receiving node determined from the routing form;
wherein the routing form indicates, for each of a plurality of different possible CAN
message identifier field values, an address on the TCP/IP network for other CAN
networks interconnected with the sending CAN network via the TCP/IP network.
-a start of frame bit, -a CAN message payload, -a cyclic redundancy check field, -an acknowledgment field, and -an end of frame field;
the CAN message payload including:
-an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence that is node-dependent, -a remote transmission request bit, -a control field, and -a data field of variable length;
the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the apparatus comprising:
a) a local CAN controller, responsive to the CAN message as broadcast over the sending CAN network, for extracting the CAN message payload from the CAN
message and for saving the CAN message payload in a buffer;
b) an interfacing application, responsive to the CAN message payload in the buffer, for embedding the CAN message payload in the TCP/IP frame as the TCP/IP data field of the TCP/IP frame, and for providing the address on the TCP/IP network of the receiving node by referring to a routing form; and c) a TCP/IP protocol utility, responsive to the address of the receiving node and further responsive to the TCP/IP frame in which the CAN message payload is embedded, for transmitting the TCP/IP frame over the TCP/IP network using the address for the receiving node determined from the routing form;
wherein the routing form indicates, for each of a plurality of different possible CAN
message identifier field values, an address on the TCP/IP network for other CAN
networks interconnected with the sending CAN network via the TCP/IP network.
5. An apparatus for receiving at a receiving node a controller area network (CAN) message sent from a sending node, the sending node attached to a sending CAN
network, the receiving node attached to a receiving CAN network, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/
Internet protocol (TCP/IP), the CAN message including:
-a start of frame bit, -a CAN message payload, -a cyclic redundancy check field, -an acknowledgment field, and -an end of frame field;
the CAN message payload including:
-an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence for the CAN network in which the CAN message is being communicated, -a remote transmission request bit, -a control field, and -an optional data field;
the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the apparatus comprising:
a) a TCP/IP protocol utility, responsive to the TCP/IP frame in which the CAN
message payload is embedded, for extracting the CAN message payload from the TCP/IP frame, and for providing the network address of the sending node;
b) an interfacing application, responsive to the CAN message payload extracted from the TCP/IP frame and to the network address of the sending node, for altering the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content in the receiving CAN network, the altering performed by reference to a mapping relating identifiers in different CAN
networks, the different CAN networks being distinguished by their TCP/IP
network addresses, for providing the CAN message payload with the altered as needed identifier in a buffer; and c) a local CAN controller, responsive to the CAN message payload in the buffer, for augmenting the CAN message payload with additional fields as required to provide a complete CAN message, and for broadcasting the completed CAN
message over the receiving CAN network.
network, the receiving node attached to a receiving CAN network, the sending and receiving nodes interconnected by a network communicating according to transmission control protocol/
Internet protocol (TCP/IP), the CAN message including:
-a start of frame bit, -a CAN message payload, -a cyclic redundancy check field, -an acknowledgment field, and -an end of frame field;
the CAN message payload including:
-an identifier field, intended to identify the content of the CAN message, based on a pre-determined identifier-content correspondence for the CAN network in which the CAN message is being communicated, -a remote transmission request bit, -a control field, and -an optional data field;
the communicating according to TCP/IP performed by transmitting TCP/IP frames, including a header, a footer, and a TCP/IP data field; the apparatus comprising:
a) a TCP/IP protocol utility, responsive to the TCP/IP frame in which the CAN
message payload is embedded, for extracting the CAN message payload from the TCP/IP frame, and for providing the network address of the sending node;
b) an interfacing application, responsive to the CAN message payload extracted from the TCP/IP frame and to the network address of the sending node, for altering the identifier of the CAN message payload, as needed, so as to correspond to the CAN message content in the receiving CAN network, the altering performed by reference to a mapping relating identifiers in different CAN
networks, the different CAN networks being distinguished by their TCP/IP
network addresses, for providing the CAN message payload with the altered as needed identifier in a buffer; and c) a local CAN controller, responsive to the CAN message payload in the buffer, for augmenting the CAN message payload with additional fields as required to provide a complete CAN message, and for broadcasting the completed CAN
message over the receiving CAN network.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/460,575 US6654355B1 (en) | 1999-12-14 | 1999-12-14 | Bridge for CAN to TCP/IP connection |
US09/460,575 | 1999-12-14 | ||
PCT/US2000/033187 WO2001045348A2 (en) | 1999-12-14 | 2000-12-07 | Bridge for can to tcp/ip connection |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2362961A1 CA2362961A1 (en) | 2001-06-21 |
CA2362961C true CA2362961C (en) | 2012-01-03 |
Family
ID=23829266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2362961A Expired - Lifetime CA2362961C (en) | 1999-12-14 | 2000-12-07 | Bridge for can to tcp/ip connection |
Country Status (6)
Country | Link |
---|---|
US (1) | US6654355B1 (en) |
EP (1) | EP1198926B1 (en) |
CA (1) | CA2362961C (en) |
DE (1) | DE60026734T2 (en) |
MX (1) | MXPA01008197A (en) |
WO (1) | WO2001045348A2 (en) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69736278T2 (en) | 1996-02-22 | 2007-06-06 | Kvaser Consultant Ab | Device for influencing messages in a CAN system |
DE50010109D1 (en) * | 1999-02-26 | 2005-05-25 | Siemens Ag | METHOD FOR TRANSFERRING ETHERNET FRAMES |
US6732254B1 (en) * | 1999-09-15 | 2004-05-04 | Koninklijke Philips Electronics N.V. | Can device featuring advanced can filtering and message acceptance |
US7289994B2 (en) * | 1999-10-18 | 2007-10-30 | Fisher-Rosemount Systems, Inc. | Interconnected zones within a process control system |
US7333504B2 (en) * | 2001-03-08 | 2008-02-19 | Honeywell International Inc. | Simultaneous serial transmission of messages with data field arbitration |
DE10119472A1 (en) * | 2001-04-20 | 2002-10-31 | Harman Becker Automotive Sys | Interface for data transmission between two bus systems and operating procedures therefor |
US20040143628A1 (en) * | 2001-04-20 | 2004-07-22 | Bradford Jonathan D. | Systems and methods that discover and configure non-TCP/IP networks and devices residing therein |
ATE427521T1 (en) * | 2001-07-26 | 2009-04-15 | Freescale Semiconductor Inc | CLOCK SYNCHRONIZATION IN A DISTRIBUTED SYSTEM |
DE10152235B4 (en) * | 2001-10-20 | 2015-01-08 | Robert Bosch Gmbh | Method for detecting errors during data transmission within a CAN controller and a CAN controller for carrying out this method |
US7933998B2 (en) * | 2002-01-11 | 2011-04-26 | Motorola Mobility, Inc. | Dynamic CAN bus system configuration and messaging |
US7277913B2 (en) * | 2002-05-09 | 2007-10-02 | Sun Microsystems, Inc. | Persistent queuing for distributed file systems |
US20030212763A1 (en) * | 2002-05-09 | 2003-11-13 | Ravi Kashyap | Distributed configuration-managed file synchronization systems |
US7092972B2 (en) * | 2002-05-09 | 2006-08-15 | Sun Microsystems, Inc. | Delta transfers in distributed file systems |
JP3630418B2 (en) * | 2002-09-11 | 2005-03-16 | 三菱電機株式会社 | Network communication equipment |
US20040218591A1 (en) * | 2003-04-29 | 2004-11-04 | Craig Ogawa | Bridge apparatus and methods of operation |
ES2239537B1 (en) * | 2004-03-05 | 2006-11-16 | Seat, S.A. | SYSTEM OF MONITORING AND CONTROL OF ELEMENTS OF A VEHICLE. |
JP4401239B2 (en) | 2004-05-12 | 2010-01-20 | Necエレクトロニクス株式会社 | Communication message converter, communication method, and communication system |
US7620047B2 (en) * | 2004-11-23 | 2009-11-17 | Emerson Network Power - Embedded Computing, Inc. | Method of transporting a RapidIO packet over an IP packet network |
US7120725B2 (en) * | 2004-11-23 | 2006-10-10 | Motorola, Inc. | Method of communicating a VMEbus signal over IP packet network |
CN1855920A (en) * | 2005-04-28 | 2006-11-01 | 西门子(中国)有限公司 | Communication on magnetic resonance system multi-point bus |
JP4791301B2 (en) | 2006-09-13 | 2011-10-12 | 株式会社オートネットワーク技術研究所 | In-vehicle LAN system |
US8265800B2 (en) * | 2007-08-20 | 2012-09-11 | Raytheon Company | Unmanned vehicle message conversion system |
US20090067616A1 (en) * | 2007-09-07 | 2009-03-12 | Kerby William Suhre | CAN echo cancellation level shifter |
DE102007053246A1 (en) * | 2007-11-08 | 2009-05-20 | Continental Automotive Gmbh | Uniform network layer in vehicles |
FR2939591A1 (en) * | 2008-12-10 | 2010-06-11 | Airbus France | METHOD AND APPARATUS FOR COMMUNICATION BY VIRTUALIZING ADDRESSES FOR COMPONENT INTEGRATION SIMULATION |
DE102009026995A1 (en) * | 2009-06-17 | 2011-03-31 | Robert Bosch Gmbh | Method for operating a bus system, in particular a CAN bus |
DE102009050767B4 (en) * | 2009-10-27 | 2017-06-14 | Siemens Healthcare Gmbh | Method and device for data transmission |
CN101977094B (en) * | 2010-10-18 | 2012-09-26 | 航天东方红卫星有限公司 | Satellite-borne controller area network (CAN) bus communication method applied to multi-master communication |
WO2012101662A1 (en) * | 2011-01-25 | 2012-08-02 | Power-One Italy S.P.A. | Transmission protocol |
EP2506502B1 (en) * | 2011-03-31 | 2013-10-23 | Siemens Aktiengesellschaft | Redundant automation system |
DE102011121255B3 (en) * | 2011-12-15 | 2013-04-18 | Lear Corporation Gmbh | Control system for motor vehicle, has control device for extracting and passing HTTP request from controlled area network bus by compatible message onto web server, where bus connects control device and another control device |
DE102011089420A1 (en) * | 2011-12-21 | 2013-06-27 | Bayerische Motoren Werke Aktiengesellschaft | Transfer device and communication network with a conversion device |
EP2660726A1 (en) * | 2012-05-02 | 2013-11-06 | SMSC Europe GmbH | Method and device for emulating a bus system |
US9112721B2 (en) * | 2012-05-28 | 2015-08-18 | Freescale Semiconductor, Inc. | System and methods for enabling a controller area network (CAN) device to operate in different power modes based upon the payload of a wake-up message |
DE102012219940A1 (en) | 2012-10-31 | 2014-04-30 | Trumpf Werkzeugmaschinen Gmbh + Co. Kg | Repeater, CAN communication system and method for transmitting a data telegram within a CAN communication system |
US9537332B2 (en) | 2013-05-30 | 2017-01-03 | Canara, Inc. | Apparatus, system and method for charge balancing of individual batteries in a string of batteries using battery voltage and temperature, and detecting and preventing thermal runaway |
CN104580543A (en) * | 2013-10-16 | 2015-04-29 | 福达新创通讯科技(厦门)有限公司 | Data transmission method and system as well as recording medium |
DE102014108455A1 (en) * | 2014-06-16 | 2015-12-17 | Beckhoff Automation Gmbh | Method for operating a network |
EP3245856B1 (en) | 2014-06-18 | 2019-11-20 | Deere & Company | Assembly for controlling a device interface of an agricultural work vehicle |
CN104464254B (en) * | 2014-12-08 | 2018-05-01 | 中北大学 | A kind of Distributed Data Synchronization harvester and method |
DE102015200301A1 (en) * | 2015-01-13 | 2016-07-14 | Robert Bosch Gmbh | Method for classifying a data segment with regard to its further processing |
DE102015201019A1 (en) * | 2015-01-22 | 2016-07-28 | Wobben Properties Gmbh | Wind turbine and wind turbine bus system |
US10120034B2 (en) | 2015-10-07 | 2018-11-06 | Canara, Inc. | Battery string monitoring system |
US10212081B2 (en) * | 2015-12-01 | 2019-02-19 | Marvell World Trade Ltd. | Systems and methods for implementing a time-stamped controller area network (CAN) bus message |
JP6962697B2 (en) * | 2016-05-27 | 2021-11-05 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Network hub, transfer method and in-vehicle network system |
JP6890025B2 (en) * | 2016-05-27 | 2021-06-18 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Electronic control unit, frame generation method and program |
WO2017203905A1 (en) | 2016-05-27 | 2017-11-30 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Network hub, transfer method, and on-vehicle network system |
CN106100955B (en) * | 2016-06-23 | 2020-01-17 | 北京东土科技股份有限公司 | Industrial internet field layer broadband bus data depth detection implementation method |
US10333887B2 (en) * | 2016-08-15 | 2019-06-25 | Cisco Technology, Inc. | Internet protocol (IP) network virtualization of serial network endpoints |
US20180062988A1 (en) * | 2016-08-31 | 2018-03-01 | Faraday&Future Inc. | Ethernet communication of can signals |
DE102016221690A1 (en) * | 2016-11-04 | 2018-05-09 | Audi Ag | Method for transmitting data packets between an Ethernet and a bus system in a motor vehicle, and gateway device and motor vehicle |
US20180343326A1 (en) * | 2017-05-26 | 2018-11-29 | Cisco Technology, Inc. | Can to ip internetworking |
CN107426073A (en) * | 2017-08-08 | 2017-12-01 | 深圳市三旺通信技术有限公司 | The method and device that a kind of Controller Area Network BUS extends |
DE102017216833A1 (en) * | 2017-09-22 | 2019-03-28 | Siemens Aktiengesellschaft | Method for providing data packets from a CAN bus; Control unit and system with a CAN bus |
KR102360168B1 (en) * | 2017-11-01 | 2022-02-09 | 현대자동차주식회사 | Apparatus and method for converting protocol with type of data |
GB201809308D0 (en) * | 2018-06-06 | 2018-07-25 | Canis Automotive Labs Ltd | A serial communication system |
KR20200079595A (en) * | 2018-12-26 | 2020-07-06 | 현대자동차주식회사 | Message routing system and method thereof |
US11082449B2 (en) * | 2019-10-24 | 2021-08-03 | Cypress Semiconductor Corporation | Remote memory diagnostics |
KR20220001350A (en) | 2020-06-29 | 2022-01-05 | 주식회사 엘지에너지솔루션 | Network routing apparatus and method |
CN112187936B (en) * | 2020-09-29 | 2024-03-29 | 北京车和家信息技术有限公司 | Vehicle data processing method, device, equipment, storage medium and vehicle |
FR3121303B1 (en) * | 2021-03-23 | 2024-03-15 | Psa Automobiles Sa | Method and device for transmitting a signal by a first electronic component of a vehicle to at least one second electronic component of the vehicle |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5732074A (en) * | 1996-01-16 | 1998-03-24 | Cellport Labs, Inc. | Mobile portable wireless communication system |
CA2306767C (en) * | 1997-10-13 | 2007-05-01 | Rosemount Inc. | Communication technique for field devices in industrial processes |
US6434156B1 (en) * | 1998-07-24 | 2002-08-13 | Nortel Networks Limited | Virtual switching for interconnected networks |
US6292862B1 (en) * | 1998-07-28 | 2001-09-18 | Siemens Aktiengesellschaft | Bridge module |
US7046638B1 (en) * | 2000-10-12 | 2006-05-16 | Robert Bosch Gmbh | Wireless access to closed embedded networks |
ITTO20010151A1 (en) * | 2001-02-20 | 2002-08-20 | Magneti Marelli Spa | CIRCUIT MODULE FOR INTERCONNECTION BETWEEN LOCAL NETWORKS IN AN ELECTRONIC SYSTEM DISTRIBUTED FOR VEHICLES. |
-
1999
- 1999-12-14 US US09/460,575 patent/US6654355B1/en not_active Expired - Lifetime
-
2000
- 2000-12-07 MX MXPA01008197A patent/MXPA01008197A/en active IP Right Grant
- 2000-12-07 DE DE60026734T patent/DE60026734T2/en not_active Expired - Lifetime
- 2000-12-07 CA CA2362961A patent/CA2362961C/en not_active Expired - Lifetime
- 2000-12-07 WO PCT/US2000/033187 patent/WO2001045348A2/en active IP Right Grant
- 2000-12-07 EP EP00984005A patent/EP1198926B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CA2362961A1 (en) | 2001-06-21 |
US6654355B1 (en) | 2003-11-25 |
WO2001045348A2 (en) | 2001-06-21 |
MXPA01008197A (en) | 2002-03-20 |
EP1198926B1 (en) | 2006-03-15 |
DE60026734D1 (en) | 2006-05-11 |
WO2001045348A3 (en) | 2002-02-14 |
DE60026734T2 (en) | 2006-09-14 |
EP1198926A2 (en) | 2002-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2362961C (en) | Bridge for can to tcp/ip connection | |
CN110083088B (en) | Signal control conversion device and signal control conversion method | |
US5978854A (en) | System using ARP or RARP packet for communicating offset address of an application program and node unique ID of a network node | |
US8098682B2 (en) | System and method for interfacing with a management system | |
US5805594A (en) | Activation sequence for a network router | |
CN109981435B (en) | Gateway and communication system based on CAN-ModBus to MQTT | |
CN111083161A (en) | Data transmission processing method and device and Internet of things equipment | |
GB2351884A (en) | Data transmission method | |
RU2008126955A (en) | METHOD AND DEVICE FOR CONTROLLING COMMUNICATION IDENTIFIERS IN A RADIO-TRANSLATION COMMUNICATION SYSTEM WITH WIRELESS ACCESS WITH MULTIPLE FREQUENCY FREQUENCY FREQUENCY | |
EP1327326A1 (en) | Method for connecting an ieee1394 remote device to a cluster of ieee1394 devices through a wireless link | |
US6570852B1 (en) | Relay communication system | |
CN115442177B (en) | Data communication method and device of CAN (controller area network) | |
JP2702031B2 (en) | Satellite communication controller | |
KR100609493B1 (en) | Method for transmitting multiple sensors data with a CAN message | |
GB2433006A (en) | Transmitting ACARS messages over an IP network | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands | |
Cisco | LLC2 and SDLC Commands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20201207 |