Bridge for CAN to TCP/IP connection
First Claim
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.
1 Assignment
0 Petitions
Accused Products
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.
68 Citations
5 Claims
-
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. - View Dependent Claims (2, 3)
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.
-
-
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
d) 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.
-
Specification