A vehicle-mounted surveying and mapping system and method with a double-decoupling architecture, and a vehicle-mounted computer
The vehicle-mounted surveying system, with its dual decoupling architecture, utilizes standardized data interfaces and IPC mechanisms to isolate device drivers from business logic. This solves the problems of high maintenance costs and poor scalability of traditional surveying vehicle software, enabling plug-and-play functionality and decoupling of functional modules, thus meeting the flexibility requirements of modern surveying operations.
Patent Information
- Application Number
- CN202511554172.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-29
- Publication Date
- 2026-02-06
- Estimated Expiration
- 2045-10-29
AI Technical Summary
Traditional surveying vehicle software uses a monolithic architecture, which results in deep coupling between the equipment and the business, high maintenance costs, difficulty in independent updates and expansion, and inability to meet the flexibility requirements of modern surveying operations.
A dual decoupled architecture is adopted. Through the design of the vehicle-mounted mapping plug-in layer, microservice layer and core service plug-in, standardized data interfaces and IPC mechanisms are used to achieve physical isolation between device drivers and business logic and decoupling of functional modules, thus building a system architecture that combines microservices and plug-in architecture.
It improves the system's flexibility and maintainability, enables "plug and play" of equipment, reduces the probability of errors, supports seamless integration of traditional and new surveying and mapping equipment, and meets the flexibility requirements of modern surveying and mapping operations.
Smart Images

Figure CN121048592B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of surveying and mapping, and in particular to a vehicle-mounted surveying and mapping system and method with a double-decoupling architecture and a vehicle-mounted computer. BACKGROUND
[0002] A surveying vehicle belongs to a special operating vehicle in the field of geodetic surveying and is used for geodetic surveying, topographic surveying and the like. Its application scope covers multiple fields such as military and civilian use, and is usually equipped with satellite surveying systems, inertial geodetic systems, total station optical surveying and mapping equipment and professional surveying and mapping software and the like. A surveying and mapping support system, as the core software of the surveying vehicle, is responsible for integrated management of surveying and mapping equipment such as inertial navigation, satellite navigation equipment and total station instruments, and realizes functions such as data acquisition, processing and calculation, result generation and information reporting and the like.
[0003] The traditional surveying vehicle software generally adopts a monolithic architecture design, highly integrating functions in a single application. This design architecture has multiple inherent defects: first, the equipment and business are deeply coupled, and the equipment protocol analysis logic and the core business logic are mixed, resulting in the need to modify a large amount of business code when replacing equipment, with extremely high maintenance costs; second, the business functions are tightly coupled, and the functional modules are dependent on each other, making it difficult to independently update and expand, and making it difficult to meet the requirements of efficient, flexible and reliable modern surveying and mapping operations. SUMMARY
[0004] The present application provides a vehicle-mounted surveying and mapping system and method with a double-decoupling architecture and a vehicle-mounted computer, to solve the problems of deep coupling of equipment drivers and business logic and poor system expandability of the monolithic architecture of the existing vehicle-mounted surveying and mapping system of the surveying vehicle.
[0005] According to an aspect of the present application, a vehicle-mounted surveying and mapping system with a double-decoupling architecture is provided, comprising: a vehicle-mounted surveying and mapping plug-in layer, a vehicle-mounted surveying and mapping micro-service layer and a core service plug-in;
[0006] The vehicle-mounted surveying and mapping plug-in layer and the core service plug-in are communicatively connected through a plurality of standardized data interfaces; the vehicle-mounted surveying and mapping micro-service layer and the core service plug-in communicate through an IPC (Inter-Process Communication) mechanism; and the vehicle-mounted surveying and mapping micro-service layer is communicatively connected with the surveying and mapping equipment;
[0007] The vehicle-mounted surveying and mapping micro-service layer is configured to acquire current surveying and mapping data uploaded by the surveying and mapping equipment and transmit the current surveying and mapping data to the core service plug-in through the IPC mechanism;
[0008] The core service plug-in is configured to generate a current standardized data frame based on the current surveying and mapping data and a preset data standardization rule, and send the current standardized data frame to a target surveying and mapping plug-in of the vehicle-mounted surveying and mapping plug-in layer through a standardized data interface matching the current surveying and mapping data.
[0009] According to another aspect of the present application, there is provided a vehicle-mounted mapping method of a double-decoupling architecture, executed by the core service plug-in in any embodiment of the present application, comprising:
[0010] Based on the current mapping data and the preset data standardization rule, a current standardization data frame is generated, and the current standardization data frame is sent to the target mapping plug-in of the vehicle-mounted mapping plug-in layer through the standardization data interface matched with the current mapping data.
[0011] According to another aspect of the present application, there is provided a vehicle-mounted computer, comprising: the vehicle-mounted mapping plug-in layer, the vehicle-mounted mapping micro-service layer and the core service plug-in in any embodiment of the present application are deployed.
[0012] According to another aspect of the present application, there is provided a computer readable storage medium, which stores computer instructions for causing a processor to implement the vehicle-mounted mapping method of the double-decoupling architecture according to any embodiment of the present application when executed.
[0013] According to another aspect of the present application, there is provided a computer program product, comprising a computer program for implementing the vehicle-mounted mapping method of the double-decoupling architecture according to any embodiment of the present application when executed by a processor.
[0014] The technical scheme of the embodiment of the present application forms the system architecture of the vehicle-mounted mapping system through the vehicle-mounted mapping plug-in layer, the vehicle-mounted mapping micro-service layer and the core service plug-in. After the vehicle-mounted mapping micro-service layer obtains the current mapping data uploaded by the mapping device, the current mapping data is transmitted to the core service plug-in through the IPC mechanism, and then the core service plug-in generates a current standardization data frame based on the current mapping data and the preset data standardization rule, and sends the current standardization data frame to the target mapping plug-in of the vehicle-mounted mapping plug-in layer through the standardization data interface matched with the current mapping data. The present scheme constructs a double-decoupling resource optimization architecture combining micro-service and plug-in, physically isolates the device driver and the business logic through micro-service, and realizes the decoupling of functional modules through plug-in and the standardization data interface. The flexibility and maintainability of the system are significantly improved. Based on the standardization data interface, various vehicle-mounted mapping devices from traditional devices to new sensors can be seamlessly integrated, truly realizing the "plug and play" of the devices, and the upper-layer business plug-in does not need to care about the differences in the bottom-layer hardware protocols, only needs to call the corresponding standardization data interface, reduces the repeated development, reduces the error probability, solves the problems of the deep coupling between the device driver and the business logic and the poor system expansibility of the existing vehicle-mounted mapping system of the measurement vehicle, realizes the decoupling of the mapping device and the business and the decoupling between functions, and meets the flexibility needs of modern mapping operations.
[0015] It is to be understood that the embodiments described herein are merely exemplary of the application and that a myriad of modifications, both as to the nature and number of elements within the execution of the application and as to the modes of execution thereof, can be made by those skilled in the art, without expressly quantifying the application and without departing from the scope of the application. BRIEF DESCRIPTION OF DRAWINGS
[0016] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings needed in the embodiments description. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without any creative effort based on these drawings.
[0017] Figure 1 A timing diagram of an interface proxy mechanism provided for the first embodiment of the present application;
[0018] Figure 2 A timing diagram of an event notification mechanism provided for the second embodiment of the present application;
[0019] Figure 3 A system architecture schematic diagram of a vehicle-mounted surveying and mapping system provided for the fourth embodiment of the present application;
[0020] Figure 4 A structural schematic diagram of a vehicle-mounted computer which can be used to implement the embodiments of the present application is shown. DETAILED DESCRIPTION
[0021] In order to make the technical personnel in the art better understand the present application, the following will combine the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, not all. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without any creative effort should be within the scope of the present application.
[0022] It should be noted that the terms "current", "target" and the like in the specification and claims of the present application and the above drawings are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device including a series of steps or units does not necessarily limit to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0023] Embodiment one
[0024] The embodiment one of the present application provides a vehicle-mounted surveying and mapping system with a double-decoupling architecture, which comprises a vehicle-mounted surveying and mapping plug-in layer, a vehicle-mounted surveying and mapping micro-service layer and a core service plug-in; the vehicle-mounted surveying and mapping plug-in layer and the core service plug-in are connected in communication through a plurality of standardized data interfaces; the vehicle-mounted surveying and mapping micro-service layer and the core service plug-in are connected in communication through an IPC mechanism; the vehicle-mounted surveying and mapping micro-service layer is connected in communication with surveying and mapping equipment; the vehicle-mounted surveying and mapping micro-service layer is configured to acquire current surveying and mapping data uploaded by the surveying and mapping equipment and transmit the current surveying and mapping data to the core service plug-in through the IPC mechanism; and the core service plug-in is configured to generate a current standardized data frame based on the current surveying and mapping data and a preset data standardization rule, and send the current standardized data frame to a target surveying and mapping plug-in of the vehicle-mounted surveying and mapping plug-in layer through a standardized data interface matched with the current surveying and mapping data.
[0025] The vehicle-mounted surveying and mapping plug-in layer can be a functional plug-in layer of the vehicle-mounted surveying and mapping system with the double-decoupling architecture. The vehicle-mounted surveying and mapping micro-service layer can be a micro-service layer of the vehicle-mounted surveying and mapping system with the double-decoupling architecture. The core service plug-in can be a linking layer of the vehicle-mounted surveying and mapping plug-in layer and the vehicle-mounted surveying and mapping micro-service layer. The vehicle-mounted surveying and mapping plug-in layer and the core service plug-in constitute a plug-in layer.
[0026] For example, the vehicle-mounted surveying and mapping plug-in layer is composed of a plurality of application functional plug-ins encapsulated in the form of dynamic link libraries. The vehicle-mounted surveying and mapping plug-in layer can include a plurality of plug-ins, such as an inertial navigation management plug-in, a satellite navigation equipment management plug-in, a total station management plug-in, a surveying and mapping management plug-in, and an achievement management plug-in, and the like, which are independent application functional plug-ins encapsulated by each business function. The vehicle-mounted surveying and mapping micro-service layer is composed of a plurality of surveying and mapping equipment data processing micro-services implemented by independent processes. Each micro-service is configured to establish an exclusive communication connection with a single type of vehicle-mounted surveying and mapping equipment, independently perform resource-intensive tasks such as bottom layer data analysis, decoding, verification, processing, and recording of a special communication protocol for the surveying and mapping equipment, and provide device-independent standardized data conforming to the contract of the standardized data interface to the upper layer through the inter-process communication mechanism, i.e., to reduce the resource burden of the host process and to achieve fault isolation by using the process isolation feature provided by the operating system, and to decouple the device driver from the business layer. The vehicle-mounted surveying and mapping micro-service layer can include a plurality of micro-services, such as an inertial navigation equipment micro-service, a satellite navigation equipment micro-service, and a total station equipment micro-service, and the like, which are micro-services configured for each surveying and mapping equipment.
[0027] Optionally, an interface agent in the form of an in-process loaded dynamic link library is provided for each vehicle-mounted mapping microservice, the interface agent implements a standardized data interface and forwards all method calls thereof to the vehicle-mounted mapping microservice in a corresponding independent process through an inter-process communication mechanism (such as a local socket or shared memory), and returns the processing result returned by the vehicle-mounted mapping microservice to the caller after deserialization; wherein the interface agent completely hides the existence and implementation details of the inter-process communication from the vehicle-mounted mapping plug-in layer, making it like calling a local interface. The timing relationship of the interface agent mechanism can be seen from Figure 1 .
[0028] The current mapping data can be data collected by a mapping device and uploaded to the corresponding vehicle-mounted mapping microservice. The preset data standardization rule can be used to encapsulate the current mapping data into a unified data frame format. The current standardized data frame can be a standardized data frame processed from the current mapping data. The standardized data interface can be a data transmission interface between the vehicle-mounted mapping plug-in and the core service plug-in. Among them, the mapping management plug-in as a comprehensive function plug-in can have the same standardized data interface as the inertial navigation management plug-in, satellite navigation device management plug-in and total station management plug-in. The target mapping plug-in can be a related plug-in that relies on the current mapping data sent by the mapping device for data processing, such as the inertial navigation management plug-in corresponding to the inertial navigation and other plug-ins (such as the mapping management plug-in) relying on this data. The mapping device belongs to the hardware layer of the vehicle-mounted mapping system, and can include inertial navigation devices, satellite navigation devices, total station devices, etc.
[0029] In the embodiment of the application, the system architecture of the vehicle-mounted mapping system includes a vehicle-mounted mapping plug-in layer, a vehicle-mounted mapping microservice layer and a core service plug-in. The core service plug-in and each vehicle-mounted mapping plug-in in the vehicle-mounted mapping plug-in layer communicate through a standardized data interface, and the vehicle-mounted mapping microservice in the vehicle-mounted mapping microservice layer communicates with the core service plug-in through an IPC mechanism. Each mapping device of the hardware layer of the vehicle-mounted mapping system sends the collected current mapping data to the corresponding vehicle-mounted mapping microservice in the vehicle-mounted mapping microservice layer, and then each vehicle-mounted mapping microservice packages the current mapping data received by itself according to the pre-set standardized data contract and transmits it to the core service plug-in through the IPC mechanism. The core service plug-in pre-processes the current mapping data transmitted by each vehicle-mounted mapping microservice according to the preset data standardization rule, generates the corresponding current standardized data frame, and sends each current standardized data frame to the target mapping plug-in of the vehicle-mounted mapping plug-in layer based on the standardized data interface matching the corresponding current mapping data (i.e. the interface of the vehicle-mounted mapping plug-in corresponding to the mapping device collecting the current mapping data), so that the microservice and the plug-in corresponding to the same mapping device can successfully communicate.
[0030] The technical scheme of the embodiment of the present application comprises a vehicle-mounted surveying and mapping plug-in layer, a vehicle-mounted surveying and mapping micro-service layer and a core service plug-in to form a system architecture of the vehicle-mounted surveying and mapping system. After the vehicle-mounted surveying and mapping micro-service layer obtains current surveying and mapping data uploaded by a surveying and mapping device, the current surveying and mapping data is transmitted to the core service plug-in through an IPC mechanism. Then, the core service plug-in generates a current standardized data frame based on the current surveying and mapping data and a preset data standardization rule, and sends the current standardized data frame to a target surveying and mapping plug-in of the vehicle-mounted surveying and mapping plug-in layer through a standardized data interface matched with the current surveying and mapping data. The present scheme builds a double-layer decoupling resource optimization architecture combining micro-service and plug-in. The device driver and the business logic are physically isolated through micro-service, and the function modules are decoupled through plug-in and standardized data interface. The system flexibility and maintainability are significantly improved. Based on the standardized data interface, various vehicle-mounted surveying and mapping devices from traditional devices to new sensors can be seamlessly integrated. Real-time "plug and play" of the devices is truly realized. The upper-layer business plug-in does not need to care about the differences in the bottom-layer hardware protocols, but only needs to call the corresponding standardized data interface, thereby reducing repeated development and lowering the error probability. The problems of deep coupling between the device driver and the business logic and poor system expansibility existing in the existing monolithic architecture of the surveying vehicle-mounted surveying and mapping system are solved. The surveying and mapping device and the business are decoupled, and the functions are decoupled, thereby meeting the flexibility needs of modern surveying and mapping operations.
[0031] Embodiment two
[0032] The present embodiment provides an optional implementation of the vehicle-mounted surveying and mapping system with double-decoupling architecture, and the specific content is as follows.
[0033] In an optional embodiment of the present application, the core service plug-in can be used to monitor the process running state of the vehicle-mounted surveying and mapping micro-service in the vehicle-mounted surveying and mapping micro-service layer. When a process abnormal micro-service is detected, the state of the process abnormal micro-service is marked as unavailable, and the call to the process abnormal micro-service is intercepted.
[0034] The process running state can be used to represent the process health state of the vehicle-mounted surveying and mapping micro-service. The process abnormal micro-service can be a vehicle-mounted surveying and mapping micro-service that has a communication abnormality with the core service plug-in.
[0035] In the embodiment of the present application, the core service plug-in can monitor the process running state of the vehicle-mounted surveying and mapping micro-service in the vehicle-mounted surveying and mapping micro-service layer, and determine whether there is a process abnormal micro-service, i.e., a vehicle-mounted surveying and mapping micro-service with an abnormal running state, according to the process running state of the vehicle-mounted surveying and mapping micro-service. If a process abnormal micro-service is detected, the state of the process abnormal micro-service is marked as unavailable, and the call to the process abnormal micro-service by the outside world is intercepted.
[0036] In an optional embodiment of the present application, the core service plug-in can be used to obtain event messages sent by the vehicle mapping microservice in the vehicle mapping microservice layer; and trigger the callback function of the vehicle mapping plug-in that subscribes to the target topic according to the event message and the event bus.
[0037] The event bus is an asynchronous communication mechanism in the microservice architecture. The target topic can be a pre-defined topic, such as an instruction type message topic, a data insertion topic, and an operation execution result topic. The event bus serves as a dedicated channel for the vehicle mapping microservice to perform asynchronous event pushing to the vehicle mapping plug-in layer, and makes up for the deficiency of the request-response mode in real-time notification. The vehicle mapping microservice is configured to generate and publish event messages when a specific change occurs in the internal state (such as receiving a device instruction or data exceeding the limit). The vehicle mapping plug-in can subscribe to a specific event type and be asynchronously triggered through a callback function.
[0038] In an embodiment of the present application, the vehicle mapping microservice in the vehicle mapping microservice layer can send event messages to the target topic of the event bus in the core service plug-in, that is, real-time data objects (such as event types, event data, and metadata) have occurred in the system. If the vehicle mapping plug-in in the vehicle mapping plug-in layer has subscribed to the target topic, the callback function registered by the vehicle mapping plug-in will be asynchronously triggered by the event bus, so as to immediately start the post-processing of the event.
[0039] The core service plug-in serves as the communication hub of the system and is configured to: 1) act as an interface agent factory to create and manage all interface agent instances corresponding to the vehicle mapping microservice in a singleton mode, ensuring resource reuse; 2) host and run a global event bus instance; 3) implement a fault-tolerant processing mechanism to continuously monitor the health status of all microservices, mark process abnormal microservices as unavailable, and intercept all call requests to them, directly returning a standard error state to the caller and publishing a service state change event; the plug-in registers the services it implements in the global service registry maintained by the component integration management module.
[0040] In an optional embodiment of the present application, the core service plug-in can also be used to select an access configuration data according to an interface when the type of the mapping device corresponding to the current mapping data already exists.
[0041] The interface selection access configuration data can be used to describe the interface selection rules of multiple same type mapping devices.
[0042] Specifically, in addition to the comprehensive function plug-ins such as the surveying and mapping management plug-in, each vehicle-mounted surveying and mapping plug-in interacts with the core service plug-in through a standardized data interface. When there are multiple surveying and mapping devices of the same type, in order to facilitate the management of the plug-ins, only one plug-in of the surveying and mapping device of the type is retained in the vehicle-mounted surveying and mapping system. If the type of the surveying and mapping device corresponding to the current surveying and mapping data already exists, the core service plug-in selects the access configuration data according to the interface, selects the type of the surveying and mapping device corresponding to the current surveying and mapping data from the existing standardized data interface, and thus selects the standardized data interface adapted to the type of the surveying and mapping device as the standardized data interface adapted to the current surveying and mapping data, so as to transmit the current standardized data frame of the current surveying and mapping data through the standardized data interface.
[0043] For example, it is assumed that the inertial navigation management plug-in A is configured corresponding to the inertial navigation device a, and when the inertial navigation device b is added in the surveying and mapping device, but the newly added surveying and mapping device belongs to the inertial navigation type, which is an existing surveying and mapping device type. The core service plug-in can transmit the standardized data frame of the surveying and mapping data collected by the inertial navigation device b through the standardized data interface of the inertial navigation management plug-in A according to the user selection, or when the device priority of the inertial navigation device b is higher than the device priority of the inertial navigation device a, transmit the standardized data frame of the surveying and mapping data collected by the inertial navigation device b through the standardized data interface of the inertial navigation management plug-in A.
[0044] In an optional embodiment of the present application, the vehicle-mounted surveying and mapping system with double decoupling architecture can further include a basic layer and a management layer; the basic layer stores common function modules; the management layer is used to load newly added vehicle-mounted surveying and mapping single replacement data and / or newly added vehicle-mounted surveying and mapping double replacement data; the core service plug-in is used to update the vehicle-mounted surveying and mapping micro service of the vehicle-mounted surveying and mapping micro service layer according to the newly added vehicle-mounted surveying and mapping single replacement data, and / or update the vehicle-mounted surveying and mapping micro service of the vehicle-mounted surveying and mapping micro service layer and the vehicle-mounted surveying and mapping plug-in of the vehicle-mounted surveying and mapping plug-in layer according to the newly added vehicle-mounted surveying and mapping double replacement data, and create a new standardized data interface based on the vehicle-mounted surveying and mapping micro service; the vehicle-mounted surveying and mapping micro service layer can further include a batch data processing micro service.
[0045] The basic layer can be a layer that provides basic function interfaces for the vehicle-mounted surveying and mapping plug-in layer and the vehicle-mounted surveying and mapping micro service layer. The common function modules can be common basic function modules in the vehicle-mounted surveying and mapping plug-in layer and the vehicle-mounted surveying and mapping micro service layer, such as an angle conversion module, a data validity judgment module, a coordinate conversion module, a common control module, and an appearance style control module. The management layer can be used for component loading, unloading, and state monitoring of the vehicle-mounted surveying and mapping plug-in layer and the vehicle-mounted surveying and mapping micro service layer. The newly added vehicle-mounted surveying and mapping single replacement data can be used to instruct the core service plug-in to replace the vehicle-mounted surveying and mapping micro service of the vehicle-mounted surveying and mapping micro service layer. The newly added vehicle-mounted surveying and mapping double replacement data instructs the core service plug-in to replace the vehicle-mounted surveying and mapping micro service of the vehicle-mounted surveying and mapping micro service layer and the vehicle-mounted surveying and mapping plug-in of the vehicle-mounted surveying and mapping plug-in layer.
[0046] The batch data processing microservice can be a microservice for virtualization of time-consuming operations in the vehicle mapping system. The batch data processing microservice is a service abstracted from a business such as geographic information processing and batch result processing that consumes a large amount of central processing unit. The batch data processing microservice is in a similar form as the vehicle mapping microservice, and separates a data processing task that consumes a large amount of central processing unit and memory resource from the plug-in host process and allocates the data processing task to an independent microservice process, to mainly solve the problem of resource consumption concentrated in the host process.
[0047] The batch data processing microservice runs in an independent process, receives an asynchronous processing command sent by the vehicle mapping plug-in through an interface agent mechanism, parses and executes a batch data processing operation specified by the command, establishes a data processing queue, and sequentially processes time-consuming operations. During the processing, the batch data processing microservice exclusively consumes computing resources, and after the processing is completed, the corresponding vehicle mapping plug-in is notified through an event notification mechanism. Exemplarily, the batch data processing operation can include batch storage of mapping result data, large-scale data migration and cross-format conversion, geographic information data retrieval and batch conversion, and optimal path calculation. The batch data processing microservice can completely solve the problem of system resource occupation, decouple the resource occupation process and the plug-in process, and optimize the resources. The timing relationship of the event notification mechanism can be referred to Figure 2 .
[0048] In the embodiment of the application, the vehicle mapping system can further include a basic layer and a management layer, that is, common functional modules in the vehicle mapping plug-in layer and the vehicle mapping microservice layer are extracted to the basic layer, and the basic layer provides basic function interfaces for the vehicle mapping plug-in layer and the vehicle mapping microservice layer. The management layer solves the loading, unloading and state monitoring of the vehicle mapping plug-in layer and the vehicle mapping microservice layer, and can also load newly added vehicle mapping single replacement data and / or newly added vehicle mapping double replacement data written by a user, and send the newly added vehicle mapping single replacement data and / or the newly added vehicle mapping double replacement data to the core service plug-in. The core service plug-in can update the vehicle mapping microservice in the vehicle mapping microservice layer according to the newly added vehicle mapping single replacement data, and / or update the vehicle mapping microservice in the vehicle mapping microservice layer and the vehicle mapping plug-in in the vehicle mapping plug-in layer according to the newly added vehicle mapping double replacement data, and create a new standardized data interface based on the vehicle mapping microservice.
[0049] For example, if the new surveying device has the same basic operation process (providing information and control mode) as the original surveying device, only the device interface protocol and algorithm processing change, only the corresponding vehicle-mounted surveying microservice can be replaced, and all upper-layer business functions do not need to be modified. The replacement process is as follows: first, stop the vehicle-mounted surveying microservice, then modify the device processing microservice code, and correspondingly adjust the protocol analysis and algorithm processing of the new surveying device, and the upper-layer vehicle-mounted surveying plug-in still follows the unchanged standard data interface data contract, further deploy the modified vehicle-mounted surveying microservice, and start the vehicle-mounted surveying microservice to realize device change. For example, the internal analysis algorithm of the total station service is optimized, but the protocol and operation interface are unchanged. A new microservice Leica_Service_v2.exe is developed, which still follows the standard data interface data contract of the total station device in the IPC communication protocol with the core service plug-in. After the core service plug-in receives the data, it still uses the original total station IDeviceDataService interface to provide data to the upper-layer plug-in. After replacement, the total station management plug-in and all other plug-ins are not aware.
[0050] When device replacement leads to changes in its monitoring and operation mode (such as replacing a surveying device whose working principle is completely different from the previous one), the "vehicle-mounted surveying microservice" and its dedicated "vehicle-mounted surveying plug-in" can be replaced at the same time to form a completely new "device function unit". Other vehicle-mounted surveying plug-ins (such as surveying solution and result management) are not affected because they only rely on standardized data interfaces and can still work normally. The replacement process is as follows: first, update the vehicle-mounted surveying microservice according to the above-mentioned change process, thereby relying on the "plug-in" business function decoupling mechanism and dynamic loading mechanism to unload the corresponding original vehicle-mounted surveying plug-in, develop a new device management plug-in, communicate with the vehicle-mounted surveying microservice through the standardized data interface provided by the core service plug-in, further load the new vehicle-mounted surveying plug-in, and thereby realize complete replacement of the entire "device function unit". For example, replacing a NovAtel satellite navigation device with a completely new Trimble satellite navigation device requires developing a new device function unit, including: Trimble satellite navigation device management microservice Trimble_GPS_Service.exe and satellite navigation device management plug-in Trimble_GPS_Manager.dll (providing a special configuration UI). After replacing this unit, because the core service plug-in still provides the same getLatestData() method (returning standard fields such as latitude, longitude, and altitude), the core business plug-ins such as surveying management and result management can work seamlessly without any modification.
[0051] In an optional embodiment of the present application, the current standardized data frame can include: a frame header, a surveying and mapping device type, a surveying and mapping device identity number, a surveying and mapping device name, a manufacturer, a timestamp, a data payload, and a check code.
[0052] The surveying and mapping device identity number is an identity number of the surveying and mapping device, and is used to distinguish different surveying and mapping devices.
[0053] In an optional embodiment of the present application, when the surveying and mapping device type is an inertial navigation device, the data payload can include a working state, a state time, a working time, a fault code, a latitude and longitude, an azimuth angle, an inclination angle, a speed, and a mileage; and when the surveying and mapping device type is a satellite navigation device, the data payload includes a working state, a fault code, a latitude and longitude, an altitude, and a precision factor.
[0054] The vehicle-mounted surveying and mapping system in the embodiment can support the introduction of a new type of vehicle-mounted surveying and mapping device (such as an optical and electrical device, an acoustic device, etc.). The extension process follows the same contractual principle as the replacement of the device, and only a microservice that has implemented the IDeviceDataService interface and a dedicated management plug-in (optional) need to be developed for it, and the original core business logic does not need to be changed.
[0055] 1) Accessing multiple same types of vehicle-mounted surveying and mapping devices: the "core service plug-in" as a middleware between microservices and upper plug-ins allows multiple vehicle-mounted surveying and mapping microservices to access the vehicle-mounted surveying and mapping plug-in layer, which is uniformly managed and scheduled by the core service plug-in. Therefore, the vehicle-mounted surveying and mapping system based on the present application can simultaneously access multiple same types of vehicle-mounted surveying and mapping microservices, and the core service plug-in controls the access of a certain vehicle-mounted surveying and mapping microservice into the vehicle-mounted surveying and mapping system according to the default priority or according to the user selection, to realize seamless switching of multiple sensors. 2) Introducing a new type of vehicle-mounted surveying and mapping device: the extension process follows the same contractual principle as the replacement of the device, and only a microservice that follows the standardized data interface contract and a dedicated management plug-in (optional) that calls the IDeviceDataService interface of the core service plug-in need to be developed for it, and the original core business logic does not need to be changed.
[0056] Embodiment Three
[0057] The vehicle-mounted surveying and mapping method provided in Embodiment Three of the present application has a double-decoupling architecture, and is executed by a core service plug-in, and includes: generating a current standardized data frame based on the current surveying and mapping data and a preset data standardization rule, and sending the current standardized data frame to a target surveying and mapping plug-in of the vehicle-mounted surveying and mapping plug-in layer through a standardized data interface matched with the current surveying and mapping data.
[0058] Optionally, the vehicle-mounted surveying and mapping method further comprises: monitoring process running states of vehicle-mounted surveying and mapping microservices in the vehicle-mounted surveying and mapping microservice layer; and marking a state of an abnormal process microservice as unavailable and intercepting a call to the abnormal process microservice when the abnormal process microservice is detected.
[0059] Optionally, the vehicle-mounted surveying and mapping method further comprises: obtaining an event message sent by a vehicle-mounted surveying and mapping microservice in the vehicle-mounted surveying and mapping microservice layer; and triggering a callback function of a vehicle-mounted surveying and mapping plug-in that subscribes to a target topic according to the event message and an event bus.
[0060] Optionally, before the current standardized data frame is sent to a target surveying and mapping plug-in in the vehicle-mounted surveying and mapping plug-in layer through a standardized data interface matched with the current surveying and mapping data, the method further comprises: when a surveying and mapping device type corresponding to the current surveying and mapping data already exists, selecting a standardized data interface that is suitable for the current surveying and mapping data from the existing standardized data interfaces according to interface selection access configuration data.
[0061] Optionally, the vehicle-mounted surveying and mapping method further comprises: updating vehicle-mounted surveying and mapping microservices in the vehicle-mounted surveying and mapping microservice layer and vehicle-mounted surveying and mapping plug-ins in the vehicle-mounted surveying and mapping plug-in layer according to the newly added vehicle-mounted surveying and mapping dual replacement data, and creating a new standardized data interface based on the vehicle-mounted surveying and mapping microservices.
[0062] Optionally, the current standardized data frame comprises: a frame header, a surveying and mapping device type, a surveying and mapping device identity number, a surveying and mapping device name, a manufacturer, a timestamp, data payload, and a check code.
[0063] Optionally, when the surveying and mapping device type is inertial navigation, the data payload comprises a working state, a state time, a working time, a fault code, a longitude and latitude, an azimuth angle, an inclination angle, a speed, and a mileage; and when the surveying and mapping device type is a satellite navigation device, the data payload comprises a working state, a fault code, a longitude and latitude, an altitude, and a precision factor.
[0064] Embodiment Four
[0065] The embodiment of the application provides a vehicle-mounted computer, which is deployed with a vehicle-mounted surveying and mapping plug-in layer, a vehicle-mounted surveying and mapping microservice layer, and a core service plug-in.
[0066] Figure 3 A system architecture schematic diagram of a vehicle-mounted surveying and mapping system is provided for the fourth embodiment of the application, and the system architecture of the vehicle-mounted surveying and mapping system comprises a basic layer, a management layer, a plug-in layer, and a vehicle-mounted surveying and mapping microservice layer. Figure 3The system architecture shown, by micro-service, the device driver is physically isolated from the business logic, through plug-in and standardized interface to realize the decoupling of functional modules, the system flexibility and maintainability are significantly improved, decoupling. The calculation-intensive task is stripped to an independent process, avoiding the concentration of resource consumption, using the process isolation physical characteristics to prevent single mode fault diffusion, the system stability and reliability are greatly improved, resource optimization and fault isolation. Based on the standardized data interface contract, support only to replace the micro-service or the whole unit replacement two strategies, can seamlessly integrate all kinds of vehicle-mounted devices from traditional devices to new sensors, real-time "plug and play" of the device, strong scalability. The upper business plug-in does not need to care about the difference of the underlying hardware protocol, only need to call the unified interface, reduce the repeated development, reduce the error probability, improve the development efficiency. Figure 3 The component integration management module in the component integrates the management module according to the component dependency relationship and the configuration list, dynamically loads the component file to the memory; maintain the global service registry, for plug-in query to obtain the service interface instance provided by other plug-ins. The vehicle-mounted surveying and mapping micro-service layer of the vehicle-mounted surveying and mapping system is managed through the service integration management module. The same or corresponding technical terms as the above embodiments are not described here.
[0067] The standardized data interface is defined in the header file in C++ abstract class IDeviceDataService at compile time. Its core methods include: GenericDataFrame getLatestData(), DeviceStatus getDeviceStatus() and the like. All input and output parameter data structures (such as GenericDataFrame) are explicitly defined, and the data_payload field is forced to use Google Protocol Buffers format for serialization.
[0068] Taking the satellite navigation device micro-service as an example: first, the underlying hardware interface and IPC communication mechanism will receive and cache the data of the satellite navigation device in the core service plug-in in real time, for the plug-in layer to use. In the core service plug-in, the GPSDeviceService_Proxy class is provided for the satellite navigation device micro-service, which is an agent that implements the IDeviceDataService interface in the plug-in process. When the plug-in layer calls getLatestData(), GPSDeviceService_Proxy gets the data collected by the satellite navigation device in the core service plug-in, serializes it into standardized data GenericDataFrame, and returns it to the corresponding plug-in in the upper layer. For the plug-in, this process is no different from calling a local function, and the underlying IPC is completely unaware.
[0069] The core service plugin is the central hub of system communication. It serves as the implementation carrier for the interface proxy factory and event bus, responsible for creating and managing singleton instances of all interface proxies, hosting the global event bus, and monitoring the status of each microservice for fault tolerance. During initialization, this plugin registers its implemented services (such as the interface proxy factory, standardized data interfaces, and event bus) in the global service registry maintained by the component integration management module. All plugins discover and obtain instances of these core services by querying this global service registry, thereby connecting to the system communication framework. It monitors the health status of each microservice process in real time. If a microservice process crashes, it immediately marks it as "unavailable" in the status table. Any subsequent calls to this service via the interface proxy will be immediately intercepted and an error returned, preventing upper-layer plugins from being blocked due to timeouts. This achieves fault isolation and graceful degradation, ensuring that anomalies in the vehicle-mounted mapping microservices are encapsulated and digested at the communication layer, preventing them from propagating upwards and causing upper-layer plugin crashes. This significantly enhances the robustness and reliability of the entire system, meeting the stringent stability requirements of the vehicle-mounted operating environment.
[0070] Figure 4 A schematic diagram of an in-vehicle computer that can be used to implement embodiments of the present invention is shown. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the invention described and / or claimed herein.
[0071] like Figure 4 As shown, the vehicle-mounted computer 10 includes at least one processor 11 and a memory, such as ROM 12 or RAM 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer programs stored in the ROM 12 or loaded into the RAM 13 from the storage unit 18. The RAM 13 can also store various programs and data required for the operation of the vehicle-mounted computer 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An I / O interface 15 is also connected to the bus 14. The ROM 12 is a read-only memory, the RAM 13 is a random access memory, and the I / O interface 15 is an input / output interface.
[0072] Multiple components in the vehicle-mounted computer 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, optical disk, etc.; and a communication unit 19, such as a network card, modem, wireless transceiver, etc. The communication unit 19 allows the vehicle-mounted computer 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0073] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as the vehicle mapping method with a dual-decoupled architecture.
[0074] In some embodiments, the dual-decoupled architecture vehicle mapping method can be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on the vehicle computer 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the dual-decoupled architecture vehicle mapping method described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to perform the dual-decoupled architecture vehicle mapping method by any other suitable means (e.g., by means of firmware).
[0075] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0076] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0077] In the context of the present application, a computer-readable storage medium can be a tangible medium that can contain or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer-readable storage medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of a machine-readable storage medium will include one or more lines of a program of instructions in a transitory signal, a portable computer diskette, a hard disk, a RAM, a ROM, an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0078] To provide for interaction with a user, the systems and techniques described here can be implemented on a vehicle computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the vehicle computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
[0079] The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a user computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0080] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system, to solve the defects of large management difficulty and weak business scalability existing in traditional physical host and VPS server.
[0081] The embodiments of the present application further disclose a computer program product comprising a computer program which, when executed by a processor, implements the vehicle-mounted mapping method of the double-decoupling architecture according to any of the embodiments of the present application. The program product and the vehicle-mounted mapping method of the double-decoupling architecture disclosed in the embodiments of the present application belong to the same inventive concept, and thus will not be repeated here.
[0082] It should be understood that the steps shown in the above various forms of flow can be reordered, added or deleted. For example, each step described in the present application can be executed in parallel, sequentially or in different order, as long as the desired results of the technical solutions of the present application can be achieved, which is not limited herein.
[0083] The above detailed description does not constitute a limitation on the protection scope of the present application. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A vehicle-mounted mapping system with a dual decoupled architecture, characterized in that, include: The vehicle-mounted mapping plugin layer, the vehicle-mounted mapping microservice layer, and the core service plugins; The vehicle-mounted mapping plugin layer and the core service plugin are connected through multiple standardized data interfaces; the vehicle-mounted mapping microservice layer and the core service plugin communicate through an inter-process communication (IPC) mechanism; the vehicle-mounted mapping microservice layer is connected to the mapping equipment; the vehicle-mounted mapping microservice layer consists of multiple microservices implemented by independent processes, and each microservice is configured to establish an exclusive communication connection with a single type of vehicle-mounted mapping equipment. The vehicle-mounted mapping microservice layer is used to obtain the current mapping data uploaded by the mapping equipment and transmit the current mapping data to the core service plugin through the IPC mechanism; The core service plugin is used to generate a current standardized data frame based on the current surveying data and preset data standardization rules, and send the current standardized data frame to the target surveying plugin in the vehicle-mounted surveying plugin layer through a standardized data interface that matches the current surveying data. The core service plugin is also used to select the standardized data interface that is compatible with the current surveying data when the surveying equipment type corresponding to the current surveying data already exists.
2. The vehicle-mounted mapping system with a dual decoupled architecture according to claim 1, characterized in that, The core service plugin is used to monitor the process running status of the vehicle mapping microservice in the vehicle mapping microservice layer; When a microservice with an abnormal process is detected, the status of the microservice with the abnormal process is marked as unavailable, and calls to the microservice with the abnormal process are blocked.
3. The vehicle-mounted mapping system with a dual decoupled architecture according to claim 2, characterized in that, The core service plugin is used to obtain event messages sent by the vehicle mapping microservice in the vehicle mapping microservice layer; and to trigger the callback function of the vehicle mapping plugin that subscribes to the target topic based on the event messages and the event bus.
4. The vehicle-mounted mapping system with a dual decoupled architecture according to claim 1, characterized in that, Also includes: The system comprises a base layer and a management layer; the base layer stores common functional modules. The management layer is used to load newly added single-change data for vehicle mapping and / or newly added double-change data for vehicle mapping. The core service plugin is used to update the vehicle mapping microservice in the vehicle mapping microservice layer based on the newly added vehicle mapping single-change data, and / or, Based on the newly added vehicle mapping dual replacement data, update the vehicle mapping microservice in the vehicle mapping microservice layer and the vehicle mapping plugin in the vehicle mapping plugin layer, and create a new standardized data interface based on the vehicle mapping microservice. The vehicle-mounted mapping microservice layer also includes a batch data processing microservice.
5. The vehicle-mounted mapping system with a dual decoupled architecture according to claim 1, characterized in that, The current standardized data frame includes: frame header, surveying equipment type, surveying equipment identification number, surveying equipment name, manufacturer, timestamp, data payload, and checksum.
6. The vehicle-mounted mapping system with a dual decoupled architecture according to claim 5, characterized in that, When the surveying equipment is an inertial navigation system, the data payload includes operating status, status time, operating time, fault code, latitude and longitude, azimuth, tilt angle, speed, and mileage; When the surveying equipment is a satellite navigation device, the data payload includes operating status, fault codes, latitude and longitude, altitude, and accuracy factor.
7. A vehicle-mounted mapping method with a dual decoupled architecture, characterized in that, Executed by the core service plugin of the dual-decoupled architecture vehicle mapping system according to any one of claims 1-6, including: Based on the current surveying data and preset data standardization rules, a current standardized data frame is generated, and the current standardized data frame is sent to the target surveying plugin of the vehicle-mounted surveying plugin layer through a standardized data interface that matches the current surveying data. Before sending the current standardized data frame to the target mapping plugin of the vehicle-mounted mapping plugin layer through a standardized data interface that matches the current mapping data, the method further includes: when the mapping equipment type corresponding to the current mapping data already exists, selecting a standardized data interface that is compatible with the current mapping data from the existing standardized data interfaces according to the interface selection access configuration data.
8. A vehicle-mounted computer, characterized in that, include: The vehicle-mounted mapping plugin layer, the vehicle-mounted mapping microservice layer, and the core service plugin are deployed in the vehicle-mounted mapping system with the dual decoupled architecture as described in any one of claims 1-6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that cause a processor to execute the vehicle-mounted mapping method with a dual decoupled architecture as described in claim 7.
10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the vehicle-mounted mapping method with a dual decoupled architecture as described in claim 7.
Citation Information
Patent Citations
Data middle station for earth observation data
CN118394750A
Low-altitude monitoring system based on multi-source heterogeneous sensing fusion and rule engine driving
CN120746510A