Method, service system, device and storage medium for inter-system communication
By combining event-driven and multi-threaded approaches to unify inter-system communication, the problem that traditional communication methods cannot meet the needs of complex application scenarios is solved, achieving efficient multi-system communication and improved security performance.
Patent Information
- Application Number
- CN202211328311.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-27
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2042-10-27
AI Technical Summary
Traditional communication methods based on a single communication medium cannot meet the needs of complex application scenarios such as new energy vehicles and autonomous driving. Existing communication frameworks have failed to effectively handle the problems of heterogeneous systems and multiple communication methods.
An event-driven approach is adopted to unify and combine communication between multiple systems. A message queue and a data processing thread are provided for each external system through multi-threading, and the data processing module associated with the corresponding message queue is used to process the data.
It reduces the complexity of multi-system communication, meets the requirements of high-performance communication, and improves the security and timeliness of the system.
Smart Images

Figure CN115794430B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates generally to the technical field of data communication. More specifically, the present disclosure relates to a method for inter-system communication and a service system for communicating with multiple external systems. Further, the present disclosure also relates to an apparatus for inter-system communication and a computer-readable storage medium for inter-system communication. BACKGROUND
[0002] A new communication mode is generated by combining data communication technology and computer technology, which connects data terminals with computers through transmission channels, so that data terminals at different locations can share software, hardware and information resources. As a communication service, data communication technology improves services for realizing general-purpose remote information processing. With the increasing use of computers and various intelligent devices with processing functions in various fields, the application range of data communication is also expanding, and it involves new application scenarios, such as new energy vehicles and autonomous driving. At present, with the rapid development of new energy vehicles and autonomous driving, the software and hardware architecture is also changing rapidly, and the traditional communication mode based on a single communication medium has been unable to meet the needs of such complex application scenarios, and the existing communication framework does not involve the problem of heterogeneous systems and multiple communication modes. SUMMARY
[0003] In order to at least partially solve the technical problems mentioned in the background, the present disclosure provides a solution for inter-system communication. By using the solution of the present disclosure, the communication between multiple systems can be unified and combined, and the complexity of multi-system communication can be reduced. To this end, the present disclosure provides solutions in the following aspects.
[0004] In a first aspect, the present disclosure provides a method for inter-system communication, wherein the multiple systems include a service system performing the method and multiple external systems respectively communicatively connected with the service system, the method comprising: receiving a message from at least one of the multiple external systems; in response to receiving the message, triggering a read event of reading data from the message; based on driving of the read event, reading the data in the message into a corresponding message queue of multiple message queues; and processing the data by using a data processing module associated with the corresponding message queue, so as to realize communication with the external system.
[0005] In a second aspect, the present disclosure also provides a service system for communicating with a plurality of external systems, comprising: a data transceiver module configured to: receive a message from at least one external system of the plurality of external systems; in response to receiving the message, trigger a read event of reading data from the message; based on a driving of the read event, read the data in the message into a corresponding message queue of a plurality of message queues; one or more message queues, wherein each message queue is configured to store the data read from the message by the data transceiver module correspondingly; and one or more data processing modules configured to: read data from the corresponding message queue; and process the data to implement communication with the external system.
[0006] In a third aspect, the present disclosure also provides a device for inter-system communication, wherein the plurality of systems comprises a service system and a plurality of external systems respectively communicatively connected with the service system, the device comprising: a processor; and a memory having stored therein program instructions for inter-system communication, which when executed by the processor, cause the device to implement the embodiments of the first aspect.
[0007] In a fourth aspect, the present disclosure also provides a computer-readable storage medium for inter-system communication, wherein the plurality of systems comprises a service system and a plurality of external systems respectively communicatively connected with the service system, the computer-readable storage medium having stored therein program instructions for inter-system communication, which when executed by a processor, cause implementation of the embodiments of the first aspect.
[0008] With the solutions disclosed in the above aspects of the present disclosure, the communication between the plurality of external systems is unified and combined in an event-driven manner, and by reading the message of the external system into the corresponding message queue, the data can be processed by the data processing module associated with the corresponding message queue. In particular, the embodiments of the present disclosure provide one message queue and one data processing thread for each external system by using the thread pool. Based on such event-driven and multi-threaded manner, the solutions of the present disclosure can achieve efficient inter-system communication, thereby greatly reducing the complexity of inter-system communication and meeting the demand of the system for high-performance communication. BRIEF DESCRIPTION OF DRAWINGS
[0009] The above and other objects, features and advantages of the example embodiments of the present disclosure will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which several embodiments of the present disclosure are shown by way of example, and wherein like reference numerals refer to like elements throughout. In the drawings:
[0010] Figure 1is an exemplary flow chart illustrating a method for inter-system communication according to embodiments of the present disclosure;
[0011] Figure 2 is an exemplary schematic diagram illustrating the entirety of inter-system communication according to embodiments of the present disclosure;
[0012] Figure 3 is an exemplary schematic diagram illustrating the receiving data and transmitting data of inter-system communication according to embodiments of the present disclosure;
[0013] Figure 4 is an exemplary structural block diagram illustrating a diagnostic service module and a diagnostic driver module according to embodiments of the present disclosure; and
[0014] Figure 5 is an exemplary structural block diagram illustrating a service system according to embodiments of the present disclosure. DETAILED DESCRIPTION
[0015] The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings. It should be understood that the embodiments described in the specification are only part of the embodiments of the present disclosure provided for the purpose of clearly understanding the solutions and meeting the legal requirements, and not all the embodiments of the present disclosure can be implemented. Based on the embodiments disclosed in the specification, all other embodiments obtained by those skilled in the art without creative labor are within the scope of protection of the present disclosure.
[0016] It should be understood that the terms "include" and "contain" used in the specification and claims of the present disclosure indicate the presence of the described features, whole, steps, operations, elements and / or components, but do not exclude the presence or addition of one or more other features, whole, steps, operations, elements, components and / or sets thereof.
[0017] It should also be understood that the terms used in the specification of the present disclosure are only for the purpose of describing specific embodiments and are not intended to limit the present disclosure. As used in the specification and claims of the present disclosure, unless otherwise clear from the context, the singular forms "a", "an" and "the" are intended to include the plural forms. It should be further understood that the term "and / or" used in the specification and claims of the present disclosure means one or more of the associated listed terms in any combination and all possible combinations, and includes these combinations.
[0018] As used in the specification and claims, the term “if’ can be interpreted as meaning “when” or “upon” or “in response to a determination” or “in response to a detection” depending on the context. Similarly, the phrase “if it is determined” or “if [the recited condition or event] is detected” can be interpreted as meaning “upon a determination” or “in response to a determination” or “upon a detection” or “in response to a detection” of [the recited condition or event], depending on the context.
[0019] A detailed description of specific embodiments of the disclosure follows, in connection with the attached drawings.
[0020] Figure 1 is an exemplary flow chart illustrating a method 100 for inter-system communication according to embodiments of the disclosure. In one implementation scenario, the aforementioned multiple systems can include a service system performing the method and multiple external systems respectively communicatively connected with the service system.
[0021] As Figure 1 As shown in step S102, a message from at least one of the multiple external systems is received. In one embodiment, the aforementioned service system can be, for example, a diagnostic service system, and the aforementioned external systems can include at least a perception system communicatively connected with the service system through an inter-process communication interface and an external device communicatively connected with the service system through a peripheral communication interface. In another embodiment, the aforementioned external systems can further include an external monitoring system for monitoring the service system. In yet another embodiment, the aforementioned external systems can further include a cloud system communicatively connected with the service system through a network communication interface. That is, embodiments of the disclosure can receive a message from at least one of the perception system, the external monitoring system, the external device, and the cloud system. For example, in one application scenario, at least one of a working status message of the external device obtained by the perception system through a subscription service or an active diagnostic test, a working status message of the service system monitored by the external monitoring system, a working status message uploaded by the external device itself, and a working status message of the external device obtained by the cloud system through a subscription service or an active diagnostic test can be received.
[0022] In one implementation scenario, the corresponding perception system and external device can be set according to different application scenarios. For example, in a functional safety application scenario, the perception system described above can be, for example, a perception system of autonomous driving, which can be arranged with a service system in a vehicle system to realize communication between multiple systems in the vehicle system. In this application scenario, the external device described above can be, for example, a camera peripheral and a radar peripheral. The external monitoring system described above can be, for example, a Safety MCU, which is the external device with the highest safety level, and can monitor the working state messages of the entire vehicle system and abnormal handling. Thus, at least one of the working state messages of the camera peripheral and the radar peripheral obtained by the perception system through subscription service or active diagnostic test, the working state messages of the service system monitored by the external monitoring system, the working state messages uploaded by the camera peripheral and the radar peripheral themselves, and the working state messages of the camera peripheral and the radar peripheral obtained by the cloud system through subscription service or active diagnostic test can be received.
[0023] Specifically, a subscription message about subscribing to diagnostic results of the external device can be received from the perception system by using an inter-process communication interface, so as to process the subscription message, and then based on the subscription message, a peripheral message about diagnostic results of the external device can be received from the external device by using a peripheral communication interface, so as to perform message processing on the peripheral message. In addition, a subscription message about subscribing to diagnostic results of the external device can also be received from the cloud system by using a network communication interface, so as to process the subscription message. The aforementioned inter-process communication interface can include but is not limited to an inter-process communication interface such as a UNIX domain socket (“UDS”), a named pipe (“FIFO”), or shared memory. As an example, the aforementioned peripheral communication interface can include but is not limited to a peripheral communication interface such as a serial peripheral interface (“SPI”), a universal asynchronous receiver-transmitter (“Uart”), or an integrated circuit bus (“I2C”). Further, the aforementioned network communication interface can include but is not limited to a network communication interface such as a transmission control protocol (“TCP”) or a user datagram protocol (“UDP”).
[0024] Based on the received message, at step 104, a read event of reading data from the message is triggered in response to receiving the message. It can be understood that there are three types of file descriptors for file IO, i.e. read, write and exception. In actual application scenarios, the system kernel monitors the aforementioned three types of file descriptors. When there is data readable, writable or exception, it returns; when data arrives, the upper layer application identifies it as a read event, thereby completing data reading. Further, at step 106, based on the driving of the read event, the data in the message is read into the corresponding message queue of the plurality of message queues. That is, the embodiments of the present disclosure read the data in the received message of the external system into the corresponding message queue by setting a plurality of message queues and driving based on the read event. In one embodiment, the plurality of message queues can include an inter-process message queue, a peripheral message queue and a network message queue. In an implementation scenario, the data in the received message of the perception system is read into the inter-process message queue, the data in the received message of the external device or external monitoring system is read into the peripheral message queue, and the data in the received message of the cloud system is read into the network message queue.
[0025] Further, at step 108, the data is processed by using the data processing module associated with the corresponding message queue, so as to realize communication with the external system. That is, the embodiments of the present disclosure also provide a data processing module corresponding to the message queue to process the data. For example, the scheme of the present disclosure provides an inter-process data processing module corresponding to the inter-process message queue, a peripheral data processing module corresponding to the peripheral message queue, and a network data processing module corresponding to the network message queue. Specifically, for the received message of the perception system, in response to receiving the subscription message, a read event of reading subscription data from the subscription message is triggered, based on the driving of the read event, the subscription data is read into the inter-process message queue, and the inter-process data processing module is used to process the subscription data in the inter-process message queue, so as to at least record the diagnostic service subscribed by the perception system. For the received message of the external device, in response to receiving the peripheral message, a read event of reading peripheral data from the peripheral message is triggered, based on the driving of the read event, the peripheral data in the peripheral message is read into the peripheral message queue, and the peripheral data processing module is used to process the peripheral data in the peripheral message queue, so as to generate a feedback message. Similarly, in response to receiving the subscription message of the cloud system, a read event of reading subscription data from the subscription message is triggered, based on the driving of the read event, the subscription data is read into the network message queue, and the inter-network data processing module is used to process the subscription data in the network message queue.
[0026] In addition to receiving the messages of the external systems as described above, the embodiments of the present disclosure can also send feedback messages to the external systems through the corresponding communication interfaces, so that the external systems make safety decisions. For example, the feedback messages can be sent to the perception system by using the inter-process communication interface, to the external system or the external monitoring system by using the peripheral communication interface, and to the cloud system by using the network communication interface.
[0027] As can be known from the above description, the embodiments of the present disclosure drive reading of events, read the messages received from the plurality of external systems into the corresponding message queues respectively, and process the data in the messages of each external system by using the data processing modules corresponding to the message queues. Based on this, by using the event-driven and thread pool mode, a message queue and a data processing thread are provided for each external system, the inter-system communication is realized, and thus the complexity of the inter-system communication is greatly reduced, meeting the demand of the vehicle-mounted system for high performance. Further, the embodiments of the present disclosure also feed back the processing results of the data processing modules to the corresponding external systems, so that the external systems can obtain the diagnosis information in time and make corresponding safety countermeasures in time, improving the safety performance of the system.
[0028] Figure 2 is an exemplary schematic diagram illustrating the whole of the inter-system communication according to the embodiments of the present disclosure. It needs to be understood that, Figure 2 The illustrated inter-system communication is one specific embodiment of the inter-system communication in the above Figure 1 , and thus the description made above with respect to Figure 1 also applies to Figure 2 .
[0029] As Figure 2As shown in the figure, in the in-vehicle system 201, there are arranged a perception system (such as the perception system 202) and a service system (such as the service system 203) as mentioned above. In one application scenario, the perception system 202 is communicatively connected with the service system 203 through an inter-process communication interface 204. Further, the figure also shows an external device 205 and a cloud system 206, and the external device 205 is communicatively connected with the service system 203 through a peripheral communication interface 207, and the cloud system 206 is communicatively connected with the service system 203 through a network communication interface 208. In one implementation scenario, each external system (such as the perception system 202, the external device 205 and the cloud system 206 shown in the figure) can be communicatively connected with a data transceiver module 209 in the service system 203 through a corresponding communication interface (including the inter-process communication interface 204, the peripheral communication interface 207 and the network communication interface 208). Further, in the data transceiver module 209, there are arranged an event-driven module 209-1, a plurality of message queues and corresponding data processing modules. Specifically, the aforementioned data transceiver module 209 can be connected with the data processing modules via the message queues. As an example, the aforementioned plurality of message queues are an inter-process message queue 210, a peripheral message queue 211 and a network message queue 212, and the data processing modules connected with the message queues correspondingly are an inter-process data processing module 213, a peripheral data processing module 214 and a network data processing module 215, respectively.
[0030] As mentioned above, in one embodiment, the perception system 201 can be a perception system for autonomous driving, and the external device 205 can be, for example, a camera peripheral, a radar peripheral or a safety MCU. The inter-process communication interface can be, for example, UDS, FIFO or shared memory. The peripheral communication interface can be, for example, SPI, Uart or I2C. The network communication interface can be, for example, TCP or UDP. In one implementation scenario, when a subscription message about subscribing to the diagnostic results of the camera peripheral and the radar peripheral is received from the perception system 202 through the inter-process communication interface 204, the driving of the read event of the event-driven module 209-1 is triggered, and the subscription data in the aforementioned subscription message is read into the inter-process message queue 210. Then, the subscription data in the inter-process message queue 210 is processed (such as parsing the message content or reporting errors) by the inter-process data processing module 213 to generate feedback information.
[0031] Similar to the perception system 201 described above, when a peripheral message (e.g., a peripheral exception message) is received from an external device (e.g., a camera peripheral, a radar peripheral, or a safety MCU) 205 through the peripheral communication interface 207, a read event of the event-driven module 209-1 is triggered to read the peripheral data in the peripheral message into the peripheral message queue 211. Then, the peripheral data in the peripheral message queue 211 is processed by the peripheral data processing module 214 to generate feedback information. Similarly, when a subscription message about the diagnosis result of the subscribed camera peripheral and radar peripheral is received from the cloud system 206 through the network communication interface 208, a read event of the event-driven module 209-1 is triggered to read the subscription data in the subscription message into the network message queue 212. Then, the subscription data in the network message queue 212 is processed by the network data processing module 215 to generate feedback information.
[0032] As an example, further, the feedback information generated by each data processing module can be fed back to the corresponding external system through the corresponding communication interface. In contrast to the read event described above, when feeding back the information to each external system, a write event of the event-driven module 209-1 is triggered to send the feedback information to each external system. For example, the feedback information generated by the inter-process data processing module 213, the peripheral data processing module 214, and the network data processing module 215 can be fed back to the perception system 202, the external device 205, and the cloud system 206, respectively, through the inter-process communication interface 204, the peripheral communication interface 207, and the network communication interface 208, respectively, so as to timely obtain the diagnosis information of each system and make corresponding safety countermeasures in time, thereby improving the safety performance of the system.
[0033] Figure 3 is an exemplary schematic diagram showing the received data and the sent data of the inter-system communication according to the embodiments of the present disclosure. As shown in Figure 3 As shown in FIG. 3, for the received data part, at step 301, the data transceiver module first receives messages from clients. The clients can include the perception system, the external device, and the cloud system in the context of the present disclosure. Based on the received messages, at step 302, a read event of the event-driven module in the data transceiver module is triggered to read data from the messages, so as to implement the read event. Then, based on the driving of the read event, at step 303, the data in the messages are read (or stored) into the corresponding message queues, respectively, and at step 304, the data in the message queues are taken out and processed by the corresponding data processing modules to obtain processing results (or feedback information).
[0034] For sending the data part, at step 305, in response to sending the feedback information to the client, a write event of the event-driven module in the data transceiving module is triggered to perform a write event operation on the processing result. Then, at step 306, the processing result is fed back (sent) to the client by the data transceiving module through the corresponding communication interface for operation by the client.
[0035] In one embodiment, the service system of the present disclosure can further comprise a diagnosis service module, and a diagnosis driver module can be arranged at the in-vehicle system. Based on this, the diagnosis driver module can be utilized to establish a message passing channel between the diagnosis service module of the in-vehicle system and the external monitoring system, the cloud system and / or the external device, so as to realize message passing between the diagnosis service module and the external monitoring system, the cloud system and / or the external device. The following will be described in detail in combination with Figure 4 The embodiment is described in detail.
[0036] Figure 4 is an exemplary structural block diagram showing the diagnosis service module and the diagnosis driver module according to the present disclosure. As shown in Figure 4 As shown in the figure, the service system 203 can comprise a diagnosis service module 401, which can be arranged in the in-vehicle system. Further, the in-vehicle system can further be arranged with a diagnosis driver module 402. In one implementation scenario, the diagnosis driver module 402 can comprise a plurality of drivers, such as a GIC driver 403, a MIPI / CSI driver 404 and an I2C driver 405. As further shown in the figure, the MIPI / CSI driver 404 and the I2C driver 405 are connected with a camera peripheral 406. Thus, a message passing channel can be established between the diagnosis service module 401 and the camera peripheral 406 to realize message passing. In this scenario, when a driver needs to report an error, the in-vehicle system can be accessed by calling the diagnosis driver module 402. To realize this access, the present disclosure proposes that the diagnosis driver module 402 communicates with the diagnosis service module 401 by providing a character device, so as to realize message passing between the external system (such as the external device) and the service system.
[0037] In one embodiment, the present disclosure further provides a service system for communicating with a plurality of external systems, and the service system can comprise a data transceiving module, one or more message queues and one or more data processing modules. The foregoing service system will be described in detail below. Figure 5
[0038] Figure 5 is an exemplary structural block diagram showing the service system 500 according to the present disclosure. As shown in Figure 5 As shown in the figure, the service system 500 (i.e., the above-mentioned Figure 2 The service system 203 shown may include a data transceiver module 501 (i.e., the one described above). Figure 2 The diagram shows a data transceiver module 209, one or more message queues 502, and one or more data processing modules 503. In one embodiment, the data transceiver module 501 includes an event-driven module. In one implementation scenario, the data transceiver module 501 can first receive messages from at least one of multiple external systems. Then, in response to receiving a message, it triggers a read event driven by its event-driven module to read data from the message. Based on the read event, the data in the message is read into the corresponding message queues of the multiple message queues.
[0039] As mentioned above, multiple external systems can be, for example, perception systems, external monitoring systems, external devices, and cloud systems, and the received messages can be, for example, operational status messages from external devices and / or operational status messages from the vehicle system. In one application scenario, service system 500 can be deployed within the vehicle system. In this scenario, the perception system can be, for example, an autonomous driving perception system, and the external devices can be, for example, camera peripherals and radar peripherals. The aforementioned external monitoring system can be, for example, a safety MCU.
[0040] In another application scenario, the aforementioned external device can be, for example, a subsystem of the hardware system-on-a-chip (SoC) being diagnosed. An SoC is an integrated circuit with a specific purpose, containing a complete system and all embedded software. In some embodiments, the aforementioned SoC subsystem may include, but is not limited to, a CPU, DSP, eMMC, PCIe, UART, SPI, I2C, PWM, GPIO, PVTC, GDMA, or SMMU. For example, it could also be an AXI_Monitor, DDR, VI_SYSTEM, MM_SYSTEM, or IPU. Furthermore, the aforementioned external device may also include, for example, an external hardware module of the SoC such as a Safety MCU, SerDes, or a Sensor.
[0041] In an implementation scenario, the service system receives messages from the external systems via corresponding communication interfaces (e.g., inter-process, peripheral, and network communication interfaces). Specifically, the data transceiving module can receive a subscription message from the perception system via the inter-process communication interface, where the subscription message is related to subscribing to the diagnostic result of the external device, so as to perform message processing for the subscription message. Then, based on the subscription message, the data transceiving module receives a peripheral message from the external device via the peripheral communication interface, where the peripheral message is related to the diagnostic result of the external device, so as to perform message processing for the peripheral message. Similarly, the data transceiving module receives a subscription message from the cloud system via the network communication interface, where the subscription message is related to subscribing to the diagnostic result of the external device, so as to perform message processing for the subscription message.
[0042] Based on the received messages, a read event is triggered to drive reading of the data in the messages of the external systems into corresponding message queues. In an embodiment, each message queue of the one or more message queues 502 is configured to store the data read by the data transceiving module from the messages correspondingly. As mentioned above, the one or more message queues can include an inter-process message queue, a peripheral message queue, and a network message queue. That is, the inter-process message queue stores the data read by the data transceiving module from the messages received from the perception system correspondingly, the peripheral message queue stores the data read by the data transceiving module from the messages received from the external device correspondingly, and the network message queue stores the data read by the data transceiving module from the messages received from the cloud system correspondingly.
[0043] In an embodiment, the one or more data processing modules 503 can read the data from the corresponding message queues and process the data to implement communication with the external systems. The one or more data processing modules 503 can include an inter-process data processing module, a peripheral data processing module, and a network data processing module. That is, the inter-process data processing module reads the data from the inter-process message queue, the peripheral data processing module reads the data from the peripheral message queue, and the network data processing module reads the data from the network message queue to process the data.
[0044] More specifically, the data transceiving module can be configured to, in response to receiving the subscription message, trigger a read event of reading the subscription data from the subscription message, based on the driving of the read event, read the subscription data into the inter-process message queue, process the subscription data in the inter-process message queue by the inter-process data processing module, so as to at least record the diagnostic service subscribed by the perception system. The data transceiving module can be further configured to, in response to receiving the peripheral message, trigger a read event of reading the peripheral data from the peripheral message, based on the driving of the read event, read the peripheral data in the peripheral message into the peripheral message queue, process the peripheral data in the peripheral message queue by the peripheral data processing module, and generate the feedback message. In addition, the data transceiving module can be further configured to, in response to receiving the subscription message of the cloud system, trigger a read event of reading the subscription data from the subscription message, based on the driving of the read event, read the subscription data into the network message queue, and process the subscription data in the network message queue by the inter-network data processing module.
[0045] As mentioned above, the embodiments of the present disclosure can also feed back information to the external systems. Thus, the data transceiving module can be further configured to receive the feedback message from the peripheral data processing module, and transmit the feedback message to the external systems. Further, the data transceiving module can be further configured to transmit the feedback message to the perception system by the inter-process communication interface, and / or transmit the feedback message to the external monitoring system or the external device by the peripheral communication interface, and transmit the feedback message to the cloud system by the network communication interface.
[0046] In one implementation scenario, the service system can further include a diagnostic service module, and the diagnostic driving module can be configured to establish a message transmission path between the diagnostic service module of the vehicle-mounted system and the external monitoring system, the cloud system and / or the external device, so as to realize the message transmission between the diagnostic service module and the external monitoring system, the cloud system and / or the external device.
[0047] Those skilled in the art can understand that the present disclosure also provides a device including a processor and a memory. Specifically, the memory can store program instructions for inter-system communication, which, when executed by the processor, implement the method steps described in combination with the embodiments of the present disclosure. Figure 1 In addition, since the scheme of the present disclosure can be implemented by computer program instructions, the present disclosure also discloses a computer readable storage medium or computer program product, which stores computer programs / instructions for inter-system communication, so as to implement the method steps described in combination with the embodiments of the present disclosure. Figure 1
[0048] It should be noted that, for the purpose of clarity, the present disclosure describes some methods and embodiments thereof as a series of acts and / or combinations thereof, but those skilled in the art will understand that the present disclosure is not limited to the order of the acts described. Those skilled in the art will understand and appreciate that some steps of the methods can be performed contemporaneously, sequentially, or concurrently, depending on the functionality involved. Further, those skilled in the art will appreciate that embodiments of the present disclosure can comprise various combinations and / or sub-combinations of the described acts, and other acts not mentioned.
[0049] In practical implementation, based on the disclosure and teachings of the present disclosure, those skilled in the art can understand that the embodiments disclosed in the present disclosure can also be implemented in other ways not disclosed herein. For example, as to each module in the aforementioned device or apparatus embodiments, the division thereof is made on the basis of logical functions, and in actual implementation, other division manners can also be made. For another example, a plurality of modules or components can be combined or integrated into another system, or some features or functions of modules or components can be selectively disabled. As to the connection relationship between different modules or components, the connection discussed in the foregoing with reference to the drawings can be direct or indirect coupling between modules or components. In some scenarios, the aforementioned direct or indirect coupling involves a communication connection using an interface, where the communication interface can support electrical, optical, acoustic, magnetic, or other forms of signal transmission.
[0050] In the present disclosure, the modules described as separate components can or can not be physically separate, and the components shown as modules can or can not be physical modules. The aforementioned components or modules can be located in the same place or distributed on multiple systems. In addition, according to actual needs, some or all of the modules can be selected to achieve the purpose of the scheme described in the embodiments of the present disclosure. In addition, in some scenarios, multiple modules in the embodiments of the present disclosure can be integrated into one module or physically exist separately.
[0051] In some implementation scenarios, the above-mentioned modules can be implemented in the form of software program modules. If implemented in the form of software program modules and sold or used as independent products, the modules can be stored in a computer readable memory. Based on this, when the scheme of the present disclosure is embodied in the form of a software product (for example, a computer readable storage medium), the software product can be stored in the memory, which can include a plurality of instructions to make a computer device (for example, a personal computer, a server or a network device, etc.) execute part or all of the steps of the method described in the embodiments of the present disclosure. The aforementioned memory can include, but is not limited to, a variety of media capable of storing program codes, such as a U disk, a flash disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk, etc.
[0052] In some implementation scenarios, the above-mentioned modules can be implemented in the form of software program modules. If implemented in the form of software program modules and sold or used as independent products, the modules can be stored in a computer readable memory. Based on this, when the scheme of the present disclosure is embodied in the form of a software product (for example, a computer readable storage medium), the software product can be stored in the memory, which can include a plurality of instructions to make a computer device (for example, a personal computer, a server or a network device, etc.) execute part or all of the steps of the method described in the embodiments of the present disclosure. The aforementioned memory can include, but is not limited to, a variety of media capable of storing program codes, such as a U disk, a flash disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk, etc.
[0053] While several embodiments of the disclosure have been shown and described herein, it is to be understood that the embodiments are merely exemplary. Numerous changes, substitutions and equivalents can occur to those skilled in the art without departing from the spirit and scope of the disclosure. It should be understood that various alternatives to the embodiments of the disclosure described herein can be employed in practicing the disclosure. It is intended that the following claims define the scope of the disclosure and that methods equivalent to those shown and described herein can be utilized without departing from the spirit and scope of the disclosure.
Claims
1. A method for inter-system communication, wherein the multiple systems include a service system performing the method and multiple external systems communicatively connected with the service system respectively, the method comprising: receiving a message from at least one of the multiple external systems; in response to receiving the message, triggering a read event of reading data from the message; based on driving of the read event, reading the data in the message into a corresponding message queue of multiple message queues; and processing the data with a data processing module associated with the corresponding message queue to implement communication with the external system; wherein the external systems include a perception system communicatively connected with the service system through an inter-process communication interface and an external device communicatively connected with the service system through a peripheral communication interface, the method comprising: receiving, with the inter-process communication interface, a subscription message from the perception system about subscribing to diagnostic results of the external device to process the subscription message; and based on the subscription message, receiving, with the peripheral communication interface, a peripheral message from the external device about diagnostic results of the external device to perform message processing for the peripheral message. 2.The method of claim 1, wherein the message queues include inter-process message queues and the data processing modules include inter-process data processing modules, wherein processing the subscription message comprises: in response to receiving the subscription message, triggering a read event of reading subscription data from the subscription message; based on driving of the read event, reading the subscription data into the inter-process message queues; and processing the subscription data in the inter-process message queues with the inter-process data processing modules to at least record diagnostic services subscribed by the perception system. 3.The method of claim 1, wherein the message queues include peripheral message queues and the data processing modules include peripheral data processing modules, wherein performing message processing for the peripheral message comprises: in response to receiving the peripheral message, triggering a read event of reading peripheral data from the peripheral message; based on driving of the read event, reading the peripheral data in the peripheral message into the peripheral message queues; processing the peripheral data in the peripheral message queues with the peripheral data processing modules to generate a feedback message; and sending the feedback message to the external system. 4.The method of claim 3, wherein the external system further includes an external monitoring system for monitoring the service system, wherein sending the feedback message to the external system comprises: sending the feedback message to the perception system with the inter-process communication interface; and / or sending the feedback message to the external monitoring system with the peripheral communication interface. 5.The method of claim 3, wherein the external system further includes a cloud system communicatively connected with the service system through a network communication interface, the method further comprising: sending the feedback message to the cloud system with the network communication interface.
6. The method of claim 5, wherein the service system and the perception system are comprised in an in-vehicle system, and the service system comprises a diagnostic service module, the in-vehicle system is disposed with a diagnostic drive module, the method further comprises: establishing, with the diagnostic drive module, a message passing path between the diagnostic service module of the in-vehicle system and an external monitoring system, a cloud system, and / or an external device, so as to enable message passing between the diagnostic service module and the external monitoring system, the cloud system, and / or the external device.
7. A service system for communicating with a plurality of external systems, comprising: a data transceiver module configured to: receive a message from at least one of the plurality of external systems; in response to receiving the message, trigger a read event to read data from the message; based on a drive of the read event, read the data in the message into a corresponding message queue of a plurality of message queues; one or more message queues, wherein each message queue is configured to store the data read from a message by the data transceiver module correspondingly; and one or more data processing modules configured to: read data from a corresponding message queue; and process the data so as to enable communication with the external systems; wherein the external systems comprise a perception system communicatively connected with the service system through an inter-process communication interface and an external device communicatively connected with the service system through a peripheral communication interface, wherein the data transceiver module is configured to: receive, from the perception system through the inter-process communication interface, a subscription message regarding subscribing to diagnostic results of the external device, so as to perform message processing for the subscription message; and receive, from the external device through the peripheral communication interface, a peripheral message regarding diagnostic results of the external device based on the subscription message, so as to perform message processing for the peripheral message.
8. The service system of claim 7, wherein the message queues comprise inter-process message queues and the data processing modules comprise inter-process data processing modules, wherein performing message processing for the subscription message comprises: the data transceiver module is configured to: in response to receiving the subscription message, trigger a read event to read subscription data from the subscription message; based on a drive of the read event, read the subscription data into the inter-process message queues; and the inter-process data processing modules are configured to process the subscription data so as to record at least diagnostic services subscribed by the perception system.
9. The service system of claim 7, wherein the message queues comprise peripheral message queues and the data processing modules comprise peripheral data processing modules, wherein performing message processing for the peripheral message comprises: the data transceiver module is configured to: in response to receiving the peripheral message, trigger a read event to read peripheral data from the peripheral message; based on a drive of the read event, read the peripheral data in the peripheral message into the peripheral message queues; and the peripheral data processing modules are configured to process the peripheral data so as to record at least diagnostic results of the external device. The peripheral data processing module is configured to process peripheral data in the peripheral message to generate a feedback message; and The data transceiving module is configured to: receive the feedback message from the peripheral data processing module; and send the feedback message to the external system.
10. The service system of claim 9, wherein the external system further comprises an external monitoring system for monitoring the service system, wherein in sending the feedback message to the external system, the data transceiving module is configured to: send the feedback message to the perception system via the inter-process communication interface; and / or send the feedback message to the external monitoring system via the peripheral communication interface.
11. The service system of claim 9, wherein the external system further comprises a cloud system communicatively connected with the service system via a network communication interface, wherein in sending the feedback message to the external system, the data transceiving module is configured to: send the feedback message to the cloud system via the network communication interface.
12. The service system of claim 11, wherein the service system and perception system are comprised in a vehicle system, and the service system comprises a diagnostic service module, the vehicle system is disposed with a diagnostic drive module, and the diagnostic drive module is configured to: establish a message passing path between the diagnostic service module of the vehicle system and an external monitoring system, a cloud system, and / or an external device, so as to enable message passing between the diagnostic service module and the external monitoring system, the cloud system, and / or the external device.
13. A device for inter-system communication, wherein the multiple systems comprise a service system and multiple external systems communicatively connected with the service system respectively, the device comprising: a processor; and a memory having stored therein program instructions for inter-system communication, which when executed by the processor, cause the device to implement the method of any one of claims 1-6.
14. A computer readable storage medium for inter-system communication, wherein the multiple systems comprise a service system and multiple external systems communicatively connected with the service system respectively, the computer readable storage medium having stored therein program instructions for inter-system communication, which when executed by a processor, cause the implementation of the method of any one of claims 1-6.
Citation Information
Patent Citations
Open and safe monitoring system for autonomous driving platform
CN112238862A
Method, system, and computer program product for dynamic communication routing
CN114845351A