A method and system for auxiliary network construction based on CAN network
Patent Information
- Application Number
- CN202311009701.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-10
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2043-08-10
AI Technical Summary
这主要影响的是较大数据的传输过程,由于CAN消息存在数据长度的限制,需要对较长的数据进行拆包并多次发送,这一模式大大拉高了CAN总线的负载率
[0042]1、本发明在需要大数据量传输的设备之间搭建一条辅助CAN网络通信的辅助总线,帮助CAN总线分担大数据量的传输任务,从而减轻CAN网络的整体负担,有效加快数据的传输速度。
Smart Images

Figure CN117061351B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of CAN network technology, and in particular to an auxiliary network construction method and system based on CAN network. Background Technology
[0002] The statements in this section are merely background information relating to this disclosure and do not necessarily constitute prior art.
[0003] Controller Area Network (CAN) bus is a serial communication protocol bus developed by the German company BOSCH. It can use twisted-pair cables to transmit signals and is one of the most widely used fieldbuses in the world.
[0004] The CAN bus employs a two-wire serial communication protocol, based on non-destructive arbitration technology, distributed real-time control, and reliable error handling and detection mechanisms, giving it high security. The CAN bus boasts numerous advantages, including high communication speed, high reliability, convenient connection, and cost-effectiveness.
[0005] In recent years, advanced digital control technology has provided automotive systems with greater convenience, safety, and predictability. Many vehicles not only utilize numerous local sensors but also collaborate with other vehicles and infrastructure, such as Intelligent Traffic Systems (ITS). With the popularization of new technologies such as smart cockpits, autonomous driving, new energy vehicles, and vehicle-to-everything (V2X) connectivity, vehicles are placing higher demands on intelligence. This trend towards vehicle intelligence necessitates extensive wiring for internal components such as air conditioning, seat belts, battery level monitoring, tire pressure monitoring, fault detection, inter-vehicle communication, and sensor interconnection. Traditional communication protocols are complex, involve numerous wires, and are inefficient. Therefore, the CAN bus has become the optimal communication protocol solution for the current era of intelligent automotive manufacturing.
[0006] However, the bandwidth and data field length of the CAN bus are limited. With the rapid development of electric vehicles and autonomous vehicles, and the increasing demand for advanced driver assistance systems and human-machine interfaces (HMIs), the traditional CAN bus is becoming increasingly inadequate in terms of transmission rate and bandwidth.
[0007] Due to limitations in CAN bus bandwidth and data field length, only about 40-50% of the bandwidth in a CAN message is used for actual data transmission. With the development of automotive intelligence, the load on the vehicle's CAN network has increased significantly, often far exceeding empirical values (30%) and even greatly exceeding recommended values (50%). Because CAN employs a masterless design, it requires bus arbitration using an identification code to obtain transmission permission before sending messages. When the CAN network load is too high, messages using low-priority identification codes and nodes in an active error state are prone to failing to send messages successfully, thus affecting normal equipment operation.
[0008] The CAN network bus speed is typically limited to 1 Mbit / s, and in actual use, the speed is even lower, mostly around 500 Kbit / s; in the J1939 network, it is only 250 Kbit / s. This mainly affects the transmission of larger data. Due to the data length limitation of CAN messages, longer data needs to be unpacked and sent multiple times, which greatly increases the load rate of the CAN bus.
[0009] How to speed up the transmission speed of the CAN bus and reduce the load rate of the CAN network has become an urgent problem to be solved. Summary of the Invention
[0010] This invention provides a method and system for constructing an auxiliary network based on a CAN network. It establishes an auxiliary bus between devices requiring large data transmission volumes to assist CAN network communication, helping the CAN bus to share the burden of large data transmission tasks, thereby reducing the overall load on the CAN network and effectively accelerating data transmission speed. Furthermore, while the CAN bus transmits a small portion of the large data volume, the auxiliary bus transmits the majority of the large data volume. Compared to existing CAN buses that fragment and transmit large data volumes multiple times, this invention allows the CAN bus and auxiliary bus to transmit large data volumes in a single transmission, effectively reducing the load rate of the CAN bus.
[0011] The technical solution for achieving the objective of this invention is as follows:
[0012] On one hand, the present invention provides an auxiliary network construction method based on a CAN network, comprising:
[0013] Data is transmitted to any device in the first device group and / or the second device group in the CAN network using the CAN bus in a small data transmission mode; the small data transmission mode includes: the CAN bus directly transmitting data packets to the device;
[0014] An auxiliary bus is built between devices in a CAN network that require large data transmission to facilitate communication on the CAN bus network.
[0015] In a large data transmission mode, data is simultaneously transmitted to devices in a second group of devices in a CAN network using an auxiliary bus and a CAN bus. The large data transmission mode includes: first, the data to be transmitted is unpacked into a first data packet and a second data packet; then, while transmitting the first data packet to the device using the CAN bus, the second data packet is transmitted to the same device using the auxiliary bus.
[0016] In this CAN network, the number of devices in the first device group is ≥0, and the number of devices in the second device group is >1; the amount of data to be transmitted per frame by the devices in the first device group is ≤ the maximum allowable amount of data to be transmitted per frame in the CAN bus network, and there are devices in the second device group whose required amount of data to be transmitted is > the maximum amount of data to be transmitted per frame in the CAN network.
[0017] In one embodiment, the large data transmission method further includes:
[0018] The first data packet transmitted through the CAN network and the second data packet transmitted through the auxiliary bus are CRC checked separately before being merged into the original big data packet.
[0019] Based on one aspect, in one embodiment, data is simultaneously transmitted to devices in a second group of devices in a CAN network using an auxiliary bus and a CAN bus in a large data transmission mode, including:
[0020] When the SOF frame start signal of the first data packet is sent on the CAN bus, the SOF frame start signal of the second data packet is simultaneously sent on the auxiliary bus.
[0021] Based on one aspect, in one embodiment, data is simultaneously transmitted to devices in a second group of devices in a CAN network using an auxiliary bus and a CAN bus in a large data transmission mode, including:
[0022] When the first CAN controller sends the identification code ID to the CAN bus, the first auxiliary controller starts transmitting a reserved frame to indicate that the auxiliary bus has been occupied.
[0023] After obtaining arbitration on the CAN bus, the auxiliary bus sends the second data packet with a data length DLC and the second data. The first auxiliary controller uses the arbitration and filtering results of the first CAN controller to omit the sending and matching process of the message identification code ID signal during the transmission of the second data packet by the auxiliary bus.
[0024] Based on one aspect, in one embodiment, the process of selecting the small data transmission mode or the large data transmission mode includes:
[0025] The data to be transmitted is parsed to determine whether the amount of data exceeds the maximum amount of data that can be transmitted in a single frame under the CAN standard or does not exceed the maximum amount of data that can be transmitted in a single frame under the CAN standard.
[0026] If the data volume does not exceed the maximum single-frame data transmission volume supported under the CAN standard, the small data transmission mode is selected and the CAN bus is used for transmission. At this time, the auxiliary bus is idle and there is no need to care about the status of the auxiliary bus.
[0027] If the data volume exceeds the maximum single-frame data volume supported under the CAN standard, the large data transmission mode is selected, and the data volume is unpacked. During unpacking, the data volume that is the maximum single-frame data volume supported under the CAN standard is included in the first data packet, and the remaining data is included in the second data packet.
[0028] When the frame containing the first data packet occupies the CAN bus, the second data packet is sent synchronously via the auxiliary bus. If the CAN bus transmission has ended but the auxiliary bus transmission has not finished, the auxiliary bus continues to transmit independently, and the CAN bus works alone to send other data in the small data transmission mode. However, the large data transmission mode will not be available until the auxiliary bus transmission is completed.
[0029] Based on this, in one embodiment, the second data packet is in a frame without arbitration field relative to the first data packet during transmission.
[0030] On the other hand, the present invention provides an auxiliary network construction system based on a CAN network, comprising: a first CAN controller in a transmitting state, a CAN bus, a first auxiliary controller in a transmitting state, and an auxiliary bus;
[0031] The CAN bus is connected to the first CAN controller, which determines whether the transmitted data is in small data transmission mode or large data transmission mode.
[0032] In the small data transmission mode, the first CAN controller is connected to the CAN bus, and the CAN bus transmits data to the devices in the first or second device group in the CAN network through traditional CAN frames.
[0033] In the big data transmission mode, the first CAN controller splits the data to be transmitted into a first data packet and a second data packet. The first CAN controller is connected to the first auxiliary controller, and the auxiliary bus is connected to the first auxiliary controller. While the first CAN controller controls the CAN bus to transmit the first data packet to any device in the second device group in the CAN network, the first auxiliary controller controls the auxiliary bus to transmit the second data packet to the same device.
[0034] In another embodiment, it further includes: a second CAN controller in a receiving state and a second auxiliary controller in a receiving state;
[0035] The CAN bus is connected to the second CAN controller, and the second CAN controller receives data sent by the CAN bus.
[0036] The auxiliary bus is connected to the second auxiliary controller, the second auxiliary controller is connected to the second CAN controller, the second CAN controller receives the first data packet, the second auxiliary controller receives the second data packet, and the second CAN controller merges the first data packet and the second data packet into the original big data.
[0037] On the other hand, in one embodiment, the second CAN controller and the second auxiliary controller perform CRC checks on the first data packet and the second data packet, and after the CRC check is completed, merge the first data packet and the second data packet into the original big data.
[0038] In another embodiment, the first auxiliary controller identifies whether the auxiliary bus is idle, the first CAN controller determines whether the data to be transmitted is a small amount of data or a large amount of data, and the second auxiliary controller identifies whether the auxiliary bus is idle.
[0039] In the big data transmission mode, while the first CAN controller sends the SOF frame start signal, the first auxiliary controller synchronously sends the SOF frame start signal to the auxiliary bus to form an occupation, and starts sending reserved frames to the first auxiliary controller. The first auxiliary controller waits for the first CAN controller to obtain CAN bus arbitration before it starts sending data.
[0040] When the auxiliary bus is in the working state, requests for data transmission on the CAN bus are not accepted.
[0041] Compared with the prior art, the beneficial effects of the present invention are:
[0042] 1. This invention establishes an auxiliary bus between devices that require large data transmission to assist CAN network communication, helping the CAN bus to share the task of transmitting large data, thereby reducing the overall burden on the CAN network and effectively accelerating the data transmission speed.
[0043] 2. This invention transmits a small amount of data within a large data volume on the CAN bus while simultaneously transmitting the majority of the data within the large data volume on the auxiliary bus. Compared to the existing CAN bus, which splits large data volumes into multiple packets for transmission, this invention allows the CAN bus and auxiliary bus to transmit large data volumes in a single transmission, effectively reducing the load rate of the CAN bus. Attached Figure Description
[0044] Figure 1 A flowchart of an auxiliary network construction method based on a CAN network provided by the present invention;
[0045] Figure 2 This invention provides a structural diagram of a CAN bus and an auxiliary bus connection device;
[0046] Figure 3 This invention provides a block diagram of an auxiliary network construction system based on a CAN network.
[0047] Figure 4 A flowchart illustrating the data transmission state transition of the auxiliary controller provided by this invention in the sending and receiving states;
[0048] Figure 5 This invention provides a frame structure for transmitting large amounts of data using both the CAN bus and the auxiliary bus.
[0049] Figure 6 A flowchart of a large data transmission method is provided for this invention. Detailed Implementation
[0050] The present invention will now be described in detail with reference to the embodiments shown in the accompanying drawings. However, it should be noted that these embodiments are not intended to limit the present invention. Equivalent changes or substitutions in function, method, or structure made by those skilled in the art based on these embodiments are all within the scope of protection of the present invention.
[0051] With the rapid development of electric vehicles and autonomous vehicles, and the increasing demand for advanced driver assistance systems (ADAS) and human-machine interfaces (HMIs), the traditional CAN bus is increasingly proving inadequate in terms of transmission rate and bandwidth. The disadvantages of traditional CAN and CAN FD buses include: 1. Due to limitations in CAN bus bandwidth and data field length, only about 40-50% of the bandwidth in a CAN message is used for actual data transmission. With the development of automotive intelligence, the load on the vehicle's CAN network has increased significantly, often far exceeding empirical values (30%) and even recommended values (50%). Because the CAN bus uses a masterless design, it requires bus arbitration using an identification code to obtain transmission permission before sending messages. When the CAN bus network load is too high, messages using low-priority identification codes and nodes in an active error state are prone to failing to send messages, thus affecting normal equipment operation. 2. The CAN bus network speed is typically limited to 1 Mbit / s, and the actual speed in use is even lower, mostly around 500 Kbit / s; in J1939 networks, it is only 250 Kbit / s. This primarily affects the transmission of larger data segments. Due to the data length limitation of CAN bus messages, longer data segments need to be unpacked and sent multiple times, significantly increasing the load on the CAN bus. 3. Since most load device controllers supporting CAN bus networks only support the traditional CAN protocol and not the newer CAN FD protocol, and CAN nodes cannot receive CAN FD messages, and most devices do not actually need the high bandwidth and other new features of CAN FD messages, replacing all node devices on the network with those supporting the CAN FD protocol would be a costly and complex operation.
[0052] The following embodiments of the present invention, with minor adjustments to a few key node devices on the CAN bus, establish an auxiliary network for transmitting large amounts of data messages between only a few key node devices. The auxiliary bus is used to transfer the transmission pressure of continuous data between key node devices, thereby speeding up the transmission speed and reducing the load rate of the CAN network.
[0053] For ease of description, in the following embodiments of the present invention, the controller that will send data in the standard CAN bus network is referred to as the first CAN controller; the transmitting node controller that performs auxiliary data transmission in the designed auxiliary bus network is referred to as the first auxiliary controller; the controller node that will receive data sent by the first CAN controller in the standard CAN bus network is referred to as the second CAN controller; and the receiving node controller that receives auxiliary data in the auxiliary bus is referred to as the second auxiliary controller.
[0054] Example 1:
[0055] This invention describes a method for constructing an auxiliary network based on a CAN network, focusing on data transmission via the CAN bus and auxiliary bus. Please refer to [link / reference]. Figure 1 , Figure 1 This is a flowchart illustrating an auxiliary network construction method based on a CAN network, provided by an embodiment of the present invention. The method includes:
[0056] Data is transmitted to any device in the first and / or second device groups of the CAN network using the CAN bus in small data transmission mode; small data transmission mode includes: CAN bus directly transmitting data packets to the device.
[0057] In the aforementioned CAN network-based auxiliary network construction method, the process of selecting either a small data transmission mode or a large data transmission mode includes:
[0058] The system parses the data to be transmitted, determining whether the data volume exceeds or does not exceed the maximum single-frame transmission capacity under the CAN standard. If the data volume does not exceed the maximum single-frame transmission capacity under the CAN standard, the small data transmission mode is selected, using the CAN bus for transmission. In this case, the auxiliary bus is idle, and its status does not need to be monitored. If the data volume exceeds the maximum single-frame transmission capacity under the CAN standard, the large data transmission mode is selected, and the data is split into packets. During splitting, the data volume exceeding the maximum single-frame transmission capacity under the CAN standard is included in the first data packet, and the remaining data is included in the second data packet. While the frame containing the first data packet occupies the CAN bus, the second data packet is synchronously transmitted via the auxiliary bus. If the CAN bus transmission has ended but the auxiliary bus transmission has not, the auxiliary bus continues to transmit independently, and the CAN bus operates independently to transmit other data in the small data transmission mode. However, the large data transmission mode will not be available until the auxiliary bus transmission is complete.
[0059] Please see Figure 4 , Figure 4This is a flowchart illustrating the data transmission state transition of the auxiliary controller in the transmitting and receiving states according to an embodiment of the present invention. The transmission adopts framing and transmission rules based on CAN 2.0B. When the controller receives a non-self-transmitted SOF frame start signal on the CAN bus, it enters the READ state. When the CAN bus is occupied by a dominant bit, it enters the receiving state. First, the arbitration field code is received. After receiving the arbitration field, the second CAN controller will determine whether it matches the preset filtering rules of the second CAN controller. If it matches, it continues to receive; if it does not match, it discards the frame data. Subsequently, the controller prepares to receive the control field code and encodes the DLC bit according to the data length in the control field code to receive the data field. The data composed of the arbitration field, control field, and data field is subjected to CRC-15 verification. After successful verification, a dominant bit is filled in the ACK response bit to indicate that the data reception is complete. The single-frame transmission of the small data transmission mode ends.
[0060] An auxiliary bus is built between devices in a CAN network that require large data transmission to facilitate communication on the CAN bus network.
[0061] In a large data transmission mode, data is simultaneously transmitted to devices in a second group of devices in the CAN network using both the auxiliary bus and the CAN bus. The large data transmission mode includes: first, the data to be transmitted is unpacked into a first data packet and a second data packet; while transmitting the first data packet to the device using the CAN bus, the auxiliary bus transmits the second data packet to the device corresponding to the same identification code.
[0062] A typical CAN bus network contains a large number of devices. For practical applications, please refer to... Figure 2 , Figure 2 This is a structural diagram of the device connected to the CAN bus and auxiliary bus. Figure 2 Devices 1 through 9 exist on the CAN bus network. Because the CAN bus network has high requirements for network load rate, the recommended value is 50%, while the empirical value in engineering is generally 30%. When the recommended load rate is exceeded, data from lower-priority nodes and nodes that actively err will have difficulty successfully transmitting data. The maximum amount of data that can be transmitted in a single frame under the CAN 2.0B standard is the maximum amount of data that can be transmitted in a single frame under the CAN standard. Data exceeding this maximum amount of data needs to be split and transmitted multiple times, thus significantly increasing the overall network load rate. This invention provides an auxiliary network construction method based on the CAN network. By building an auxiliary bus between node devices that require large data transmission volumes, it helps the CAN network share the burden of large data transmission tasks, thereby reducing the overall burden of the CAN network and accelerating data transmission speed.
[0063] In an embodiment of the present invention, an auxiliary network construction method based on a CAN network is provided, wherein the number of devices in the first device group of the CAN network is ≥0, and the number of devices in the second device group of the CAN network is >1; the amount of data to be transmitted per frame by the devices in the first device group is ≤ the maximum allowable amount of data to be transmitted per frame in the CAN bus network, and there are devices in the second device group whose required amount of data to be transmitted is > the maximum amount of data to be transmitted per frame in the CAN network.
[0064] In practical applications, please refer to Figure 2 , Figure 2 This is a structural diagram of the device connected to the CAN bus and auxiliary bus. Figure 2 The CAN bus and auxiliary bus can transmit data to devices 1, 4, 7 and 8 using either small data transmission mode or large data transmission mode as needed, depending on the size of the data packet. Figure 2 The CAN bus transmits data to devices 2, 3, 5, 6 and 9 using the small data transmission method. Figure 2 Equipment 2, Equipment 3, Equipment 5, Equipment 6 and Equipment 9 form the first equipment group, while Equipment 1, Equipment 4, Equipment 7 and Equipment 8 form the second equipment group.
[0065] In the above-disclosed auxiliary network construction method based on CAN network, the big data transmission method further includes: after the first data packet transmitted by CAN network and the second data packet transmitted by auxiliary bus are respectively checked by CRC, the first data packet and the second data packet are merged into the original big data.
[0066] Please see Figure 4 , Figure 4 This is a flowchart illustrating the data transmission state transition of the auxiliary controller in the transmitting and receiving states according to an embodiment of the present invention. The transmission mode on the CAN bus follows the existing CAN 2.0B protocol. Specifically, when a Start of the First Frame (SOF) signal is received on the CAN bus, all CAN controllers except the one transmitting the SOF signal enter the READ state. The second CAN controller determines whether to receive the frame data based on the arbitration field. If the arbitration field matches the matching rules of the preset filter within the second CAN controller, the frame data is received and saved. The control field code is received, and the DLC bit is encoded according to the data length in the control field to receive the data field. The data consisting of the arbitration field, control field, and data field, starting from the SOF, undergoes CRC verification. If the verification is successful, a dominant bit is filled in the ACK response bit to indicate that data reception is complete. Single-frame transmission in the small data transmission mode ends.
[0067] Please see Figure 4 , Figure 4This is a flowchart illustrating the data transmission state transition of the auxiliary controller in the sending and receiving states according to an embodiment of the present invention. In the large data transmission mode, the CPU sends a data transmission request to segment the data, dividing it into segments. The first 8 bits are sent by the CAN bus controller, and the subsequent bits are sent by the auxiliary bus. The first CAN controller and the first auxiliary controller simultaneously send the SOF bit. The first auxiliary controller then fills in a recessive bit as the SOF separator. While waiting for the CAN bus controller arbitration result, the first auxiliary controller fills in all dominant bits. After receiving a successful arbitration interrupt from the first CAN controller, it uses a 1-bit recessive bit to segment the data and sends the DLC data length bit according to the data length. The first auxiliary controller sends the data and outputs a CRC-32 checksum after the data field. The checksum includes the DLC and DATA fields. After completion, it outputs a 1-bit CRC separator, receives the ACK response bit, and determines whether reception was successful. The single-frame transmission in the large data transmission mode ends.
[0068] In the above-disclosed auxiliary network construction method based on CAN network, data is transmitted simultaneously to devices in the second device group in the CAN network using the auxiliary bus and CAN bus in a large data transmission mode, including: when the SOF frame start signal of the first data packet is sent on the CAN bus, the SOF frame start signal of the second data packet is synchronously sent on the auxiliary bus.
[0069] In practical use, under the large data transmission mode, the data to be transmitted is unpacked. The first unpacked data packet, consisting of the first 8 bytes (data A) of the original data, is transmitted on the CAN bus. The second unpacked data packet, consisting of the remaining data (data B) of the original data, is transmitted on the auxiliary bus. At the receiving end, CRC checks are performed on data A received through the CAN bus controller and data B received through the auxiliary bus controller. After the checks are completed, the received data A and data B are reassembled. The characteristic pattern of the data transmission start signal under the large data transmission mode is as follows: when the SOF frame start signal is transmitted on the CAN bus, the SOF start signal is synchronously transmitted on the auxiliary bus, announcing the occupancy of the bus. Furthermore, when the first CAN controller transmits the identification code ID, the first auxiliary controller begins transmitting a reserved frame to indicate a placeholder. After arbitration on the CAN bus, the unpacked data length (DLC) and data B are transmitted, omitting the transmission and matching process of the message identification code ID signal. Following the SOF start signal, the first CAN controller sends an identification code for bus arbitration. Bus arbitration occurs among all devices that simultaneously requested the SOF start signal. All devices that requested the SOF start signal send their identification codes together. If a device sends a 1 and receives a 0, that device is eliminated. If a device successfully sends all its identification codes, it wins the bus arbitration. During the bus arbitration process, the first auxiliary controller sends a placeholder while the first CAN controller sends its own identification code. The operations performed by the first CAN controller and the first auxiliary controller during this time are different.
[0070] In the above-disclosed auxiliary network construction method based on CAN network, data is transmitted simultaneously to devices in the second device group in the CAN network using the auxiliary bus and CAN bus in a big data transmission mode. This includes: when the first CAN controller sends the identification code ID to the second device group for the first time through the CAN bus, the first auxiliary controller starts transmitting a reserved frame to indicate that the auxiliary bus has been occupied.
[0071] After obtaining arbitration from the first CAN controller, the first auxiliary controller sends the data length DLC and the second data of the second data packet. The first auxiliary controller and the first CAN controller share the arbitration result so that the transmission and matching process of the message identification code ID signal is omitted during the transmission of the second data packet on the auxiliary bus.
[0072] More specifically, upon the initial transmission of the identification code ID, the first auxiliary controller begins transmitting a reserved frame to indicate a placeholder. After arbitration on the CAN bus, it transmits the unpacked data length DLC and data B, omitting the transmission and matching process of the message identification code ID signal. Upon receiving the data packet, the first CAN controller parses it. If the data size exceeds 8 bytes, it unpacks the packet. During unpacking, the first 8 bytes are grouped into data A and transmitted via the CAN bus with the standard CAN frame; the remaining data belongs to data B and is transmitted via the auxiliary bus when the frame containing data A occupies the bus.
[0073] In practical applications, when the auxiliary bus is idle and the first CAN controller needs to send a large amount of data, the first CAN controller sends a SOF (Signal of First Frame) while the first auxiliary controller sends a SOF to occupy the auxiliary bus and starts sending a reserved frame, waiting for the first CAN controller to obtain bus arbitration. After obtaining the arbitration, the first CAN controller starts sending data. When the auxiliary bus is in the working state, the first CAN controller's request to distribute data via the auxiliary bus is not accepted.
[0074] In the above-disclosed auxiliary network construction method based on CAN network, the second data packet has no arbitration field relative to the frame formed by the first data packet during the transmission process.
[0075] Please see Figure 5 , Figure 5 This invention provides a frame structure for transmitting large amounts of data using both the CAN bus and an auxiliary bus. Figure 5 As can be seen, the auxiliary network construction method based on CAN network in this embodiment of the invention, compared with the traditional CAN bus frame, has no arbitration field and consists only of the Start of Frame (SOF), control field, data field, CRC check field, ACK response field, and end of frame; the control field is an 8-bit field representing the message data length; the data field is used to transmit data, and the maximum length can support up to 256 bytes; the check field is 33 bits long and is automatically filled by the first CAN controller, and the CRC field includes a 32-bit CRC sequence and a one-bit CRC delimiter; the ACK segment is 2 bits long and includes an acknowledgment bit and an acknowledgment delimiter, and the acknowledgment bit is automatically filled by the second CAN controller.
[0076] Please continue reading. Figure 5 , Figure 5This invention provides a frame structure for transmitting large amounts of data via a CAN bus and an auxiliary bus. The auxiliary bus control field's data message length field has 8 bits, indicating the data length contained in the frame. Data is in 1-byte units, and a single frame of the auxiliary bus supports a maximum transmission of 256 bytes of data. The auxiliary frame undergoes CRC verification, checking the DLC data length code and the data field. The CRC verification field includes a 32-bit CRC checksum and a 1-bit CRC separator. The CRC-32 cyclic redundancy check method is used, and the remainder is the CRC checksum. The separator is always recessive. The ACK segment of the auxiliary frame has 2 bits, including an acknowledgment bit and an acknowledgment delimiter. The acknowledgment bit is a recessive bit sent by the transmitter and automatically filled with a dominant bit by the receiver. The first auxiliary controller receives a dominant signal on the auxiliary bus and determines successful reception. The acknowledgment delimiter is immediately adjacent to the end of the frame and remains recessive. The end-of-frame bit consists of 7 recessive bits, automatically filled by the controller. Any dominant signal is prohibited within this area. During bus idle periods, the bus remains filled with recessive bits.
[0077] To more clearly illustrate the CAN bus and auxiliary bus data transmission in embodiments of the present invention, please refer to [link / reference needed]. Figure 6 , Figure 6 This is a complete flowchart of the large data transmission method provided in the embodiments of the present invention, which is described below according to... Figure 6 The sending process is described in detail, outlining the specific steps involved in transmitting large amounts of data in practical applications:
[0078] Step 1: Receive and unpack data. Before data transmission, the data packet needs to be unpacked. The first 8 bytes of data are sent to the first CAN controller as data bits in the CAN frame for transmission in one pass. The second group of data, less than 256 bytes, is sent to the first auxiliary controller as data bits in the auxiliary frame for transmission. If the total data volume exceeds the maximum value of 264 bytes for a single transmission, a second transmission is required.
[0079] Step 2: Wait for the bus to become idle. When the auxiliary bus is idle, wait for the CAN network to become idle as well, then immediately begin the transmission process in Step 3.
[0080] Step 3: Send the frame start signal. In a standard CAN bus, the SOF bit is the frame start signal, a dominant bit 0, used to mark the start point of the frame. After receiving the frame, the second CAN controller will record the time code at that moment.
[0081] In the second auxiliary controller of this embodiment of the invention, all auxiliary bus control nodes are equipped with a matching time counter, which adopts the same counting rate as the second CAN controller. When both the CAN bus and the auxiliary bus are idle, the matching time counter of the second auxiliary controller will complete a time code synchronization with the time counter of the second CAN controller under the same device, so that the time codes of the two remain the same.
[0082] Furthermore, during the initialization phase, the bit rate of the CAN bus needs to be input into the matching time counter of the second auxiliary controller to ensure that the time counters of the second CAN controller and the second auxiliary controller are synchronized. Configuration information includes the baud rate prescaler (CAN_BRP) and the bit length (CAN_BL). The baud rate prescaler is used to divide the module's internal clock signal CLK into the smallest time unit on the CAN bus, called a time slice (Tq). The bit length is the number of time slices contained in a complete bit on the CAN bus, i.e., the sum of the synchronization segment (SS segment), propagation time segment (PTS segment), phase buffer segment 1 (PBS1), and phase buffer segment 2 (PBS2) on the CAN network.
[0083] In the first auxiliary controller, the SOF signal is a dominant bit 0. After receiving the SOF signal, the second auxiliary controller records the time code at that moment. After receiving the data, it matches the data received by the second CAN controller with the time code. Frames with the same time code are the same frame, which facilitates the integration of the transmitted data packets.
[0084] Step 4: CAN bus arbitration, with the auxiliary bus awaiting the arbitration result. The first CAN controller performs matching using an 11-bit standard identifier or a 29-bit extended identifier conforming to the CAN bus specification. The first CAN controller sends the identifier to the CAN bus in the arbitration field of the CAN frame. Upon receiving the identifier, the second CAN controller matches it with a preset identifier using a filter. If a match is successful, the second CAN controller considers the frame necessary and sends an interrupt to the second auxiliary controller, notifying it that it needs to receive the extended data of the frame.
[0085] After sending the dominant SOF bit, a recessive separator is generated. When the first CAN controller sends the identifier, the first auxiliary controller sends a dominant reserved bit to create a placeholder on the bus. If the first CAN controller obtains bus arbitration, it sends a success interrupt to the first auxiliary controller.
[0086] Step 5: After receiving a successful bus arbitration interrupt, the first auxiliary controller begins sending data. After sending an implicit separator to mark the end of the placeholder, it begins sending the DLC data field length code, which consists of 8 bits. The data field length consists of 1-256 bytes.
[0087] During transmission, the bit rate of the auxiliary bus network can differ from that of the CAN bus; a higher bit rate can be set as needed to speed up transmission. Configuration information for transmission speed includes: Baud Rate Prescaler (BRP), Synchronization Segment (SS segment), Propagation Time Segment (PTS segment), Phase Buffer Segment 1 (PBS1), and Phase Buffer Segment 2 (PBS2). The Baud Rate Prescaler generates the smallest time unit (time slice) on the bus. The Synchronization Segment, Propagation Time Segment, Phase Buffer Segment 1, and Phase Buffer Segment 2 each consist of X time slices, and the sum of the lengths of these four segments equals the length of one CAN data bit. Generally, a complete bit consists of 8-25 time slices.
[0088] Step 6: Second Auxiliary Controller Reception and Acknowledgment. When the second auxiliary controller receives the SOF signal on the auxiliary bus, it records the current time counter value. After the dominant placeholder signal ends, it receives a recessive signal, then receives the Data Length Encoding (DLC), and begins recording subsequent received extended data according to the received data field length (DLC). It performs Cyclic Redundancy Check (CRC) verification on the DLC bit and the extended data bits. The first auxiliary controller uses CRC-32 verification, outputting a 32-bit checksum followed by a 1-bit recessive CRC separator. Following the CRC separator are an acknowledgment bit and an acknowledgment delimiter. The acknowledgment bit is filled with a dominant bit by the second auxiliary controller, and the acknowledgment delimiter is a recessive bit. After the acknowledgment bit are 7 consecutive recessive bits used to mark the end of the frame.
[0089] If a CRC check error or format error occurs, the second auxiliary controller sends six consecutive dominant bits to the bus, starting from the acknowledge bit, to indicate an error frame. A CRC check error occurs when the remainder of the CRC check is not zero, indicating a failed CRC check. A format error manifests as a data format mismatch, such as the first auxiliary controller continuing to send data after receiving information from the DLC, or incorrect delimiters, resulting in data length or format mismatches. If the first auxiliary controller receives an error frame, it immediately stops transmission and sends an error interrupt to the CPU.
[0090] Step 7: After the transmission is complete, the auxiliary data is stored in the temporary storage area and compared with the CAN frame timecode received by the first CAN controller. If the timecodes match, the data fields of both are considered to be the high and low bits of the same frame, and the two sets of data are merged and transferred to the memory. This completes a full large data transmission process.
[0091] The core of this invention is a method for enabling large data volume transmission between certain nodes in a CAN network using assisted CAN bus communication. This invention, without affecting the original CAN network functionality, adds an auxiliary network serving only certain key nodes, making data transmission faster and more efficient, and increasing the effective data ratio of the extended data frames of the auxiliary bus to over 90%. This invention can significantly improve the efficiency of large data volume transmission between key nodes in a CAN bus network at a relatively low cost and without making significant modifications to the original CAN bus.
[0092] Example 2:
[0093] This invention describes an auxiliary network construction system based on a CAN network from two aspects: the CAN bus and auxiliary bus, and the state transitions between the CAN transmit / receive controller and the auxiliary transmit / receive controller.
[0094] Please see Figure 3 , Figure 3 This invention provides a schematic diagram of an auxiliary network construction system based on a CAN network, comprising: a first CAN controller in a transmitting state, a CAN bus, a first auxiliary controller in a transmitting state, and an auxiliary bus.
[0095] The CAN bus is connected to the first CAN controller, which determines whether the transmitted data is in small data transmission mode or large data transmission mode.
[0096] In the small data transmission mode, the first CAN controller connects to the CAN bus, and the CAN bus transmits data to devices in the first or second device group of the CAN network via traditional CAN frames. Please refer to [link / reference]. Figure 4 , Figure 4 This is a flowchart illustrating the data transmission state transition of the auxiliary controller in the transmitting and receiving states according to an embodiment of the present invention. Upon receiving the SOF frame start signal on the CAN bus, the system switches to the READ state. Referring to the CAN 2.0B protocol, the arbitration field, control field, data field, and CRC check field are received sequentially. After verifying the data, a dominant bit is filled in the ACK response bit to indicate that data reception is complete. This concludes the single-frame transmission in the small data transmission mode.
[0097] In the big data transmission mode, the first CAN controller splits the data to be transmitted into a first data packet and a second data packet. The first CAN controller is connected to the CAN bus network, and the first auxiliary controller is connected to the auxiliary bus network. While the first CAN controller transmits the first data packet to any device in the second device group in the CAN network through the CAN bus, the first auxiliary controller controls the auxiliary bus to transmit the second data packet to the same device.
[0098] Please see Figure 4 , Figure 4 This is a flowchart illustrating the data transmission state transition of the auxiliary controller in the sending and receiving states according to an embodiment of the present invention. In the large data transmission mode, the data requested by the CPU is segmented. The first 8 bits are sent by the CAN bus controller, and the subsequent bits are sent by the auxiliary bus. The CAN bus controller and the auxiliary controller simultaneously send the SOF bit. During the CAN bus arbitration request sent by the CAN bus controller to the CAN bus, the first auxiliary controller sends a dominant bit as a placeholder to the auxiliary bus. After receiving a successful arbitration interrupt from the CAN controller, a recessive bit is used to segment the data, and a DLC control length bit is sent according to the data length. The CAN bus and auxiliary bus transmit data, outputting a CRC-32 checksum containing the DLC and DATA fields. After completion, a CRC separator is output, and an ACK response bit is received to determine whether reception was successful. The single-frame transmission in the large data transmission mode ends.
[0099] For ease of description, in this embodiment of the invention, the controller that will send data is referred to as the first CAN controller; the controller that transmits data in the auxiliary bus network is referred to as the first auxiliary controller; the controller node in the standard CAN bus network that will receive data sent by the first CAN controller is referred to as the second CAN controller; and the controller that receives auxiliary data in the auxiliary bus is referred to as the second auxiliary controller.
[0100] Please continue reading. Figure 3 , Figure 3 This invention provides a schematic diagram of an auxiliary network construction system based on a CAN network. The system includes a first CAN controller, a CAN bus, a first auxiliary controller, and an auxiliary bus, as well as a second CAN controller and a second auxiliary controller in a receiving state. The CAN bus is connected to the second CAN controller, which receives data transmitted by the CAN bus. The auxiliary bus is connected to the second auxiliary controller, which is connected to the second CAN controller. The second CAN controller receives a first data packet, the first auxiliary controller receives a second data packet, and the second CAN controller merges the first and second data packets into a single large data packet.
[0101] Preferably, the second CAN controller and the second auxiliary controller perform CRC checks on the first data packet and the second data packet. After the CRC check is completed, the first data packet and the second data packet are merged into the original large data packet. Preferably, the first auxiliary controller identifies whether the auxiliary bus is idle, the first CAN controller determines whether the data to be transmitted is a small data packet or a large data packet, and the second auxiliary controller identifies whether the auxiliary bus is idle. In the large data transmission mode, when the first CAN controller sends the SOF frame start signal, the first auxiliary controller synchronously sends the SOF frame start signal to the auxiliary bus to form an occupation. After the SOF delimiter, the first auxiliary controller starts sending a reserved frame. The first auxiliary controller waits for the first CAN controller to obtain CAN bus arbitration before it starts transmitting data. When the auxiliary bus is in the working state, requests for data transmission on the CAN bus are not accepted.
[0102] To more clearly illustrate the CAN bus and auxiliary bus data transmission in embodiments of the present invention, please refer to [link / reference needed]. Figure 6 , Figure 6 This is a complete flowchart of the large data transmission method provided in the embodiments of the present invention, which is described below according to... Figure 6 The sending process is described in detail, outlining the specific steps involved in transmitting large amounts of data in practical applications:
[0103] Step 1: Receive and unpack data. Before data transmission, the data packet needs to be unpacked. The first 8 bytes of data are sent to the first CAN controller as data bits in the CAN frame for transmission in one pass. The second group of data, less than 256 bytes, is sent to the first auxiliary controller as data bits in the auxiliary frame for transmission. If the total data volume exceeds the maximum value of 264 bytes for a single transmission, a second transmission is required.
[0104] Step 2: Wait for the bus to become idle. When the auxiliary bus is idle, wait for the CAN network to become idle as well, then immediately begin the transmission process in Step 3.
[0105] Step 3: Send the frame start signal. In a standard CAN bus, the SOF bit is the frame start signal, a dominant bit 0, used to mark the start point of the frame. After receiving the frame, the second CAN controller will record the time code at that moment.
[0106] In the second auxiliary controller of this embodiment of the invention, all auxiliary bus control nodes are equipped with a matching time counter, which adopts the same counting rate as the second CAN controller. When both the CAN bus and the auxiliary bus are idle, the matching time counter of the second auxiliary controller will complete a time code synchronization with the time counter of the second CAN controller under the same device, so that the time codes of the two remain the same.
[0107] Furthermore, during the initialization phase, the bit rate of the CAN bus needs to be input into the matching time counter of the second auxiliary controller to ensure that the time counters of the second CAN controller and the second auxiliary controller are synchronized. Configuration information includes the baud rate prescaler (CAN_BRP) and the bit length (CAN_BL). The baud rate prescaler is used to divide the module's internal clock signal CLK into the smallest time unit on the CAN bus, called a time slice (Tq). The bit length is the number of time slices contained in a complete bit on the CAN bus, i.e., the sum of the synchronization segment (SS segment), propagation time segment (PTS segment), phase buffer segment 1 (PBS1), and phase buffer segment 2 (PBS2) on the CAN network.
[0108] In the first auxiliary controller, the SOF signal is a dominant bit 0. After receiving the SOF signal, the second auxiliary controller records the time code at that moment. After receiving the data, it matches the data received by the second CAN controller with the time code. Frames with the same time code are the same frame, which facilitates the integration of the transmitted data packets.
[0109] Step 4: CAN bus arbitration, with the auxiliary bus awaiting the arbitration result. After sending the SOF signal, the first CAN controller requests transmission permission by sending an arbitration field conforming to the CAN 2.0B bus specification, i.e., an 11-bit standard identifier or a 29-bit extended identifier. If no mismatch occurs between the transmitted and received data during the transmission of the arbitration field, the bus arbitration is considered successful, and the first CAN controller obtains transmission permission.
[0110] When the second CAN controller receives an arbitration field on the CAN bus that matches the preset filtering rules in the filter, it considers the frame necessary and sends an interrupt to the second auxiliary controller to notify that it needs to receive the extended data of the frame.
[0111] After sending the dominant SOF bit, a recessive separator is generated. When the first CAN controller sends the identifier, the first auxiliary controller sends a dominant reserved bit to create a placeholder on the bus. If the first CAN controller obtains bus arbitration, it sends a success interrupt to the first auxiliary controller.
[0112] Step 5: After receiving a successful bus arbitration interrupt, the first auxiliary controller begins sending data. After sending an implicit separator to mark the end of the placeholder, it begins sending the DLC data field length code, which consists of 8 bits. The data field length consists of 1-256 bytes.
[0113] During transmission, the bit rate of the auxiliary bus network can differ from that of the CAN bus; a higher bit rate can be set as needed to speed up transmission. Configuration information for transmission speed includes: Baud Rate Prescaler (BRP), Synchronization Segment (SS segment), Propagation Time Segment (PTS segment), Phase Buffer Segment 1 (PBS1), and Phase Buffer Segment 2 (PBS2). The Baud Rate Prescaler generates the smallest time unit (time slice) on the bus. The Synchronization Segment, Propagation Time Segment, Phase Buffer Segment 1, and Phase Buffer Segment 2 each consist of X time slices, and the sum of the lengths of these four segments equals the length of one CAN data bit. Generally, a complete bit consists of 8-25 time slices.
[0114] Step 6: Second Auxiliary Controller Reception and Acknowledgment. When the second auxiliary controller receives the SOF signal on the auxiliary bus, it records the current time counter value. After the dominant placeholder signal ends, it receives a recessive signal, then receives the Data Length Encoding (DLC), and begins recording subsequent received extended data according to the received data field length (DLC). It performs Cyclic Redundancy Check (CRC) verification on the DLC bit and the extended data bits. The first auxiliary controller uses CRC-32 verification, outputting a 32-bit checksum followed by a 1-bit recessive CRC separator. Following the CRC separator are an acknowledgment bit and an acknowledgment delimiter. The acknowledgment bit is filled with a dominant bit by the second auxiliary controller, and the acknowledgment delimiter is a recessive bit. After the acknowledgment bit are 7 consecutive recessive bits used to mark the end of the frame.
[0115] If a CRC check error or format error occurs, the second auxiliary controller sends six consecutive dominant bits to the bus, starting from the acknowledge bit, to indicate an error frame. A CRC check error occurs when the remainder of the CRC check is not zero, indicating a failed CRC check. A format error manifests as a data format mismatch, such as the first auxiliary controller continuing to send data after receiving information from the DLC, or incorrect delimiters, resulting in data length or format mismatches. If the first auxiliary controller receives an error frame, it immediately stops transmission and sends an error interrupt to the CPU.
[0116] Step 7: After the transmission is complete, the auxiliary data is stored in the temporary storage area and compared with the CAN frame timecode received by the first CAN controller. If the timecodes match, the two data fields are considered to be the first and second data packets of the same frame. The first and second data packets are then merged into the original large data and stored in the memory. This completes a full large data transmission process.
[0117] This invention establishes an auxiliary bus between devices requiring large data transmission volumes to assist CAN network communication. This helps the CAN bus share the burden of large data transmission tasks, thereby reducing the overall load on the CAN network and effectively accelerating data transmission speed. While the CAN bus transmits a small portion of the large data volume, the auxiliary bus transmits the majority of the large data volume. Compared to existing CAN buses that fragment and transmit large data volumes multiple times, this invention allows the CAN bus and auxiliary bus to transmit large data volumes in a single transmission, effectively reducing the CAN bus load rate. Since this invention does not modify the original frame format of the CAN bus and only adds an auxiliary network between a few key nodes, it does not interfere with normal communication between other ordinary nodes. Therefore, most devices on the existing CAN network can continue to be used without modification, resulting in low improvement costs.
[0118] The detailed descriptions listed above are merely specific descriptions of feasible embodiments of the present invention, and are not intended to limit the scope of protection of the present invention. All equivalent embodiments or modifications made without departing from the spirit of the present invention should be included within the scope of protection of the present invention.
[0119] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the invention can be implemented in other specific forms without departing from its spirit or essential characteristics. Therefore, the embodiments should be considered in all respects as exemplary and non-limiting, and the scope of the invention is defined by the appended claims rather than the foregoing description. Thus, all variations falling within the meaning and scope of equivalents of the claims are intended to be included within the present invention. No reference numerals in the claims should be construed as limiting the scope of the claims.
[0120] Furthermore, it should be understood that although this specification describes embodiments, not every embodiment contains only one independent technical solution. This narrative style is merely for clarity. Those skilled in the art should consider the specification as a whole, and the technical solutions in each embodiment can also be appropriately combined to form other embodiments that can be understood by those skilled in the art.
Claims
1. A method for constructing an auxiliary network based on a CAN network, characterized in that, include: In the small data transmission mode, data is transmitted directly to any device in the first device group and / or the second device group in the CAN network using the CAN bus; An auxiliary bus is built between devices in a CAN network that require large data transmission to facilitate communication on the CAN bus network. In the big data transmission mode, data is transmitted to devices in the second device group in the CAN network simultaneously using the auxiliary bus and the CAN bus. The big data transmission mode includes: first, the data to be transmitted is unpacked into a first data packet and a second data packet, and then the first data packet is transmitted to the device using the CAN bus while the second data packet is transmitted to the same device using the auxiliary bus. When the SOF frame start signal of the first data packet is sent on the CAN bus, the SOF frame start signal of the second data packet is simultaneously sent on the auxiliary bus. When the first CAN controller sends the identification code ID to the CAN bus, the first auxiliary controller starts transmitting a reserved frame to indicate that the auxiliary bus has been occupied; after the auxiliary bus obtains arbitration from the CAN bus, it sends the data length DLC of the second data packet and the second data, so that the transmission and matching process of the message identification code ID signal is omitted during the transmission of the second data packet by the auxiliary bus. In this case, the second data packet, relative to the first data packet, forms a frame without an arbitration field during transmission; In this context, the number of devices in the first device group of the CAN network is ≥0, and the number of devices in the second device group of the CAN network is >1; the amount of data to be transmitted per frame by the devices in the first device group is ≤ the maximum allowable amount of data to be transmitted per frame in the CAN bus network, and there are devices in the second device group whose required amount of data to be transmitted is > the maximum amount of data to be transmitted per frame in the CAN network. The CAN bus is connected to the first CAN controller, the first CAN controller is connected to the first auxiliary controller, and the auxiliary bus is connected to the first auxiliary controller.
2. The method for constructing an auxiliary network based on a CAN network according to claim 1, characterized in that, The big data transmission method also includes: The first data packet transmitted through the CAN network and the second data packet transmitted through the auxiliary bus are CRC checked separately before being merged into the original big data packet.
3. The method for constructing an auxiliary network based on a CAN network according to claim 1, characterized in that, The process of selecting the small data transmission method or the large data transmission method includes: The data to be transmitted is parsed to determine whether the amount of data to be transmitted exceeds the maximum allowable data transmission amount per frame of the CAN bus network or does not exceed the maximum allowable data transmission amount per frame of the CAN bus network. If the data volume does not exceed the maximum allowable data volume to be sent per frame of the CAN bus network, then the small data transmission mode is selected and the CAN bus is used for transmission. At this time, the auxiliary bus is idle and there is no need to care about the status of the auxiliary bus. If the data volume exceeds the maximum allowable data volume per frame of the CAN bus network, the large data transmission mode is selected, and the data to be transmitted is unpacked. During unpacking, the data to be transmitted that exceeds the maximum allowable data volume per frame of the CAN bus network is included in the first data packet, and the remaining data is included in the second data packet. When the frame containing the first data packet occupies the CAN bus, the second data packet is sent synchronously via the auxiliary bus. If the CAN bus transmission has ended but the auxiliary bus transmission has not finished, the auxiliary bus continues to transmit independently, and the CAN bus works alone to send other data in the small data transmission mode. However, the large data transmission mode will not be available until the auxiliary bus transmission is completed.
4. An auxiliary network construction system based on a CAN network, characterized in that, include: A first CAN controller and CAN bus in transmit mode; a first auxiliary controller and auxiliary bus in transmit mode; The CAN bus is connected to the first CAN controller, the first CAN controller is connected to the first auxiliary controller, and the auxiliary bus is connected to the first auxiliary controller; The first CAN controller determines whether the transmitted data uses a small data transmission mode or a large data transmission mode. In the small data transmission mode, the CAN bus transmits data to devices in the first or second device group of the CAN network via CAN frames; In the big data transmission mode, the first CAN controller splits the data to be transmitted into a first data packet and a second data packet; while the first CAN controller controls the CAN bus to transmit the first data packet to any device in the second device group in the CAN network, the first auxiliary controller controls the auxiliary bus to transmit the second data packet to the same device. When the SOF frame start signal of the first data packet is sent on the CAN bus, the SOF frame start signal of the second data packet is simultaneously sent on the auxiliary bus. When the first CAN controller sends the identification code ID to the CAN bus, the first auxiliary controller starts transmitting a reserved frame to indicate that the auxiliary bus has been occupied. After obtaining arbitration from the CAN bus, the auxiliary bus sends the data length DLC and the second data packet to omit the sending and matching process of the message identification code ID signal during the transmission of the second data packet by the auxiliary bus. In this case, the second data packet has no arbitration field relative to the frame formed by the first data packet during transmission.
5. The CAN network-based auxiliary network construction system according to claim 4, characterized in that, Also includes: A second CAN controller in receiving mode and a second auxiliary controller in receiving mode; The CAN bus is connected to the second CAN controller, and the second CAN controller receives data sent by the CAN bus. The auxiliary bus is connected to the second auxiliary controller, the second auxiliary controller is connected to the second CAN controller, the second CAN controller receives the first data packet, the second auxiliary controller receives the second data packet, and the second CAN controller merges the first data packet and the second data packet into the original big data.
6. The CAN-based auxiliary network construction system according to claim 5, characterized in that, The second CAN controller performs CRC verification on the first data packet, and the second auxiliary controller performs CRC verification on the second data packet. After the CRC verification is completed, the first data packet and the second data packet are merged into the original big data.
Citation Information
Patent Citations
Expandable communications bus
US6223237B1