Data transmission method, positioning system, onboard device, storage medium and computer program product
By setting up a sensor control center module at the operating system kernel layer, different types of measurement data can be directly transmitted, solving the problems of latency and low efficiency in vehicle-mounted equipment fusion positioning, and achieving efficient multi-source data fusion and accurate positioning.
Patent Information
- Application Number
- PCT/CN2024/124730
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-26
- Filing Date
- 2024-10-14
- Publication Date
- 2026-01-29
AI Technical Summary
In existing technologies, the data transmission process of vehicle-mounted devices during fusion positioning suffers from long delays, low efficiency, high resource consumption, and data asynchrony, resulting in insufficient positioning accuracy and reliability.
By setting up a sensor control center module in the kernel layer of the operating system, different types of measurement data can be directly transmitted to the kernel layer through different transmission paths, reducing intermediate layers. By combining the acquisition and reading times of the first and second frequencies, multi-source data fusion can be achieved, improving data transmission efficiency and positioning accuracy.
It significantly improves positioning accuracy and reliability, reduces the risk of single-point failure, ensures accurate positioning information even when a single signal is weak or blocked, and optimizes system resource utilization and operating efficiency.
Smart Images

Figure CN2024124730_29012026_PF_FP_ABST
Abstract
Description
A data transmission method, positioning system, vehicle-mounted device, storage medium and computer product program
[0001] Cross-reference to related applications
[0002] The embodiments of the present disclosure claim the priority of the Chinese patent application No. 202411018966.8, filed on July 26, 2024, and entitled "A data transmission method, data transmission device, vehicle-mounted device and storage medium", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0003] The present disclosure relates to, but is not limited to, the technical field of positioning, and in particular to a data transmission method, positioning system, vehicle-mounted device, storage medium and computer product program. BACKGROUND
[0004] Vehicle-mounted devices use positioning data and electronic map information to achieve accurate positioning and path planning, bringing convenience to drivers. These systems are widely used, but when implementing accurate navigation functions, fusion positioning technology is used to improve positioning accuracy. Vehicle-mounted devices need to store and forward data when performing fusion positioning. Some fusion positioning technologies in the market that fuse in the back end are based on application layer interface definitions or output based on Android layer standard interfaces.
[0005] In related technologies, according to the usual data transmission process, the interfaces and operation processes defined for various types of positioning measurement data define the specified data, which is propagated through numerous intermediate layers of modules, resulting in a large amount of delay time in the positioning measurement data transmission process.
[0006] SUMMARY
[0007] One embodiment of the present disclosure provides a data transmission method, positioning system, vehicle-mounted device, storage medium and computer product program, wherein the plurality of measurement modules respectively collect different types of positioning data at a first frequency to achieve multi-source data fusion, improve positioning accuracy and reliability.
[0008] Another embodiment of the present disclosure provides a data transmission method, positioning system, vehicle-mounted device, storage medium and computer product program, wherein different types of measurement data use different transmission paths to send the measurement data to the sensor control center in the kernel layer. In this way, different measurement modules focus on different types of data collection, reducing the risk of single-point failure. Even in the case of weak or blocked single signal, positioning information can be provided to improve positioning accuracy and reliability.
[0009] Another embodiment of the present disclosure provides a data transmission method, a positioning system, a vehicle-mounted device, a storage medium and a computer program product, wherein the sensor control center is arranged in a kernel layer, and measurement data is transmitted to the sensor control center without passing through a framework layer, effectively solving the problems of long data transmission process, large space consumption, low transmission efficiency and asynchronous positioning data.
[0010] Another embodiment of the present disclosure provides a data transmission method, a positioning system, a vehicle-mounted device, a storage medium and a computer program product, wherein the sensor control center is arranged in a kernel layer, and can be directly accessed and data-transmitted by other kernel objects, improving object access efficiency and data transmission efficiency.
[0011] Another embodiment of the present disclosure provides a data transmission method, a positioning system, a vehicle-mounted device, a storage medium and a computer program product, wherein the sensor control center module performs frequency reduction processing on the measurement data collected by the measurement module at a first frequency according to a second frequency at which the fusion positioning module reads data, so as to meet the requirement of the fusion positioning module reading data, and then the fusion positioning module performs fusion positioning according to the corresponding frequency-reduced measurement data, improving positioning accuracy.
[0012] To achieve one or more of the above objects, the technical solutions of the embodiments of the present disclosure are as follows:
[0013] The present disclosure provides a data transmission method applied to a positioning system, wherein the positioning system comprises an operating system and a plurality of measurement modules, and the method comprises the following steps:
[0014] Each of the plurality of measurement modules of the positioning system collects measurement data of a corresponding type at a first frequency, and transmits measurement data of different types to a sensor control center module through different transmission paths, wherein the sensor control center module is arranged in a kernel layer of the operating system;
[0015] The sensor control center module determines a second frequency at which a fusion positioning module of the operating system reads data, and a reading time at which the fusion positioning module reads data, wherein the first frequency is greater than or equal to the second frequency;
[0016] According to the first frequency, the second frequency and the measurement data, target measurement data is obtained;
[0017] The fusion positioning module reads the target measurement data corresponding to the reading time through at least one output channel of the sensor control center module to perform fusion positioning.
[0018] The embodiment of the present disclosure provides a data transmission method, which is applied to a sensor control center module, the sensor control center module is arranged in a kernel layer of an operating system, and the method comprises the following steps:
[0019] receiving different types of measurement data transmitted by different transmission paths from each measurement module in a plurality of measurement modules of a positioning system, wherein each measurement module collects corresponding type of measurement data at a first frequency;
[0020] determining a second frequency at which a fusion positioning module of the operating system reads data and a reading time at which the fusion positioning module reads data, wherein the first frequency is greater than or equal to the second frequency;
[0021] acquiring target measurement data according to the first frequency, the second frequency and the measurement data, and acquiring target measurement data according to the first frequency, the second frequency and the measurement data, so that each fusion positioning module reads target measurement data corresponding to the reading time by using at least one output channel of the sensor control center module to perform fusion positioning.
[0022] The embodiment of the present disclosure provides a positioning system, which comprises:
[0023] a sensor control center module arranged in a kernel layer of an operating system, wherein the sensor control center module comprises at least one output channel;
[0024] each measurement module in a plurality of measurement modules is configured to collect corresponding type of measurement data at a first frequency and transmit the measurement data to the sensor control center module through a corresponding transmission path;
[0025] the sensor control center module is configured to determine a second frequency at which a fusion positioning module of the operating system reads data and a reading time at which the fusion positioning module reads data, acquire target measurement data according to the first frequency, the second frequency, the reading time and the measurement data, and read target measurement data corresponding to the reading time by using the at least one output channel of the fusion positioning module to perform fusion positioning, wherein the first frequency is greater than or equal to the second frequency.
[0026] The embodiment of the present disclosure provides a vehicle-mounted device, which comprises the positioning system described above.
[0027] The embodiment of the present disclosure provides a vehicle-mounted device, which comprises a memory and a processor, the memory stores a computer program capable of running on the processor, and the processor implements part or all of the steps in the above method when executing the program.
[0028] The storage medium stores one or more computer programs, and the one or more computer programs can be executed by one or more processors to implement some or all of the steps in the method described above.
[0029] The computer program product includes a computer program or instructions, and the computer program or instructions are executed by a processor to implement some or all of the steps in the method described above.
[0030] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, but not limiting the technical solutions of the present disclosure. BRIEF DESCRIPTION OF DRAWINGS
[0031] The accompanying drawings, which are incorporated into and form part of the specification, illustrate embodiments consistent with the present disclosure and, together with the specification, serve to explain the technical solutions of the present disclosure.
[0032] FIG. 1 is an application architecture diagram of transmission of fused positioning measurement data provided by the related art;
[0033] FIG. 2 is a flow diagram of an optional data transmission method provided by an embodiment of the present disclosure;
[0034] FIG. 3 is an application architecture diagram of transmission of fused positioning measurement data provided by an embodiment of the present disclosure;
[0035] FIG. 4 is a schematic diagram of an input-output channel of a sensor control center module provided by an embodiment of the present disclosure;
[0036] FIG. 5 is a flow diagram of an optional data transmission method provided by an embodiment of the present disclosure;
[0037] FIG. 6 is a flow diagram of an optional data transmission method provided by an embodiment of the present disclosure;
[0038] FIG. 7 is a flow diagram of an optional data transmission method provided by an embodiment of the present disclosure;
[0039] FIG. 8 is a flow diagram of an optional data transmission method provided by an embodiment of the present disclosure;
[0040] FIG. 9 is a structural schematic diagram of an optional positioning system provided by an embodiment of the present disclosure;
[0041] FIG. 10 is a structural schematic diagram of an optional vehicle-mounted device provided by an embodiment of the present disclosure;
[0042] FIG. 11 is a hardware entity schematic diagram of an optional vehicle-mounted device provided by an embodiment of the present disclosure. DETAILED DESCRIPTION
[0043] In order to make the purposes, technical solutions and advantages of the present disclosure clearer, the technical solutions of the present disclosure are described in further detail below in combination with the drawings and embodiments, and the described embodiments should not be regarded as limitations of the present disclosure. All other embodiments obtained by those of ordinary skill in the art without creative labor fall within the scope of protection of the present disclosure.
[0044] In the following description, “some embodiments” are referred to, which describe a subset of all possible embodiments, but it can be understood that “some embodiments” can be the same subset or different subsets of all possible embodiments, and can be combined with each other without conflict. The term “first / second / third” referred to is only to distinguish similar objects, and does not represent a specific order of the objects. Understandably, “first / second / third” can be interchanged in a specific order or sequence as allowed, so that the embodiments of the present disclosure described herein can be implemented in an order other than that illustrated or described herein.
[0045] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present disclosure belongs. The terms used herein are only for the purpose of describing the present disclosure and are not intended to limit the present disclosure.
[0046] In order to better understand the data transmission method provided in the embodiments of the present disclosure, the background art and related art of the data transmission method are first described.
[0047] In the related art, the vehicle generally adopts an application layer interface definition or an output based on an android layer standard interface in the transmission process of fusion positioning measurement data. Referring to FIG. 1, FIG. 1 is an application architecture diagram of transmission of fusion positioning measurement data in the related art. The vehicle generally includes the following conventional measurement data in fusion positioning: global navigation satellite system (GNSS) measurement data, inertial measurement unit (IMU) measurement data, and controller area network (CAN) measurement data.
[0048] The GNSS measurement data reaches the application (APP) layer through an abstract device (TTY) in the kernel layer, a global positioning system (GPS) library HAL module in the hardware abstraction layer (HAL), and a Java native interface (JNI) and a location manager in the frame work (FrameWork) layer. The GNSS measurement data is received by a receiver in the APP layer and is stored in a measured data buffer through an application internal interface such as a DR JNI for fusion positioning of various applications.
[0049] The IMU measurement data reaches the APP layer through an IMU driver in the kernel layer, an input subsystem module and an event development module in the kernel layer, a sensor HAL module in the HAL layer, a sensor service module and a sensor manager module in the FrameWork layer, and an Android interface definition language (AIDL) module. The IMU measurement data is received by a receiver in the APP layer and is stored in a measured data buffer through an application internal interface such as a DR JNI for fusion positioning of various applications.
[0050] The CAN measurement data reaches the APP layer through a micro controller unit (MCU), a Can data management module (CIS) in the kernel layer, a HAL module in the HAL layer, and a JNI, a CAN manager module and an AIDL module in the FrameWork layer. The CAN measurement data is received by a receiver in the APP layer and is stored in a measured data buffer through an application internal interface such as a DR JNI for fusion positioning of various applications.
[0051] It can be seen from the above that, for different types of positioning measurement data, according to the usual data transmission process, the specified data is defined and propagated through the intermediate numerous hierarchical modules, resulting in a large amount of delay time in the positioning measurement data transmission process, and a large fluctuation in the summary, up to tens of milliseconds or even hundreds of milliseconds of fluctuation, while occupying too much CPU resources. It should be noted that, since the sampling data of the IMU has a fixed frequency, if the application uses data frequency is different from the frequency of the IMU sampling data, the data transmission interface is not supported, so that the data cannot be transmitted. Further, since different applications have different requirements for the frequency of sensor data, different applications cannot share one IMU, and multiple independent IMUs need to be set up for each application to calculate the needs, resulting in redundancy of the IMU.
[0052] To solve one or more of the above technical problems, the present disclosure provides an optional data transmission method, which is applied to a positioning system, and the positioning system includes an operating system and a plurality of measurement modules. The steps 201 to 204 shown in FIG. 1 will be described.
[0053] In step 201, each measurement module in the plurality of measurement modules of the positioning system collects measurement data of a corresponding type at a first frequency, and transmits different types of measurement data to a sensor control center module through different transmission paths, and the sensor control center module is arranged in a kernel layer of the operating system.
[0054] In the present disclosure, the positioning system includes an operating system and a plurality of measurement modules. The operating system can include a device layer, a kernel layer, a hardware abstraction layer, a framework layer, and an application layer. The measurement module is a module for obtaining measurement data. The operating system can interact with each measurement module through the device layer. For example, refer to FIG. 3. It should be noted that the device layer provides an abstraction model of hardware devices (such as each measurement module) and an access interface of the hardware devices for the operating system, so that the operating system can control and manage these hardware devices.
[0055] Here, the measurement module usually communicates with other parts of the operating system through a specific access interface (such as a serial port, a serial peripheral interface (SPI), an inter-integrated circuit (IIC), etc.). The access interface is supported by the driver in the device layer, which ensures that the measurement module can correctly obtain positioning information and deliver the positioning information to the operating system.
[0056] In the embodiments of the present disclosure, the measurement data can be used for fusion positioning, and the measurement data includes but is not limited to GNSS measurement data, IMU measurement data and CAN measurement data. Of course, the measurement data can also include magnetometer data and barometer data, and the present disclosure does not make specific limitations on this.
[0057] The GNSS above refers to all satellite navigation systems. The most direct way to transfer GNSS measurement data is to transfer National Marine Electronics Association (NMEA) data. Using NMEA data is more conducive to data integrity. Currently, GPS navigation devices on the market use a unified RTCM standard protocol. It should be noted that the GNSS measurement data can come from a GNSS module or a TBOX.
[0058] The IMU measurement data above mainly includes acceleration, angular velocity and other data of the vehicle in the X-axis, Y-axis and Z-axis directions, and measured temperature values. Some IMU measurement data has a First Input First Output (FIFO) queue. The data packaging method can be more flexible, as long as the agreed format is followed.
[0059] The CAN measurement data above mainly includes vehicle speed data, gear data, steering wheel angle, etc., which can be selected according to actual needs.
[0060] The magnetometer measurement data above is the data collected by the vehicle's built-in magnetometer. The magnetometer is used to measure the strength and direction of the geomagnetic field.
[0061] The barometer measurement data above is the value of the vehicle's barometer.
[0062] In some embodiments, the measurement module includes one or more of the following: a GNSS measurement module for collecting GNSS data, a micro control unit measurement module for collecting vehicle driving state data, and an inertial sensor measurement module for collecting vehicle driving attitude data. Of course, the measurement module can also include modules for obtaining other types of positioning data, such as a measurement module for obtaining magnetometer measurement data and a measurement module for obtaining barometer measurement data. It should be noted that when the positioning system transmits data across modules, the operating system can interact with the GNSS measurement module, the IMU measurement module and the MCU measurement module through the device layer, for example, refer to FIG. 3.
[0063] In the embodiments of the present disclosure, different types of positioning data are collected by multiple measurement modules at a first frequency, so that multi-source data fusion can be realized, and the positioning accuracy and reliability can be significantly improved. Different modules focus on different types of data collection, reducing the risk of single-point failure, and providing accurate positioning information even in the case of weak or blocked single signal.
[0064] It should be noted that in the positioning and navigation of the positioning system, the required positioning data can be obtained through the GNSS measurement module and the IMU measurement module, so as to realize accurate positioning. In actual vehicle navigation, the interfaces of various sensors vary with different devices, and the levels of the drivers provided by various manufacturers are not necessarily the same. Some are kernel drivers, some are HAL layer drivers, and some are indirectly obtained through other interfaces, such as USB interfaces and network interfaces, to obtain sensor data, i.e., positioning data.
[0065] In the embodiments of the present disclosure, the sensor control center module (SensorHUB) can be understood as a cache area for caching positioning data. The sensor control center module can store the positioning data, and of course, can also process the positioning data. The sensor control center module can be used as an independent device node, so that modules at various levels can directly access and access the stored data. It should be noted that the device node in the operating system can exist in the form of a file, and its most direct advantage is independent of other modules in the system, and can be read and written as long as there is a standard file reading and writing operation. Since the access process is simple, different objects in the system can directly access this object, without a cumbersome transmission process and without additional data buffering.
[0066] In the embodiments of the present disclosure, the sensor control center module can be set in the kernel layer of the operating system, and still referring to FIG. 3. It should be noted that the sensor control center module is set in the kernel layer of the operating system, and can be directly accessed by other kernel objects (such as IMU drivers / CAN processing modules). Other kernel objects can be directly encapsulated in function interfaces, so as to transmit the measurement data corresponding to the kernel object to the sensor control center module. It should also be noted that the initialization speed of the kernel object is much higher than that of the application layer and the framework layer. The initialization speed of the kernel layer is fast, and the device can quickly enter the working state after being powered on, for example, within two to three seconds after being powered on, and the measurement data is sufficient and complete when the calculation part of the positioning module is initialized.
[0067] In the embodiments of the present disclosure, the first frequency can be the inherent frequency at which the measurement module (such as the IMU measurement module) collects data, the first frequency can also be the default setting of the measurement module (such as the GNSS measurement module and the MCU measurement module), and the first frequency can also be set by the user based on experience for the measurement module (such as the GNSS measurement module and the MCU measurement module). The present disclosure does not make specific limitations thereto. Exemplarily, the first frequency can be 100 Hertz (Hz). It should be noted that the first frequencies at which different strategy modules collect measurement data can be the same or different, and the present disclosure does not make specific limitations thereto.
[0068] In the embodiments of the present disclosure, the transmission path corresponding to each type of measurement data in different types of measurement data passes through the kernel layer and / or the hardware abstraction layer of the operating system. Each measurement module in the plurality of measurement modules collects measurement data of a corresponding type at a first frequency, and transmits different types of measurement data to the sensor control center module through different transmission paths. It can be understood that all measurement modules, such as the GNSS measurement module, the IMU measurement module, and the MCU measurement module, respectively collect corresponding measurement data, such as GNSS measurement data, IMU measurement data, and CAN measurement data, at respective corresponding first frequencies, and respectively transmit the measurement data through the measurement data corresponding transmission path formed by the kernel layer and / or the hardware abstraction layer of the operating system to the sensor control center module in the kernel layer.
[0069] It should be noted that the measurement data transmitted to the sensor control center module in the kernel layer only needs to pass through the kernel layer and the hardware abstraction layer, and the initialization speed is fast, and it does not need to pass through the Framework layer, and does not need to send a cumbersome message flow upward, effectively solving the problems of long positioning data transmission process, large space consumption, low transmission efficiency, and different synchronization between positioning data. Other kernel objects can directly access and transmit data, which improves the data transmission efficiency. It should be noted that generally, after each measurement module obtains measurement data, it first packs its own measurement data according to a preset format, and then transmits the packed measurement data to the sensor control center module.
[0070] Further, the sensor control center module adds a mark timestamp to the measurement data after receiving the measurement data. Here, the mark timestamp and the measurement timestamp carried by the measurement data added when the data is collected can be used for data recovery synchronization of fusion positioning. In an implementable scenario, the fusion positioning module performs data recovery synchronization calculation on different types of data according to the target timestamp of each measurement data when performing fusion positioning, so as to improve the accuracy of the measurement data; where the target timestamp can be the mark timestamp, and the target timestamp can also be the measurement timestamp, which is not limited in the present disclosure. It should be noted that if the interval between the measurement timestamp and the mark timestamp for the same measurement data is small, the mark timestamp of the sensor control center module can be used to perform data recovery synchronization calculation on different types of data; that is, using the mark timestamp in the sensor control center module instead of the measurement timestamp can make the data recovery step of fusion positioning more accurate, which is a prerequisite for data recovery for fusion positioning.
[0071] It should be noted that since the sensor control center module for storing measurement data is located in the kernel layer, the initialization speed is very fast, and the data path can be prepared within a few seconds after the system of the computer device is powered on, at which time the measurement data can be recorded, which maximizes the integrity of the data in the system in the shutdown and startup state. In the related art, only when the system is set to sleep can the integrity of the data be guaranteed, otherwise the measurement data within ten or dozens of seconds after booting will be lost.
[0072] In the embodiment of the present disclosure, each measurement module in the plurality of measurement modules collects measurement data of a corresponding type at a first frequency, and further, each measurement module transmits the measurement data of the corresponding type to the sensor control center module located in the kernel layer of the operating system through different transmission paths. In this way, by collecting different types of positioning data at a first frequency through multiple measurement modules, multi-source data fusion can be achieved, and the positioning accuracy and reliability can be significantly improved. Different modules focus on different types of data collection, reducing the risk of single-point failure, and even in the case of weak or blocked single signal, accurate positioning information can be provided. The sensor control center is set in the kernel layer, which does not need to pass through the Framework layer and can be directly accessed and data transmitted by other kernel objects, improving the data transmission efficiency. The data is sent to the sensor control center in the kernel layer through different transmission paths, and the sensor control center module centrally processes data from each measurement module, which can uniformly schedule processing resources such as memory allocation and task priority arrangement, thereby more efficiently utilizing system resources, reducing unnecessary energy consumption, and improving system operation efficiency.
[0073] In step 202, the sensor control center module determines a second frequency at which a fusion positioning module of an operating system reads data, and a reading time at which the fusion positioning module reads the data, wherein the first frequency is greater than or equal to the second frequency.
[0074] In the embodiments of the present disclosure, the fusion positioning module is used for accurate positioning by using fusion positioning data. The fusion positioning module can be located in an APP layer or a FrameWork layer. It should be noted that, generally, the fusion positioning module is arranged in the APP layer, such as an Advanced Driver Assistance System (ADAS) fusion positioning module and a navigation fusion positioning module. Of course, the fusion positioning module can also be arranged in the FrameWork layer, such as a location manager in the operating system. In this way, by arranging the sensor control center module in the kernel layer of the operating system, the fusion positioning modules located in different layers can conveniently read some data used for auxiliary fusion positioning, such as map data. Thus, more accurate fusion positioning can be achieved based on map data, GNSS measurement data, CAN measurement data, and IMU measurement data. It should be noted that the ADAS fusion positioning module can be integrated in a vehicle-mounted system or exist as a separate device, and the present disclosure does not make a specific limitation in this regard.
[0075] In the embodiments of the present disclosure, the second frequency is a frequency at which the fusion positioning module reads different types of measurement data (such as GNSS measurement data, IMU measurement data, and CAN measurement data). It should be noted that the frequency at which the same fusion positioning module reads different types of measurement data can be the same or different, and the frequency at which different fusion positioning modules read the same type of measurement data can be the same or different.
[0076] In the embodiments of the present disclosure, the first frequency is greater than the second frequency. In some embodiments, the first frequency can be an integer multiple of the second frequency. For example, the first frequency can be 100 Hz, and the second frequency can be 10 Hz.
[0077] In the embodiments of the present disclosure, the data read by the fusion positioning module includes but is not limited to GNSS measurement data, IMU measurement data, and CAN measurement data. The reading times at which different fusion positioning modules read data can be the same or different. The target measurement data can be determined based on the reading times at which the fusion positioning module reads data.
[0078] In the embodiments of the present disclosure, the reading times include a plurality of times. The reading times are a plurality of times determined based on a starting reading time and the second frequency. The starting reading time can be a trigger time when a user triggers the fusion positioning module to perform positioning, or can be another time, and the present disclosure does not make a specific limitation in this regard.
[0079] In the embodiments of the present disclosure, the positioning system determines, through the sensor control center module, a second frequency at which the fusion positioning module of the operating system reads data and a reading time at which the fusion positioning module reads data, so as to process the measurement data according to the second frequency and obtain the processed measurement data according to the reading time.
[0080] In step 203, target measurement data is obtained according to the first frequency, the second frequency and the measurement data.
[0081] In the embodiments of the present disclosure, the target measurement data is data obtained by filtering the same type of measurement data based on the first frequency and the second frequency. Of course, the target measurement data can also be a data set obtained by filtering different types of measurement data respectively based on the first frequency and the second frequency. The present disclosure does not make specific limitations in this regard.
[0082] In the embodiments of the present disclosure, based on the first frequency at which each measurement module collects measurement data and the second frequency at which the fusion positioning module uses or reads measurement data, the positioning system can filter each type of measurement data through the sensor control center module, so as to obtain target measurement data, so that the fusion positioning module performs fusion positioning based on the target measurement data.
[0083] In step 204, the fusion positioning module reads the target measurement data corresponding to the reading time through at least one output channel of the sensor control center module to perform fusion positioning.
[0084] In the embodiments of the present disclosure, fusion positioning can be understood as positioning based on deep integration of different types of data at the algorithm level. Fusion positioning can also be understood as positioning based on simple combination and superposition of different types of data. The present disclosure does not make specific limitations in this regard.
[0085] In some embodiments, after obtaining different types of target measurement data, the fusion positioning module can perform deep integration at the algorithm level based on different types of target measurement data to realize positioning of different types of target measurement data, so as to obtain a unified and more accurate positioning result. Here, the algorithm includes but is not limited to filtering algorithms such as Kalman filtering, particle filtering, etc.
[0086] In other embodiments, after obtaining different types of target measurement data, the fusion positioning module can also simply combine or superimpose different types of target measurement data for use, so as to realize positioning of different types of target measurement data, thereby obtaining a unified and accurate positioning result.
[0087] In the embodiments of the present disclosure, the sensor control center module internally implements a First Input First Output (FIFO) structure from the perspective of a data structure; and the sensor control center module internally implements a multi-output FIFO from the perspective of multi-output requirements, that is, the sensor control center module internally has at least one output channel, and the target measurement data can be read by the fusion positioning module through the output channel and used. It should be noted that, in the implementation of a general one-way output FIFO, a one-way output index is essentially implemented. In comparison, the multi-output FIFO uses independent output indexes for different output channels.
[0088] Exemplarily, referring to FIGS. 3 and 4, the sensor control center module includes several output channels, for example, three output channels. Different types of measurement data are input into the sensor control center module, and the sensor control center module stores the measurement data in time sequence according to the time stamp. Then, the different types of measurement data are processed according to the second frequency of different fusion positioning modules and the first frequency of collecting measurement data to obtain target measurement data. Further, the output channel associated with the output index of each fusion positioning module is determined, and the target measurement data corresponding to each reading time is read. Here, for a certain fusion positioning module, the target measurement data of the fusion positioning module is read and used through the output channel associated with the output index of the fusion positioning module, that is, the fusion positioning module uses the read target measurement data of multiple different types to perform fusion positioning, thereby improving the positioning accuracy.
[0089] In some embodiments, referring to FIG. 5, the different types of measurement data are transmitted to the sensor control center module through different transmission paths by each measurement module in the plurality of measurement modules of the positioning system in step 201. Steps 501 to 503 shown in FIG. 5 will be described in combination,
[0090] In step 501, the GNSS measurement data is transmitted to the sensor control center module through the GNSS hardware abstraction interface by interacting with the GNSS hardware abstraction interface of the hardware abstraction layer of the operating system through the serial communication interface or the network protocol of the kernel layer of the operating system by the GNSS measurement module.
[0091] In step 502, the IMU measurement data is transmitted to the sensor control center module by reading the IMU measurement data from the IMU measurement module through the IMU driver module in the kernel layer.
[0092] In step 503, the MCU measurement module transmits the CAN measurement data to the CAN data module, and the CAN data module encapsulates the CAN measurement data into CAN message format data and transmits the CAN message format data to the sensor control center module.
[0093] In the embodiments of the present disclosure, the different transmission paths include a first transmission path corresponding to the GNSS measurement data, a second transmission path corresponding to the IMU measurement data, and a third transmission path corresponding to the CAN measurement data. For example, continuing to refer to FIG. 3, the first transmission path can be GNSS measurement data acquired by the device layer -> serial communication interface / network protocol (TTY / Socket) of the kernel layer -> GNSS hardware abstraction interface (GNSS HAL) of the HAL layer -> sensor control center module of the kernel layer; the second transmission path can be IMU measurement data acquired by the device layer -> IMU driver module of the kernel layer -> sensor control center module of the kernel layer; and the third transmission path can be MCU measurement data acquired by the device layer -> CAN data encapsulation module of the kernel layer -> sensor control center module of the kernel layer.
[0094] In the embodiments of the present disclosure, for transmitting the GNSS measurement data to the sensor control center module by the first transmission path, the following process can be implemented: the GNSS measurement module collects GNSS measurement data at a first frequency, and interacts with the serial communication interface or network protocol of the kernel layer of the operating system and the GNSS hardware abstraction interface of the HAL layer, and transmits the GNSS measurement data to the sensor control center module of the kernel layer through the GNSS hardware abstraction interface for storage and processing. In this way, the GNSS measurement module collects data at a first frequency, ensuring the real-time and freshness of the positioning information. Through the efficient communication mode such as TTY / Socket, the data can be quickly transmitted from the hardware layer to the software processing layer, reducing the delay and improving the response speed of the entire system. The GNSS HAL (hardware abstraction layer) serves as a bridge between software and hardware, realizing a standardized interface for GNSS hardware operation, so that the upper-layer software (such as the sensor control center module) does not need to care about the specific implementation details of the bottom-layer hardware, realizing modularization and decoupling design. The efficient data transmission path and centralized processing strategy reduce the data transmission time. The sensor control center module of the kernel layer serves as a central processing unit, which can centrally manage and schedule data from different sensors, enhancing the stability of the system and the reliability of data processing; further, the sensor control center module can preprocess, store and distribute the GNSS data to different applications such as navigation software and location recording services according to needs, meeting the diversified application requirements while ensuring the consistency and accuracy of the data.
[0095] In the embodiments of the present disclosure, the sensor IMU can be located in the vehicle-mounted host or an external device that can guarantee transmission efficiency and reliability, and no specific limitation is made. For transmitting the IMU measurement data to the sensor control center module in the second transmission path, the following process can be implemented: through the IMU driving module in the kernel layer, the IMU measurement data is read from the IMU measurement module at a first frequency, and the IMU measurement data is transmitted to the sensor control center module in the kernel layer for storage and processing. In this way, the IMU measurement module can provide accurate linear acceleration, angular velocity, attitude and other information at a high frequency, which enables the system to accurately perceive the dynamic motion state of the device in real time. By directly reading the IMU data in the kernel layer, the intermediate link of data transmission is reduced, the delay of data processing is shortened, and the real-time response capability of the system to motion changes is improved. The sensor control center module serves as the central hub of data processing, can uniformly manage data from different sensors, ensures the synchronization and consistency of data, avoids data conflicts between multiple threads or processes, and optimizes the allocation and use efficiency of system resources.
[0096] In the embodiments of the present disclosure, for transmitting the CAN measurement data to the sensor control center module in the third transmission path, the following process can be implemented: through the MCU measurement module, the CAN measurement data is obtained at a first frequency, and the CAN measurement data is transmitted to the CAN data module. The CAN data module encapsulates the CAN measurement data into CAN message format data, and transmits the CAN message format data to the sensor control center module in the kernel layer for storage and processing. In this way, the CAN measurement data is collected by the MCU measurement module at a first frequency, ensuring the real-time nature of the data and the system response speed; the CAN data module encapsulates the collected data into CAN message format, facilitating unified transmission and analysis of data between different modules and system levels, and enhancing the modular design and interoperability of the system. The sensor control center module serves as the central hub of data processing, can uniformly manage data from different sensors, ensures the synchronization and consistency of data, avoids data conflicts between multiple threads or processes, and optimizes the allocation and use efficiency of system resources.
[0097] The three transmission paths are used to transmit the measurement data to the sensor control center module, and the following advantages are also provided: the data packet delivery time is reduced to the microsecond level, the transmission speed is fast, the delay is low, and the real-time performance is good; further, since the transmission of various types of measurement data uses independent dedicated channels, the number of involved modules is small, the intermediate process is less, the data transmission time is less, and the data transmission efficiency is improved. Each type of measurement data is directly transmitted to the sensor control center module for caching, and the measurement data is sent to the sensor control center module, that is, the data transmission process of the measurement data to the sensor control center module is completed, and it does not depend on other modules. That is, the data transmission process of the measurement data to the sensor control center module and the data reading process of the fusion positioning module from the sensor control center module are asynchronous operations, and no additional process is needed to maintain the data. Finally, since the present disclosure uses independent transmission channels, the transmission efficiency is high, and the potential of the measurement module such as the IMU sensor can be fully tapped by collecting higher frequency data. That is, by using the IMU sensor, higher frequency data is collected, and since the IMU sensor has an independent FIFO inside, the collected high-frequency IMU measurement data is recorded, and the recorded IMU measurement data is transmitted using an independent dedicated channel, which involves fewer modules and is transmitted in FIFO mode, ensuring the time distribution and integrity of the measurement data. Under the guarantee of high sampling rate data, more detection calculations with higher requirements for sampling frequency can be realized, such as detection of vehicle body vibration and road surface morphology, thereby improving the utilization of positioning data in applications.
[0098] It should be noted that steps 501 to 503 can be executed synchronously, and the present disclosure does not make specific limitations thereon.
[0099] In some embodiments, referring to FIG. 6, step 203 obtains target measurement data according to the first frequency, the second frequency, and the measurement data, which can be achieved by the following steps,
[0100] Step 601 determines whether to perform a filtering process on different types of measurement data according to the size relationship between the first frequency and the second frequency.
[0101] In the embodiments of the present disclosure, the size relationship between the first frequency and the second frequency includes that the first frequency is greater than the second frequency, and the first frequency is equal to the second frequency.
[0102] In the embodiments of the present disclosure, the filtering process can be understood as a frequency reduction process, and the filtering process can also be understood as a smoothing process, and the present disclosure does not make specific limitations thereon.
[0103] In the embodiments of the present disclosure, the processing result includes a result of performing a filtering process on the measurement data, and a result of not performing a filtering process on the measurement data.
[0104] In the embodiments of the present disclosure, if the first frequency is greater than the second frequency, the processing result is determined to be filtering the measurement data; if the first frequency is equal to the second frequency, the processing result is determined to be not filtering the measurement data, that is, based on the first frequency of the measurement module collecting the measurement data and the second frequency of the fusion positioning module reading the data, the processing strategy is dynamically adjusted according to the frequency difference.
[0105] Here, the first frequency is greater than the second frequency, which represents that the first quantity of measurement data collected by the measurement module in a unit time is greater than the second quantity of measurement data read by the fusion positioning module in a unit time. Exemplarily, the first frequency can be 100 Hz, and the second frequency can be 10 Hz. In a unit time, the first quantity of measurement data collected by the measurement module at 100 Hz is 100, and the second quantity of measurement data read by the fusion positioning module at 10 Hz is 10. Since the first quantity is greater than the second quantity, the first quantity of measurement data collected by the measurement module needs to be filtered or down-sampled to obtain the second quantity of measurement data required to be read by the fusion positioning module.
[0106] In the embodiments of the present disclosure, since the frequency of the fusion positioning module reading data, i.e., the second frequency, is inconsistent with the frequency of the measurement module collecting data, i.e., the first frequency, such as the first frequency being greater than the second frequency; at this time, if the measurement data collected by the measurement module has been stored in the sensor control center module, firstly, the measurement data in the sensor control center module can be filtered or down-sampled, so that the filtered or down-sampled measurement data meets the frequency of the corresponding fusion positioning module reading data, solving the problem that the frequency of the measurement module collecting data does not correspond to the frequency of the fusion positioning module reading data using the data transmission interface, resulting in that the data transmission interface does not support the transmission of measurement data, and the measurement module needs to be replaced; secondly, in the case that different fusion positioning modules have different requirements for the frequency of the measurement module collecting data, the same measurement data in the sensor control center module is filtered or down-sampled based on the data reading frequency of each fusion positioning module, so that each filtered or down-sampled measurement data meets the frequency of the corresponding fusion positioning module reading data, and further so that multiple different fusion positioning modules share one measurement module, avoiding the redundant setting of the measurement module. Of course, the above filtering or down-sampling of the measurement data can also screen the data to select the data meeting the vehicle movement rule, avoiding the problem of inaccurate positioning caused by individual data anomaly, and improving the accuracy and reliability of the data.
[0107] In the embodiments of the present disclosure, if the frequency at which the fusion positioning module reads data is consistent with the frequency at which the measurement module collects data, that is, the first frequency is equal to the second frequency, the filtering step can directly use the unmodified measurement data, thereby reducing the time delay of data processing.
[0108] In step 602, the measurement data is processed according to the processing result to obtain target measurement data.
[0109] In some embodiments, if the processing result indicates that the measurement data is not filtered, the measurement data can be directly determined as the target measurement data. In this way, the filtering step can directly use the unmodified measurement data, thereby reducing the time delay of data processing.
[0110] In some embodiments, if the processing result indicates that the measurement data is not filtered, the measurement data can be directly determined as the target measurement data. In this way, the filtering step can directly use the unmodified measurement data, thereby reducing the time delay of data processing.
[0111] In the embodiments of the present disclosure, the sensor control center module adds a marked timestamp to the measurement data after receiving the measurement data.
[0112] In the case where the processing result indicates that the measurement data is filtered, for example, the first frequency can be 100 Hz, the second frequency can be 10 Hz, in a unit time, the first number of measurement data collected by the measurement module at 100 Hz is 100, the second number of measurement data read by the fusion positioning module at 10 Hz is 10, the ratio of the first frequency to the second frequency is calculated, for example, 10, and the initial time at which the fusion positioning module reads the measurement data is obtained; the measurement data corresponding to the nearest marked timestamp from the initial time is determined, the measurement data corresponding to the nearest marked timestamp is taken as the starting measurement data, the measurement data is grouped according to the number of the ratio, for example, 10 measurement data as a group of measurement data, a plurality of grouped measurement data is obtained, and further, the measurement data is filtered in units of grouped measurement data to obtain target measurement data.
[0113] In the embodiments of the present disclosure, since the second frequency at which the fusion positioning module reads data is less than the first frequency at which the measurement module collects data, the measurement data needs to be filtered, and the process includes, first, grouping the measurement data based on the frequency ratio, which can ensure the consistency and synchronization of the filtering process in the time sequence, and the measurement data after adjacent grouping meets the sampling interval required by the fusion positioning module. Further, the measurement data after each grouping is down-sampled, so that the down-sampled measurement data meets the frequency at which the fusion positioning module reads data. In this way, without replacing the measurement module, the fusion positioning module can read the down-sampled measurement data corresponding to the measurement data after grouping according to the second frequency, and then realize positioning. At the same time, the down-sampling process reduces the amount of original data to be stored, saving storage space.
[0114] In some examples, the measurement data after grouping includes multiple, and the filtering of the measurement data after grouping to obtain target measurement data can be implemented in one or more of the following ways,
[0115] obtaining the target measurement data based on the average of each measurement data after grouping; or
[0116] determining any measurement data in the measurement data after grouping as the target measurement data.
[0117] In the embodiments of the present disclosure, for each measurement data after grouping in the multiple measurement data after grouping, the data in the measurement data after grouping is averaged, and the average is determined as the target measurement data corresponding to the frequency at which the fusion positioning module reads data. In this way, using the average as the target measurement data can effectively reduce random noise in the data, provide smoother and more stable positioning input, and improve the stability and accuracy of the positioning system. Of course, any measurement data in the measurement data after grouping can also be determined as the target measurement data corresponding to the frequency at which the fusion positioning module reads data. In this way, directly selecting any measurement data in the grouping as the output can exchange for faster response speed, reduce the computational burden of the processor, and save system resources. It should be noted that whether it is averaging or direct selection, grouping is essentially a compression of the original measurement data to meet the frequency at which the fusion positioning module reads data.
[0118] Referring to FIG. 7, the embodiments of the present disclosure provide an optional data transmission method applied to a positioning system, the positioning system including an operating system and multiple measurement modules. The steps 701 to 704 shown in FIG. 7 will be described,
[0119] Step 701, collecting, by each measurement module in the plurality of measurement modules of the positioning system, measurement data of a corresponding type at a first frequency, and transmitting, by different types of measurement data, different transmission paths to a sensor control center module, the sensor control center module being arranged in the kernel layer of the operating system;
[0120] Step 702, determining, by the sensor control center module, a second frequency at which each fusion positioning module in the operating system reads data, and a reading time at which each fusion positioning module reads data, wherein the first frequency is greater than or equal to the second frequency.
[0121] In the embodiments of the present disclosure, the fusion positioning module includes a plurality of fusion positioning modules, which can be located in the application layer and / or the framework layer, and the frequency at which the same fusion positioning module reads different types of measurement data is the same or different. The frequency at which different fusion positioning modules read the same type of measurement data is the same or different. For example, referring to FIG. 3, the plurality of fusion positioning modules include fusion positioning module 1 and fusion positioning module 2 located in the APP layer, and fusion positioning module 3 located in the framework layer.
[0122] Step 703, obtaining, according to the first frequency, each second frequency, and the measurement data, target measurement data corresponding to each fusion positioning module.
[0123] Step 704, reading, by each fusion positioning module, each target measurement data corresponding to the reading time associated with the fusion positioning module through a corresponding output channel of the plurality of output channels of the sensor control center module in the order of reading of the fusion positioning module, to perform fusion positioning.
[0124] In the embodiments of the present disclosure, the reading order can be determined based on the reading time at which each fusion positioning module reads data.
[0125] In the embodiments of the present disclosure, after determining, by the sensor control center module, the second frequency at which each fusion positioning module in the operating system reads data, and the reading time at which each fusion positioning module reads data, obtaining, according to the first frequency, each second frequency, and the measurement data, target measurement data corresponding to each fusion positioning module; finally, reading, by each fusion positioning module, each target measurement data corresponding to the reading time associated with the fusion positioning module through a corresponding output channel of the plurality of output channels of the sensor control center module in the order of reading of each fusion positioning module, and the fusion positioning module performs fusion positioning based on the target measurement data corresponding to each type.
[0126] From the above, first, by the sensor control center module centralized management of each sensor data acquisition frequency (first frequency) and fusion positioning module data demand frequency (second frequency), can efficiently schedule system resources, reduce unnecessary data processing and transmission, improve the overall system efficiency and reduce energy consumption. Secondly, according to the specific needs of different fusion positioning module, provides customized data processing (such as data smoothing, filtering, averaging, etc.), to ensure that each module receives the data and its processing capacity matching, and then enhance the accuracy and stability of the final positioning result. Then, the sensor control center module as an intermediate layer, for access to new sensors or positioning module provides a standardized interface, easy to system upgrade and expansion, but also simplifies the integration of new modules, enhance the flexibility of the system. Finally, by precisely controlling the reading time and data reporting order, to ensure the data timing consistency between different positioning modules, help to improve the spatio-temporal continuity and reliability of the positioning results, and the same vehicle positioning data, can be simultaneously provided to multiple fusion positioning module data, rather than need to be equipped with redundant sensors for multiple fusion positioning module.
[0127] It should be noted that the same steps and the same content in the embodiment and other embodiments are described with reference to the description of other embodiments, and will not be repeated here.
[0128] Referring to FIG. 8, the present disclosure provides an optional data transmission method applied to the sensor control center module, which will be described in combination with steps 801 to 804 shown in FIG. 8,
[0129] Step 801, receiving different types of measurement data transmitted by different transmission paths from each measurement module in the plurality of measurement modules of the positioning system, wherein each measurement module collects corresponding types of measurement data at a first frequency;
[0130] Step 802, determining the second frequency of the fusion positioning module of the operating system reading data, and the reading time of the fusion positioning module reading data;
[0131] Step 803, according to the first frequency, the second frequency and the measurement data, obtaining the target measurement data, so that each fusion positioning module uses at least one output channel of the sensor control center module to read the target measurement data corresponding to the reading time to perform fusion positioning.
[0132] The embodiment of the present disclosure provides a data transmission method, each measurement module in a plurality of measurement modules from a positioning system transmits different types of measurement data through different transmission paths, wherein each measurement module collects corresponding type of measurement data at a first frequency; a second frequency at which a fusion positioning module of an operating system reads data and a reading time at which the fusion positioning module reads data are determined; target measurement data is obtained according to the first frequency, the second frequency and the measurement data; and the target measurement data corresponding to the reading time is reported to the fusion positioning module through at least one output channel to perform fusion positioning. In this way, different types of positioning data are collected by a plurality of measurement modules at a first frequency, multi-source data fusion can be realized, and positioning accuracy and reliability are significantly improved. Different modules focus on different types of data collection, reducing the risk of single-point failure, and accurate positioning information can be provided even in the case of weak or blocked single signal. The sensor control center is arranged in the kernel layer, and does not need to pass through the Framework layer, thereby effectively solving the problems of long transmission process, large space consumption, low transmission efficiency and asynchronous positioning data between the positioning data, and the sensor control center can be directly accessed and data transmitted by other kernel objects, thereby improving the data transmission efficiency. The data is sent to the sensor control center of the kernel layer by using different transmission paths, the sensor control center module performs frequency reduction processing on the measurement data collected by the measurement module at the first frequency according to the second frequency at which the fusion positioning module reads data, to meet the requirement of reading data by the fusion positioning module, and then the fusion positioning module performs fusion positioning according to the corresponding processed measurement data of different types, thereby improving the positioning accuracy.
[0133] It should be noted that the same steps and the same content in the embodiments and other embodiments are described with reference to the descriptions in the other embodiments, and will not be described here.
[0134] Referring to FIG. 9, FIG. 9 is a structural schematic diagram of an optional positioning system provided by the embodiment of the present disclosure, and the positioning system 9 comprises:
[0135] The sensor control center module 901 is arranged in the kernel layer of the operating system, and the sensor control center module 901 comprises at least one output channel;
[0136] Each measurement module 902 (not shown in the figure) in the plurality of measurement modules is configured to collect corresponding type of measurement data at a first frequency, and transmit the measurement data to the sensor control center module 901 through a corresponding transmission path;
[0137] The sensor control center module 901 is configured to determine a second frequency at which the fusion positioning module 903 of the operating system reads data, and a reading time at which the fusion positioning module 903 reads data; acquire target measurement data according to the first frequency, the second frequency, the reading time, and the measurement data, and read the target measurement data corresponding to the reading time by the fusion positioning module 903 using at least one output channel for fusion positioning, wherein the first frequency is greater than or equal to the second frequency.
[0138] In other embodiments of the present disclosure, the sensor control center module 901 is configured to determine, according to the size relationship between the first frequency and the second frequency, whether to perform filtering processing on different types of measurement data.
[0139] In other embodiments of the present disclosure, the sensor control center module 901 is configured to determine that the processing result is to perform filtering processing on the measurement data if the first frequency is greater than the second frequency, and determine that the processing result is not to perform filtering processing on the measurement data if the first frequency is equal to the second frequency.
[0140] In other embodiments of the present disclosure, the sensor control center module 901 is configured to calculate a ratio of the first frequency to the second frequency if the processing result indicates that filtering processing is to be performed on the measurement data; group the measurement data according to the ratio, and perform filtering processing on the grouped measurement data to obtain target measurement data; and determine the measurement data as the target measurement data if the processing result indicates that filtering processing is not to be performed on the measurement data.
[0141] In other embodiments of the present disclosure, the grouped measurement data includes a plurality of groups, and the sensor control center module 901 is configured to obtain the target measurement data based on an average value of each of the grouped measurement data; or determine any one of the grouped measurement data as the target measurement data.
[0142] In other embodiments of the present disclosure, the fusion positioning module includes a plurality of modules, and the sensor control center module 901 is configured to acquire target measurement data corresponding to each of the fusion positioning modules 903 according to the first frequency, each of the second frequencies, and the measurement data; and cause each of the fusion positioning modules 903 to read each of the target measurement data corresponding to the reading time associated with the fusion positioning module 903 in the order of reading of the fusion positioning module 903 using a corresponding one of the plurality of output channels of the sensor control center module 901 for fusion positioning.
[0143] In other embodiments of the present disclosure, the measurement module 902 includes a GNSS measurement module 921, an IMU measurement module 922, and an MCU measurement module 923, and different types of measurement data include GNSS measurement data, IMU measurement data, and CAN measurement data; the GNSS measurement module 921 is configured to interact with a GNSS hardware abstraction interface 905 of the hardware abstraction layer of the operating system through the serial communication interface or the network protocol 904 of the kernel layer; the GNSS hardware abstraction interface 905 is configured to transmit the GNSS measurement data to the sensor control center module 901; the IMU measurement module 922 is configured to read the IMU measurement data and transmit the IMU measurement data to the sensor control center module 901; the MCU measurement module 923 is configured to transmit the CAN measurement data to the CAN data module 907; and the CAN data module 907 is configured to encapsulate the CAN measurement data into CAN message format data and transmit the CAN message format data to the sensor control center module 901.
[0144] Referring to FIG. 10, FIG. 10 is a structural schematic diagram of an optional vehicle-mounted device according to an embodiment of the present disclosure. The vehicle-mounted device 10 includes the positioning system according to any one of the above embodiments.
[0145] The vehicle-mounted device according to an embodiment of the present disclosure includes a memory and a processor. The memory stores a computer program executable on the processor. The processor implements some or all steps of the above method when executing the program.
[0146] The vehicle-mounted device according to an embodiment of the present disclosure includes a memory and a processor. The memory stores a computer program executable on the processor. The processor implements some or all steps of the above method when executing the program.
[0147] The vehicle-mounted device according to an embodiment of the present disclosure includes a memory and a processor. The memory stores a computer program executable on the processor. The processor implements some or all steps of the above method when executing the program.
[0148] The embodiment of the present disclosure provides a computer program product, which comprises a non-transitory computer-readable storage medium storing a computer program. When the computer program is read and executed by a computer, part or all of the steps of the above method are implemented. The computer program product can be implemented by hardware, software or a combination thereof. In some embodiments, the computer program product is embodied as a computer storage medium, and in other embodiments, the computer program product is embodied as a software product, such as a software development kit (SDK) and the like.
[0149] It should be noted that the above description of various embodiments tends to emphasize the differences between the various embodiments, and the same or similar parts can be referred to each other. The above description of the device, storage medium, computer program and computer program product embodiments is similar to the description of the method embodiments, and has similar beneficial effects as the method embodiments. For technical details not disclosed in the device, storage medium, computer program and computer program product embodiments of the present disclosure, please refer to the description of the method embodiments of the present disclosure.
[0150] FIG. 11 is a schematic diagram of a hardware entity of an optional vehicle-mounted device according to an embodiment of the present disclosure. As shown in FIG. 11, the hardware entity of the vehicle-mounted device 11 includes a central processing unit (CPU) 1101, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 1102 or computer program instructions loaded from a storage unit 1108 to a random access memory (RAM) 1103. In the RAM 1103, various programs and data required for the operation of the vehicle-mounted device 11 can also be stored. The CPU 1101, the ROM 1102 and the RAM 1103 are connected to each other through a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.
[0151] Various components in the vehicle-mounted device 11 are connected to the I / O interface 1105, including an input unit 1106 such as a keyboard, a mouse, etc., an output unit 1107 such as various types of displays, speakers, etc., a storage unit 1108 such as a magnetic disk, an optical disk, etc., and a communication unit 1109 such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 1109 allows the vehicle-mounted device 11 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunications networks.
[0152] The various processes and processes described above, such as the methods described above, can be performed by processing unit 1101. For example, in some embodiments, the methods described above can be implemented as a computer software program tangibly embodied in a machine readable medium, such as storage unit 1108. In some embodiments, some or all of the computer program can be loaded and / or installed onto in-vehicle device 11 via ROM 1102 and / or communication unit 1109. When the computer program is loaded onto RAM 1103 and executed by CPU 1101, one or more actions of the methods described above can be performed.
[0153] The present disclosure can be a method, apparatus, system, and / or computer program product. The computer program product can include a computer storage medium having computer program instructions embodied therein to execute various aspects of the present disclosure.
[0154] The computer storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer storage medium can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer storage medium include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a ferromagnetic random access memory (FRAM), a flash memory, a magnetically sensitive surface, an optical disk, or a compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanism that stores data in a form of a set of punched holes, a set of grooves having a shape of instructions, and any suitable combination of the foregoing. The computer storage medium is not, however, a transitory signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission media (e.g., light pulse passing through a fiber-optic cable), or an electrical signal through a wire.
[0155] Computer program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions to storage media within the respective computing / processing device for execution by a processor.
[0156] Computer readable program instructions for carrying out operations of the present disclosure can be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions can execute entirely on the user's computing device, partly on the user's computing device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server. In the latter scenario, the remote computing device can be connected to the user's computing device through any kind of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computing device, for example, through the Internet using an Internet Service Provider. In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic devices (PLD) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.
[0157] The computer readable program instructions can also be loaded onto a computing / processing device, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computing / processing device, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computing / processing device, other programmable apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0158] These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer program instructions can also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including
[0159] The flow diagrams and the block diagrams in the drawings are presented to illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flow diagrams and the block diagrams can represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logic functions. In some alternative implementations, the functions noted in the blocks can occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks can sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flow diagrams, and combinations thereof, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and
[0160] It should be understood that every feature, structure, or characteristic described above in relation to one or more embodiments is included in at least one embodiment of the present disclosure. Therefore, the appearances of "in one embodiment" or "in an embodiment" at various places in the specification do not necessarily refer to the same embodiment. Furthermore, various features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that the sequence of the steps / processes described above in various embodiments of the present disclosure does not mean the order of execution, and the order of execution of the steps / processes should be determined according to their functions and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present disclosure. The sequence numbers of the above embodiments of the present disclosure are only for description, and do not represent the advantages or disadvantages of the embodiments.
[0161] It should be noted that the terms "comprising", "including", or any other variant thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements recited, but can also include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without more limitations, an element defined by the phrase "comprising a" does not exclude the existence of additional identical elements in the process, method, article, or apparatus that includes the element.
[0162] In several embodiments provided by the present disclosure, it should be understood that the disclosed devices and methods can be implemented in other ways. The above-described device embodiments are only illustrative, for example, the division of the units is only a logical function division, and actual implementation can have another division manner, such as: multiple units or components can be combined, or can be integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the displayed or discussed components can be through some interface, indirect coupling or communication connection between devices or units, which can be electrical, mechanical or other forms.
[0163] The units described above as separate components can or can not be physically separate, and the components shown as units can or can not be physical units; they can be located in one place or distributed on multiple network units; and some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
[0164] In addition, each functional unit in each embodiment of the present disclosure can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be realized in the form of hardware or hardware plus software functional unit.
[0165] Those skilled in the art can understand that all or part of the steps of the above-mentioned method embodiments can be completed by program instruction related hardware, and the foregoing program can be stored in a computer readable storage medium, and the program executes the steps of the above-mentioned method embodiments when executed; and the foregoing storage medium includes a mobile storage device, a read only memory (ROM), a magnetic disc or an optical disc and various storage medium capable of storing program codes.
[0166] Alternatively, the integrated units of the present disclosure can be stored in a computer readable storage medium if they are realized in the form of software function modules and sold or used as independent products. Based on such understanding, the technical solutions of the present disclosure can be embodied in the form of a software product, and the computer software product is stored in a storage medium, includes a plurality of instructions for causing a vehicle terminal (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in the various embodiments of the present disclosure. The foregoing storage medium includes a mobile storage device, a ROM, a magnetic disc or an optical disc and various storage medium capable of storing program codes.
[0167] The above is only an embodiment of the present disclosure, but the protection scope of the present disclosure is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical range disclosed in the present disclosure, which should be covered within the protection scope of the present disclosure. Industrial applicability
[0168] The embodiment of the present disclosure provides a data transmission method, a positioning system, a vehicle-mounted device, a storage medium and a computer product program, which are applied to a positioning system including an operating system and a plurality of measurement modules, and the method comprises the following steps: collecting, by each measurement module in the plurality of measurement modules of the positioning system, measurement data of a corresponding type at a first frequency, and transmitting different types of measurement data to a sensor control center module through different transmission paths, wherein the sensor control center module is arranged in a kernel layer of the operating system; determining, by the sensor control center module, a second frequency at which a fusion positioning module of the operating system reads data and a reading time at which the fusion positioning module reads data, wherein the first frequency is greater than or equal to the second frequency; obtaining target measurement data according to the first frequency, the second frequency and the measurement data; and reporting, by at least one output channel of the sensor control center module, the target measurement data corresponding to the reading time to the fusion positioning module for fusion positioning. In this way, the plurality of measurement modules respectively collect different types of measurement data at the first frequency, and different types of measurement data are transmitted to the sensor control center in the kernel layer through different transmission paths. In this way, different measurement modules focus on different types of data collection, reducing the risk of single-point failure. Even in the case of weak or blocked single signal, positioning information can be provided, and multi-source data fusion can be realized to improve positioning accuracy and reliability. The sensor control center is arranged in the kernel layer, and can also be directly accessed and data transmitted by other kernel objects, improving object access efficiency and data transmission efficiency. The sensor control center module reduces the frequency of the measurement data collected by the measurement module at the first frequency according to the second frequency at which the fusion positioning module reads data, so as to meet the demand of the fusion positioning module reading data, and then the fusion positioning module performs fusion positioning according to the corresponding frequency-reduced measurement data, improving the positioning accuracy.
Claims
1. A data transmission method applied to a positioning system, the positioning system comprising an operating system and a plurality of measurement modules, the method comprising: collecting, by each of the plurality of measurement modules of the positioning system, a corresponding type of measurement data at a first frequency, and transmitting different types of measurement data to a sensor control center module via different transmission paths, the sensor control center module being arranged at a kernel layer of the operating system; determining, by the sensor control center module, a second frequency at which a fusion positioning module of the operating system reads data, and a reading time at which the fusion positioning module reads data, wherein the first frequency is greater than or equal to the second frequency; obtaining target measurement data according to the first frequency, the second frequency and the measurement data; reading, by the fusion positioning module, the target measurement data corresponding to the reading time via at least one output channel of the sensor control center module for fusion positioning.
2. The method of claim 1, wherein, The obtaining target measurement data according to the first frequency, the second frequency and the measurement data comprises: determining a processing result of whether to filter the different types of measurement data according to a size relationship between the first frequency and the second frequency; processing the measurement data according to the processing result to obtain the target measurement data.
3. The method of claim 2, wherein, The determining a processing result of whether to filter the measurement data according to a size relationship between the first frequency and each of the second frequencies comprises: if the first frequency is greater than the second frequency, determining that the processing result is to filter the measurement data; and if the first frequency is equal to the second frequency, determining that the processing result is not to filter the measurement data.
4. The method of claim 2, wherein, The processing the measurement data according to the processing result to obtain the target measurement data comprises: if the processing result represents that the measurement data is to be filtered, calculating a ratio of the first frequency to the second frequency, grouping the measurement data according to the ratio, and filtering the grouped measurement data to obtain the target measurement data; and if the processing result represents that the measurement data is not to be filtered, determining that the measurement data is the target measurement data.
5. The method of claim 4, wherein, The grouped measurement data comprises a plurality of groups, and the filtering the grouped measurement data to obtain the target measurement data comprises: obtaining the target measurement data based on an average value of each of the grouped measurement data; or determining any one of the grouped measurement data as the target measurement data.
6. The method according to any one of claims 1 to 3, wherein, The fusion positioning module comprises a plurality of modules, and the obtaining target measurement data according to the first frequency, the second frequency and the measurement data comprises: obtaining the target measurement data corresponding to each of the fusion positioning modules according to the first frequency, each of the second frequencies and the measurement data. Correspondingly, the reading, by the fusion positioning module, of the target measurement data corresponding to the reading time for fusion positioning, comprises: According to the reading sequence of the fusion positioning module, each fusion positioning module reads the target measurement data corresponding to the reading time of the fusion positioning module associated with the corresponding one of the output channels of the sensor control center module for fusion positioning. The reading, by the fusion positioning module, of the target measurement data corresponding to the reading time for fusion positioning, comprises:
7. The method according to any one of claims 1 to 3, wherein, The different types of measurement data include global navigation satellite system (GNSS) measurement data, inertial measurement unit (IMU) measurement data, and controller area network (CAN) measurement data. The GNSS measurement data is transmitted to the sensor control center module through a GNSS hardware abstraction interface of a hardware abstraction layer of the operating system via a serial communication interface or a network protocol of a kernel layer of the operating system. The IMU measurement data is read from an IMU measurement module and transmitted to the sensor control center module through an IMU driver module in the kernel layer. The CAN measurement data is transmitted to a CAN data module through a micro control unit (MCU) measurement module, and the CAN data module encapsulates the CAN measurement data into CAN message format data and transmits the CAN message format data to the sensor control center module.
8. The method according to any one of claims 1 to 3, wherein, The measurement modules include one or more of a GNSS measurement module for collecting GNSS data, an MCU measurement module for collecting vehicle driving state data, and an IMU measurement module for collecting vehicle driving attitude data.
9. A data transmission method applied to a sensor control center module, wherein the sensor control center module is arranged in a kernel layer of an operating system, and the method comprises: receiving different types of measurement data transmitted through different transmission paths from each measurement module of a plurality of measurement modules, wherein each measurement module collects corresponding types of measurement data at a first frequency; determining a second frequency at which a fusion positioning module of the operating system reads data, and a reading time at which the fusion positioning module reads data, wherein the first frequency is greater than or equal to the second frequency; according to the first frequency, the second frequency, and the measurement data, obtaining target measurement data, so that each fusion positioning module reads the target measurement data corresponding to the reading time through at least one output channel for fusion positioning.
10. A positioning system, comprising: a sensor control center module arranged in a kernel layer of an operating system, wherein the sensor control center module comprises at least one output channel; each measurement module of a plurality of measurement modules is configured to collect corresponding types of measurement data at a first frequency, and to transmit the measurement data to the sensor control center module through a corresponding transmission path; The sensor control center module is configured to determine a second frequency at which the fusion positioning module of the operating system reads data, and a reading time at which the fusion positioning module reads data; acquire target measurement data according to the first frequency, the second frequency, the reading time and the measurement data, and read the target measurement data corresponding to the reading time by the fusion positioning module through the at least one output channel for fusion positioning, wherein the first frequency is greater than or equal to the second frequency.
11. The system of claim 10, wherein, The sensor control center module is configured to determine whether to filter the different types of measurement data according to the size relationship between the first frequency and the second frequency; if it is determined to filter the measurement data, calculate a ratio of the first frequency to the second frequency; group the measurement data according to the ratio, filter the grouped measurement data, and obtain the target measurement data; if it is determined not to filter the measurement data, determine the measurement data as the target measurement data.
12. The system of claim 11, wherein, The grouped measurement data includes a plurality of, The sensor control center module is configured to obtain the target measurement data based on the average value of each of the grouped measurement data; or determine any measurement data in each of the grouped measurement data as the target measurement data. The fusion positioning module includes a plurality of, 13. The system of any one of claims 10 to 12, wherein, The sensor control center module is configured to acquire the target measurement data corresponding to each of the fusion positioning modules according to the first frequency, each of the second frequencies and the measurement data, so that each of the fusion positioning modules reads each of the target measurement data corresponding to the reading time associated with the fusion positioning module in the reading order of the fusion positioning module through a corresponding one of the plurality of output channels for fusion positioning. The different types of measurement data include GNSS measurement data, IMU measurement data and CAN measurement data, 14. The system of any one of claims 10 to 12, wherein, The GNSS measurement module is configured to interact with a GNSS hardware abstraction interface of a hardware abstraction layer of the operating system through a serial communication interface or a network protocol of the kernel layer; The GNSS hardware abstraction interface is configured to transmit the GNSS measurement data to the sensor control center module; The IMU driving module is arranged in the kernel layer and is configured to read the IMU measurement data from the IMU measurement module and transmit the IMU measurement data to the sensor control center module; The MCU measurement module is configured to transmit the CAN measurement data to the CAN data module; The CAN data module is arranged in the kernel layer and is configured to encapsulate the CAN measurement data into CAN message format data and transmit the CAN message format data to the sensor control center module. 15. A vehicle mounted device comprising a positioning system as claimed in any one of claims 10 to 14.
16. An in-vehicle device comprising: a processor and a memory; the memory storing a computer program executable on the processor, the processor implementing the method of data transmission as claimed in any one of claims 1 to 8 or claim 9 when executing the program.
17. A storage medium storing one or more programs, the one or more programs being executable by one or more processors to implement the method of data transmission as claimed in any one of claims 1 to 8 or claim 9.
18. A computer program product comprising computer programs or instructions, characterized in that, the computer program or instructions implementing the method of data transmission as claimed in any one of claims 1 to 8 or claim 9 when executed by the processor.
Citation Information
Patent Citations
Fusion positioning method and device, equipment, storage medium and program product
CN113327344A
Fusion positioning precision evaluation method and device for autonomous vehicle, and electronic equipment
CN114777813A
Fusion positioning precision evaluation method, device and system based on vehicle and road cloud
CN114777814A
Transmission method and device of combined positioning measurement data, medium and electronic equipment
CN115248041A
Positioning Calibration Method and System, and Storage Medium
US20240219507A1