Sensor module and measuring system
The sensor module synchronizes data accumulation and output to alleviate communication and processing burdens, enhancing data handling efficiency in inertial measurement systems.
Patent Information
- Application Number
- JP2024036742
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-11
- Publication Date
- 2025-09-25
AI Technical Summary
Inertial measurement units place a heavy load on receiving devices due to high communication rates and processing requirements for angular velocity and acceleration data.
A sensor module comprising multiple sensor devices and a microcontroller that accumulates detection data until a synchronization timing, then outputs synchronized data to a host device, reducing communication and processing loads.
Reduces communication and computational loads on host devices by outputting synchronized data, allowing efficient data acquisition and processing in systems like autonomous navigation.
Smart Images

Figure 2025138037000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a sensor module, a measurement system, and the like. [Background technology]
[0002] Patent Document 1 discloses an inertial measurement unit that includes an angular velocity sensor and an acceleration sensor that output inertial information, a storage unit that stores multiple correction parameters related to the range of values of the inertial information, a parameter control unit that selects a selective correction parameter from the multiple correction parameters, and a correction calculation unit that corrects the inertial information using the selected correction parameter. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-72338 Summary of the Invention [Problem to be solved by the invention]
[0004] The inertial measurement unit described above outputs angular velocity data and acceleration data, which places a heavy load on other devices that receive the data, such as a heavy communication load due to a high communication rate between the inertial measurement unit and other devices, or a heavy load on other devices due to processing the angular velocity data and acceleration data. [Means for solving the problem]
[0005] One aspect of the present disclosure relates to a sensor module including a first sensor device including a first sensor element, a first detection circuit that receives a signal from the first sensor element and performs detection processing, and a first interface that outputs first detection data from the first detection circuit; a second sensor device including a second sensor element, a second detection circuit that receives a signal from the second sensor element and performs detection processing, and a second interface that outputs second detection data from the second detection circuit; and a microcontroller that includes a synchronization terminal that receives an external synchronization signal and receives as input the first detection data from the first sensor device and the second detection data from the second sensor device, wherein the microcontroller obtains first accumulated data by accumulating the first detection data up to a synchronization timing of the external synchronization signal, obtains second accumulated data by accumulating the second detection data up to the synchronization timing, and outputs the first accumulated data and the second accumulated data to a host device at the synchronization timing.
[0006] Another aspect of the present disclosure relates to a measurement system including the sensor module described above and the host device electrically connected to the sensor module. [Brief explanation of the drawings]
[0007] [Figure 1] An example of a sensor module configuration. [Figure 2] Example timing chart explaining the operation of a microcontroller. [Figure 3] First configuration example of a microcontroller. [Figure 4] FIG. 4 is a signal waveform diagram illustrating the operation of the sensor module. [Figure 5] Second configuration example of a microcontroller. [Figure 6] 10 is an example timing chart illustrating the operation of the microcontroller in the second configuration example. [Figure 7] FIG. 10 is a signal waveform diagram illustrating the operation of a sensor module using a microcontroller according to the second configuration example. [Figure 8] An example of a sensor device configuration. [Figure 9] An example of an angular velocity sensor device configuration. [Figure 10] An example of a measurement system configuration. [Figure 11] An example of the configuration of electronic devices. DETAILED DESCRIPTION OF THE INVENTION
[0008] Preferred embodiments of the present disclosure will be described in detail below. Note that the embodiments described below do not unduly limit the scope of the claims, and not all of the configurations described in the embodiments are necessarily essential components.
[0009] 1. Sensor module configuration example FIG. 1 shows an example of the configuration of a sensor module 10 according to this embodiment. The sensor module 10 is a physical quantity detection module composed of multiple sensor devices, and this sensor module 10 realizes a sensor system or a sensor unit. The sensor module 10 in FIG. 1 includes a first sensor device 20X, a second sensor device 20Y, and a microcontroller 80. Note that the sensor module 10 is not limited to the configuration shown in FIG. 1, and various modifications are possible, such as omitting some of the components or adding other components. For example, while FIG. 1 shows an example in which the number of sensor devices is two, the number of sensor devices may be three or more. For example, the sensor module 10 according to this embodiment may include a first sensor device to an n-th sensor device, where n is an integer greater than or equal to two.
[0010] The first sensor device 20X includes a first sensor element 50X, a first detection circuit 60X that receives a signal from the first sensor element 50X and performs detection processing, and a first interface 70X that outputs first detection data SD1 from the first detection circuit 60X. The first sensor device 20X is a device in which the first sensor element 50X and an integrated circuit device including the first detection circuit 60X and the first interface 70X are housed in a package. The integrated circuit device is an IC chip realized by a semiconductor.
[0011] The second sensor device 20Y includes a second sensor element 50Y, a second detection circuit 60Y that receives a signal from the second sensor element 50Y and performs detection processing, and a second interface 70Y that outputs second detection data SD2 from the second detection circuit 60Y. The second sensor device 20Y is a device in which the second sensor element 50Y and an integrated circuit device including the second detection circuit 60Y and the second interface 70Y are housed in a package.
[0012] In addition, when the number of sensor devices is three or more and an nth sensor device is provided, the nth sensor device includes an nth sensor element, an nth detection circuit that receives a signal from the nth sensor element and performs detection processing, and an nth interface that outputs nth detection data from the nth detection circuit.
[0013] Each of the first sensor element 50X and the second sensor element 50Y is a sensor element that detects a physical quantity and can also be called a physical quantity transducer. Examples of physical quantities include angular velocity, acceleration, angular acceleration, velocity, distance, pressure, sound pressure, and magnetic quantity. The first sensor element 50X and the second sensor element 50Y detect different physical quantities. For example, the first sensor element 50X detects angular velocity around a first axis, and the second sensor element 50Y detects angular velocity around a second axis. For example, the first sensor element 50X detects acceleration in the direction of the first axis, and the second sensor element 50Y detects acceleration in the direction of the second axis. Alternatively, the first sensor element 50X may detect a first physical quantity among the physical quantities angular velocity, acceleration, angular acceleration, velocity, distance, pressure, and magnetic quantity, and the second sensor element 50Y may detect a second physical quantity different from the first physical quantity. As an example, the first sensor element 50X detects angular velocity, and the second sensor element 50Y detects acceleration.
[0014] Each of the first detection circuit 60X and the second detection circuit 60Y can include an analog circuit and an A / D conversion circuit that converts an analog signal from the analog circuit into digital data. The analog circuit can include an amplifier circuit that amplifies the signal from the sensor element, a detection circuit such as a synchronous detection circuit, a gain adjustment circuit, or an offset adjustment circuit. The A / D conversion circuit outputs the digital detection data to the interface. The A / D conversion method of the A / D conversion circuit can be successive approximation, delta-sigma, flash, pipeline, double integration, or the like.
[0015] Each of the first interface 70X and the second interface 70Y is, for example, a circuit that performs digital interface processing, for example, transmitting or receiving serial data. Specifically, these interfaces perform interface processing according to the SPI or I2C communication standard. These interfaces may also perform interface processing according to a communication standard that is an extension of SPI or I2C, or a communication standard that is an improvement or modification of the SPI or I2C standard.
[0016] The microcontroller 80 receives first detection data SD1 from the first sensor device 20X and second detection data SD2 from the second sensor device 20Y. The sensor module 10 includes a digital interface bus BS that electrically connects the microcontroller 80 to the first sensor device 20X and second sensor device 20Y. The digital interface bus BS conforms to the communication standard for the interface processing performed by the first interface 70X and the second interface 70Y. The digital interface bus BS includes a data signal line, a clock signal line, and the like. The digital interface bus BS may also include a chip select signal. The microcontroller 80 receives first detection data SD1 from the first sensor device 20X and second detection data SD2 from the second sensor device 20Y via the digital interface bus BS. The first interface 70X is electrically connected to the digital interface bus BS via terminal TD1, and the second interface 70Y is electrically connected to the digital interface bus BS via terminal TD2. Here, "electrically connected" means a connection that allows electrical signals to be transmitted, i.e., a connection that enables information to be transmitted via electrical signals. The microcontroller 80 is a master controller for the first sensor device 20X and the second sensor device 20Y. The microcontroller 80 is an integrated circuit device and can be realized by a processor such as an MPU or CPU. Alternatively, the microcontroller 80 may be an ASIC or FPGA.
[0017] The microcontroller 80 also receives an external synchronization signal EXSYC. The external synchronization signal EXSYC is input to the sensor module 10 from an external device and becomes active at each synchronization timing. The external synchronization signal EXSYC becomes active, for example, at regular intervals. Active means high level in the case of positive logic and low level in the case of negative logic. For example, the external device may be a satellite positioning system receiver, and a PPS signal from the receiver may be input to the sensor module 10 as the external synchronization signal EXSYC. Alternatively, the external device may be a host device for the sensor module 10, and the host device may generate the external synchronization signal EXSYC synchronized with the PPS signal using a PLL or the like. Alternatively, the host device may obtain time information from an NTP service or the like via a network and generate the external synchronization signal EXSYC synchronized with the time information.
[0018] Fig. 2 is an example of a timing chart illustrating the operation of the microcontroller 80. Fig. 2 shows an example in which a PPS signal of 10 pulses per second is input to the microcontroller 80 as the external synchronization signal EXSYC.
[0019] In the waveforms of the first detection data SD1 to the nth detection data SDn, one square represents one sampled data. Sampling here means that the microcontroller 80 receives the detection data from the interface of each sensor device. Although only one waveform is shown in FIG. 2, the microcontroller 80 samples each of the first detection data SD1 to the nth detection data SDn.
[0020] The microcontroller 80 integrates the first detection data SD1 to obtain the first integrated data SDATC1. Similarly, the microcontroller 80 integrates the second detection data SD2 through the nth detection data SDn to obtain the second integrated data SDATC2 through the nth integrated data SDATCn. Note that FIG. 2 shows only one integrated data waveform, and illustrates the waveform when the detection data is a constant value. The microcontroller 80 resets the first integrated data SDATC1 through the nth integrated data SDATCn at the edge timing of the external synchronization signal EXSYC and continues integration until the next edge timing of the external synchronization signal EXSYC. The edge timing of the external synchronization signal EXSYC may be either the falling or rising timing of the external synchronization signal EXSYC.
[0021] The microcontroller 80 outputs the first accumulated data SDATC1 through the nth accumulated data SDATCn, which are accumulated from an edge timing of the external synchronization signal EXSYC to the next edge timing, to the host device. Specifically, the microcontroller 80 holds the first accumulated data SDATC1 through the nth accumulated data SDATCn immediately before being reset at the edge timing of the external synchronization signal EXSYC, and outputs the held first accumulated data SDATC1 through the nth accumulated data SDATCn to the host device. The host interface of the microcontroller 80 is, for example, SPI, I2C, or UART. If the host interface is SPI, the microcontroller 80 generates a data ready signal DRDY at the edge timing of the external synchronization signal EXSYC and outputs it to the host device. When the host device receives the data ready signal DRDY, it reads the first accumulated data SDATC1 through the nth accumulated data SDATCn via the host interface of the microcontroller 80. It should be noted that when the host interface is I2C or UART, the data ready signal DRDY is not used for communication, but the data ready signal DRDY may be generated inside the microcontroller 80.
[0022] 3 shows a first configuration example of a microcontroller 80. The microcontroller 80 includes a digital interface 82, a processing circuit 90, a signal processing circuit 92, an interrupt controller 94, and a host interface 96. Here, the number of sensor devices is assumed to be n=2.
[0023] The digital interface 82 is a circuit that performs interface processing with the sensor device. That is, the digital interface 82 performs interface processing as a master between the first interface 70X and the second interface 70Y. The digital interface 82 is connected to the digital interface bus BS via a terminal TM. Like the first interface 70X and the second interface 70Y, the digital interface 82 performs interface processing for the SPI or I2C communication standard, or a communication standard that has been developed or partially improved or modified.
[0024] The signal processing circuit 92 is a circuit that performs digital signal processing such as the above-mentioned integration processing, and can be realized by a DSP or the like. The signal processing circuit 92 integrates the first detection data SD1 received by the digital interface 82 to obtain first integrated data SDATC1, and integrates the second detection data SD2 received by the digital interface 82 to obtain second integrated data SDATC2. The signal processing circuit 92 may also perform filtering or correction processing. Specifically, the signal processing circuit 92 may calculate a moving average of the most recent J pieces of detection data on the detection data, and then perform downsampling at a rate of 1 / K (J and K are integers greater than or equal to 2). The signal processing circuit 92 may also perform correction processing such as temperature correction on the detection data after filtering. The signal processing circuit 92 may also integrate the detection data after filtering or correction to obtain integrated data.
[0025] The processing circuit 90 corresponds to the core CPU of the microcontroller 80 and executes various arithmetic and control processes. The processing circuit 90 includes a register unit 91 having various registers. The processing circuit 90 stores the integrated data from the signal processing circuit 92 in the register unit 91. The processing circuit 90 then generates a signal DRDY, which is a signal indicating that the integrated data is ready, and outputs the signal DRDY via a terminal TR to a host device 210 (described later in FIG. 10 ). This signal DRDY indicates that digital signal processing in the signal processing circuit 92 has been completed. Note that if the host interface 96 communicates in accordance with the UART standard, the signal DRDY does not need to be output to the host device 210.
[0026] The register unit 91 has multiple registers that can be accessed externally. For example, the host device 210 can access the data register of the register unit 91 via the host interface 96 and read out the accumulated data. The processing circuit 90 may count the number of updates to the data register of the accumulated data and write the counted number of updates to the update count register of the register unit 91. This allows the host device 210 to identify the ordinal number of the accumulated data read from the microcontroller 80.
[0027] The interrupt controller 94 accepts various interrupt requests. The interrupt controller 94 then outputs signals to the processing circuit 90 informing the processing circuit 90 of the interrupt request, interrupt level, and vector number according to the priority and interrupt level. The external synchronization signal EXSYC is input to the interrupt controller 94 via the synchronization terminal TS as one of the interrupt request signals. When the processing circuit 90 accepts an interrupt request via the external synchronization signal EXSYC, it executes the corresponding interrupt processing. The interrupt requests include interrupt requests via the SPI or UART of the host interface 96, interrupt requests via various timers, and interrupt requests via I2C.
[0028] The host interface 96 is a circuit that performs digital interface processing with the host device 210. For example, the host interface 96 performs serial data communication such as SPI, I2C, or UART as the host interface processing.
[0029] 4 is a signal waveform diagram illustrating the operation of the sensor module 10. Here, the number of sensor devices is assumed to be n=2. Note that data with the same type of hatching indicates that they correspond to each other.
[0030] 4, SSD1 is the detection data output by the first detection circuit 60X of the first sensor device 20X, and SSD2 is the detection data output by the second detection circuit 60Y of the second sensor device 20Y. In this embodiment, the first sensor device 20X and the second sensor device 20Y operate based on separate clock signals. For example, each sensor device operates based on a clock signal from an oscillator circuit built into the sensor device or a clock signal generated using an oscillator such as a quartz oscillator included in the sensor device. Therefore, the detection data SSD1 output by the first detection circuit 60X and the detection data SSD2 output by the second detection circuit 60Y are asynchronous with each other.
[0031] The interrupt controller 94 generates a signal SYCINT at regular intervals to execute internal interrupt processing. The frequency of the signal SYCINT is slower than the sampling rate of the detection data SSD1 and SSD2. The microcontroller 80 starts internal interrupt processing at the edge timing of the signal SYCINT. Here, an example is shown in which internal interrupt processing is started at the falling edge timing of the signal SYCINT.
[0032] When the internal interrupt process starts, the digital interface 82 receives first detection data SD1 from the first interface 70X of the first sensor device 20X. The first detection data SD1 is the detection data SSD1 output by the first detection circuit 60X at the falling edge of the signal SYCINT. The digital interface 82 also receives second detection data SD2 from the second interface 70Y of the second sensor device 20Y. The second detection data SD2 is the detection data SSD2 output by the second detection circuit 60Y at the falling edge of the signal SYCINT. The detection data SDAT received by the digital interface 82 indicates the first detection data SD1 or the second detection data SD2. Although only one detection data is illustrated here, the digital interface 82 receives both the first detection data SD1 and the second detection data SD2.
[0033] When internal interrupt processing begins, the processing circuit 90 generates a signal SYACC that causes the signal processing circuit 92 to execute arithmetic processing. FIG. 4 shows an example in which the signal SYACC becomes active for a predetermined period from the falling edge of the signal SYCINT. Here, the signal SYACC is assumed to be high-active. During the period in which the signal SYACC is active, the signal processing circuit 92 adds the detection data SDAT to the accumulated data SDATC at that time and updates the accumulated data SDATC based on the result of this addition. This update is performed, for example, when the active period of the signal SYACC ends. The detection data SDAT is added for each internal interrupt processing, thereby generating accumulated data SDATC. While FIG. 4 shows only one accumulated data, accumulation is performed on each of the first detected data SD1 and the second detected data SD2 to generate first accumulated data and second accumulated data.
[0034] The interrupt controller 94 generates an external interrupt signal at the edge of the external synchronization signal EXSYC, and the microcontroller 80 starts external interrupt processing in response to the external interrupt signal. Figure 4 shows an example in which external interrupt processing starts at the falling edge of the external synchronization signal EXSYC. When external interrupt processing starts, the signal processing circuit 92 resets the accumulated data SDATC to zero. This allows the detection data SDAT to be accumulated from one edge of the external synchronization signal EXSYC to the next edge. As shown in Figure 4, when the detection data SDAT values after the external synchronization signal EXSYC are input are 15, 20, 25, -5, -10, etc., the accumulated data SDATC values are 0, 0 + 15 = 15, 15 + 20 = 35, 35 + 25 = 60, 60 - 5 = 55, 55 - 10 = 45, etc. The accumulated data SDATC immediately before being reset at the edge of the external synchronization signal EXSYC is designated DSMk and DSMk + 1. k is an integer and is an index indicating which external synchronization signal EXSYC the accumulated data corresponds to.
[0035] When the accumulated data SDATC is reset, the processing circuit 90 stores the immediately preceding accumulated data DSMk, DSMk+1 in the register unit 91 and outputs a data ready signal DRDY to the host device 210. Upon receiving the data ready signal DRDY, the host device 210 issues a read request to the host interface 96, and the host interface 96 outputs the accumulated data DSMk, DSMk+1 stored in the register unit 91 to the host device 210 as output data SDATQ. Note that when the host interface 96 performs UART-standard communication, it may output the accumulated data DSMk, DSMk+1 to the host device 210 without outputting the signal DRDY to the host device 210.
[0036] In this embodiment, the sensor module 10 includes a first sensor device 20X, a second sensor device 20Y, and a microcontroller 80. The first sensor device 20X includes a first sensor element 50X, a first detection circuit 60X that receives a signal from the first sensor element 50X and performs detection processing, and a first interface 70X that outputs first detection data SD1 from the first detection circuit 60X. The second sensor device 20Y includes a second sensor element 50Y, a second detection circuit 60Y that receives a signal from the second sensor element 50Y and performs detection processing, and a second interface 70Y that outputs second detection data SD2 from the second detection circuit 60Y. The microcontroller 80 includes a synchronization terminal TS that receives an external synchronization signal EXSYC. The microcontroller 80 receives the first detection data SD1 from the first sensor device 20X and the second detection data SD2 from the second sensor device 20Y. The microcontroller 80 obtains first accumulated data SDATC1 by accumulating the first detection data SD1 up to the synchronization timing of the external synchronization signal EXSYC, obtains second accumulated data SDATC2 by accumulating the second detection data SD2 up to the synchronization timing, and outputs the first accumulated data SDATC1 and the second accumulated data SDATC2 to the host device at the synchronization timing.
[0037] According to this embodiment, the data rate of the integrated data is slower than the sampling rate of the detected data. Therefore, when the microcontroller 80 outputs the integrated data to the host device, the load on the host device is reduced compared to when the microcontroller 80 outputs detected data. For example, the communication load on the host device or the computational load of the integration process, etc., is reduced. Because the host device communicates with or controls various sensors or devices included in the system, reducing the load on the sensor module 10 allows the processing load to be allocated to other sensors or devices.
[0038] Furthermore, according to this embodiment, the microcontroller 80 outputs integrated data to the host device in synchronization with the external synchronization signal EXSYC. This allows the host device to acquire synchronized data from various sensors, etc. That is, the host device can receive data from the sensor module 10 and other sensors in synchronization with the external synchronization signal EXSYC, and can perform various processes or controls using this synchronized data. For example, in autonomous navigation of a moving object, the position and attitude of the moving object can be detected using synchronized sensor outputs.
[0039] In addition, in this embodiment, the microcontroller 80 may obtain the first accumulated data SDATC1 by accumulating the first detection data SD1 between the synchronization timings of the external synchronization signal EXSYC, and obtain the second accumulated data SDATC2 by accumulating the second detection data SD2 between the synchronization timings.
[0040] In this embodiment, the microcontroller 80 may reset the first integrated data SDATC1 and the second integrated data SDATC2 at each synchronization timing.
[0041] According to this embodiment, the host device can acquire integrated data for each synchronization timing of the external synchronization signal EXSYC. The host device can use the integrated data as detection data of the sensor module 10, or can further process the data by integrating it. For example, if the sensor device is an angular velocity sensor and the external synchronization signal EXSYC is a 1 PPS signal, the integrated data indicates the rotation angle per second. In other words, the integrated data can be considered as angular velocity data in units of dps. The host device can use the received integrated data as angular velocity data, or can further integrate it to determine the rotation angle.
[0042] In this embodiment, the microcontroller 80 may output a signal indicating the completion of the integration when the integration between the synchronization timings is completed. In the examples of Figures 2 and 4, the data ready signal DRDY is the "signal indicating the completion of the integration."
[0043] According to this embodiment, when the host device receives a signal notifying completion of the accumulation, it can execute a communication process to receive the accumulation data and obtain the result of the completed accumulation.
[0044] In this embodiment, the external synchronization signal EXSYC may be a time reference signal obtained from a satellite positioning system, also known as a Global Navigation Satellite System (GNSS), such as the Global Positioning System (GPS), the Quasi-Zenith Satellite System (QZSS), GLONASS, or Galileo.
[0045] According to this embodiment, the microcontroller 80 can output the integrated data to the host device in synchronization with the time reference signal. For example, in a system that performs processing or control in synchronization with the time reference signal, the host device can obtain data synchronized with the time reference signal from the sensor module 10 and perform processing or control.
[0046] 2. Second configuration example 5 shows a second configuration example of the microcontroller 80. Components already described are given the same reference numerals, and descriptions of those components will be omitted where appropriate. Below, differences from the first configuration example will be mainly described. In the second configuration example, the processing circuit 90 includes a counter 93.
[0047] The counter 93 counts a predetermined time from the synchronization timing of the external synchronization signal EXSYC. The microcontroller 80 includes an oscillator circuit (not shown), and the counter 93 performs a counting operation using a clock signal from the oscillator circuit. Alternatively, a clock signal may be input from an oscillator circuit external to the microcontroller 80, and the counter 93 may perform a counting operation using the clock signal.
[0048] The register unit 91 stores setting information indicating a predetermined time. The setting information is, for example, information indicating a count value corresponding to the predetermined time. For example, the host device writes the setting information to the register unit 91 via the host interface 96. The processing circuit 90 compares the count value of the counter 93 with the setting information stored in the register unit 91 to determine whether the predetermined time has been counted.
[0049] Fig. 6 is an example timing chart illustrating the operation of the microcontroller 80 in the second configuration example. Fig. 6 shows an example in which a 10 pulse / second PPS signal is input to the microcontroller 80 as the external synchronization signal EXSYC, the counter 93 counts at 50 kHz, and the predetermined time period corresponds to 1000 counts.
[0050] The processing circuit 90 resets the count value CTVAL of the counter 93 to zero at the edge timing of the external synchronization signal EXSYC. The counter 93 increments the count value CTVAL based on a 50 kHz clock signal. The processing circuit 90 generates the internal synchronization signal CSYC when the count value CTVAL matches 1000 counts. The signal processing circuit 92 resets the accumulated data SDATC1 to SDATCn at the edge timing of the external synchronization signal EXSYC and the internal synchronization signal CSYC. The signal processing circuit 92 generates the accumulated data SDATC1 to SDATCn by accumulating the detection data SD1 to SDn from the edge timing of the external synchronization signal EXSYC to the edge timing of the internal synchronization signal CSYC, and from the edge timing of the internal synchronization signal CSYC to the edge timing of the external synchronization signal EXSYC.
[0051] The microcontroller 80 generates a data ready signal DRDY at the edge timing of the external synchronization signal EXSYC and the internal synchronization signal CSYC and outputs it to the host device. When the host device receives the data ready signal DRDY, it reads out the first accumulated data SDATC1 to the n-th accumulated data SDATCn via the host interface of the microcontroller 80.
[0052] 7 is a signal waveform diagram illustrating the operation of the sensor module 10 using the microcontroller 80 of the second configuration example. Here, the number of sensor devices is assumed to be n=2. The process up to when the microcontroller 80 receives the detection data SDAT from each sensor device is the same as that shown in FIG.
[0053] The interrupt controller 94 generates an external interrupt signal at the edge timing of the external synchronization signal EXSYC, and the microcontroller 80 starts external interrupt processing in response to the external interrupt signal. FIG. 7 shows an example in which external interrupt processing starts at the falling edge timing of the external synchronization signal EXSYC. When external interrupt processing starts, the signal processing circuit 92 resets the accumulation data SDATC to zero. Thereafter, the signal processing circuit 92 adds the detection data SDAT to the accumulation data SDATC while the signal SYACC is active.
[0054] The processing circuit 90 generates the internal synchronization signal CSYC when the count value CTVAL matches 1000 counts, which indicates a predetermined period. The signal processing circuit 92 resets the accumulated data SDATC to zero at the edge timing of the internal synchronization signal CSYC. FIG. 7 shows an example in which the accumulated data SDATC is reset at the falling edge timing of the internal synchronization signal CSYC. Thereafter, the signal processing circuit 92 adds the detection data SDAT to the accumulated data SDATC while the signal SYACC is active.
[0055] As a result, the detection data SDAT is accumulated from the edge of the external synchronization signal EXSYC to the edge of the internal synchronization signal CSYC, and from the edge of the internal synchronization signal CSYC to the edge of the external synchronization signal EXSYC. As shown in Figure 7, assume that the detection data SDAT values after the external synchronization signal EXSYC is input are 15, 20, 25, -5, -10, and so on. When the internal synchronization signal CSYC is generated at SDAT=25, the accumulated data SDATC values are 0, 0 + 15 = 15, 15 + 20 = 35, and 35 + 35 = 60. The accumulated data SDATC is reset by the internal synchronization signal CSYC to 0, 0 - 5 = -5, and -5 - 10 = -15. The accumulated data SDATC immediately before being reset by the edges of the external synchronization signal EXSYC and the internal synchronization signal CSYC are assumed to be DSMk, 60, and DSMk+1. k is an integer and is an index indicating which external synchronization signal EXSYC the accumulated data corresponds to.
[0056] When the accumulation data SDATC is reset, the processing circuit 90 stores the immediately preceding accumulation data DSMk, 60, and DSMk+1 and the count values 5000, 1000, and 5000 in the register unit 91 and outputs a data ready signal DRDY to the host device 210. The host device 210 receives the data ready signal DRDY and issues a read request to the host interface 96, and the host interface 96 outputs the accumulation data DSMk, 60, and DSMk+1 stored in the register unit 91 as output data SDATQ and the count values 5000, 1000, and 5000 as output data CTVALQ to the host device 210. Note that when the host interface 96 performs UART-standard communication, it may output the accumulation data DSMk, 60, and DSMk+1 and the count values 5000, 1000, and 5000 to the host device 210 without outputting the signal DRDY to the host device 210.
[0057] In this embodiment, the microcontroller 80 obtains the first accumulated data SDATC1 by accumulating the first detection data SD1 between output timings including the synchronization timing of the external synchronization signal EXSYC and the timing a predetermined time after the synchronization timing, and obtains the second accumulated data SDATC2 by accumulating the second detection data SD2 between output timings.
[0058] According to this embodiment, the microcontroller 80 can output the integrated data to the host device at any output timing, not just at the synchronization timing of the external synchronization signal EXSYC. The host device may acquire data from sensors and the like with various synchronization timings, but it can acquire the integrated data from the sensor module 10 in accordance with these various synchronization timings and use the synchronized data to perform various processes or controls.
[0059] In this embodiment, the sensor module 10 may include a register that stores setting information for the predetermined time period. The microcontroller 80 may set the timing after the predetermined time period based on the setting information.
[0060] According to this embodiment, by writing setting information to the register from outside the sensor module 10, the output timing of the integrated data can be set to any timing.
[0061] In this embodiment, the microcontroller 80 may reset the first integrated data SDATC1 and the second integrated data SDATC2 at each output timing.
[0062] According to this embodiment, the integrated data is reset at each output timing, so that the integrated data becomes data obtained by integrating the detection data between output timings. This allows the host device to acquire the integrated data for each output timing. The host device can use the integrated data as detection data from the sensor module 10, or can further process the data, such as by integrating it. For example, if the sensor device is an angular velocity sensor, the integrated data can be converted into rotation angles per second from the integrated data and the time between output timings, and used as angular velocity data in units of dps. Alternatively, the host device can further integrate the integrated data to determine the rotation angle.
[0063] In this embodiment, the microcontroller 80 may output a signal indicating the completion of the integration to the outside when the integration between the output timings is completed. In the examples of Figures 6 and 7, the data ready signal DRDY is the "signal indicating the completion of the integration."
[0064] According to this embodiment, when the host device receives a signal notifying completion of the accumulation, it can execute a communication process to receive the accumulation data and obtain the result of the completed accumulation.
[0065] 3. Sensor Devices Fig. 8 shows a configuration example of the sensor device 20. The sensor device 20 corresponds to each of the first sensor device 20X and the second sensor device 20Y in Fig. 1, Fig. 3, and Fig. 5. The sensor device 20 includes a sensor element 50, a detection circuit 60, a processing circuit 66, and an interface 70.
[0066] The detection circuit 60 includes an analog circuit 62 having an amplification circuit 63 that amplifies the signal from the sensor element 50, and an A / D conversion circuit 64 that converts the analog signal from the analog circuit 62 into digital data. The processing circuit 66 includes a register 67. The interface 70 includes a parallel / serial conversion circuit 72, a serial / parallel conversion circuit 74, and a control circuit 76 that performs control processing of the interface.
[0067] Based on the clock signal ADCK with frequency f1, the A / D conversion circuit 64 samples the analog detection signal from the analog circuit 62 and performs A / D conversion. The A / D conversion circuit 64 outputs the detection data ADQ at an output sampling rate corresponding to the frequency f1. The register 67 holds the detection data ADQ. The detection data ADQ output at this frequency f1 corresponds to the detection data SSD1 and SSD2 in FIGS. 4 and 7. When the resolution of the A / D conversion of the A / D conversion circuit 64 is k bits, the detection data ADQ is, for example, k-bit parallel data.
[0068] The serial data of the data input signal SDI from the microcontroller 80 is converted into parallel data by the serial / parallel conversion circuit 74. The microcontroller 80 transmits a read command to the interface 70 at the edge of the signal SYCINT. When the interface 70 receives the read command, the parallel / serial conversion circuit 72 converts the detection data ADQ held in the register 67 into serial data and outputs it to the microcontroller 80 as the data output signal SDO. The frequency of the signal SYCINT is f2 < f1, and the interface 70 outputs the detection data ADQ at an output sampling rate corresponding to the frequency f2. The detection data ADQ output at this frequency f2 corresponds to the detection data SD1 and SD2 in FIGS. 4 and 7.
[0069] FIG. 9 shows a configuration example of an angular velocity sensor device as an example of a sensor device. The angular velocity sensor device 30 includes a vibrator 56, a drive circuit 58, a detection circuit 60, a processing circuit 66, and an interface 70.
[0070] The drive circuit 58 may include an amplifier circuit that receives and amplifies the feedback signal DG from the vibrator 56, an AGC circuit that performs automatic gain control, or an output circuit that outputs the drive signal DS to the vibrator 56. For example, the AGC circuit automatically adjusts the gain so that the amplitude of the feedback signal DG from the vibrator 56 remains constant. The output circuit outputs, for example, a rectangular wave drive signal DS to the vibrator 56. The detection circuit 60 may include an amplifier circuit, a synchronous detection circuit, an A / D conversion circuit, or the like. The amplifier circuit receives the detection signals S1 and S2 from the vibrator 56 and performs charge-to-voltage conversion and signal amplification of the detection signals S1 and S2, which are differential signals. The synchronous detection circuit uses the synchronization signal from the drive circuit 58 to perform synchronous detection to extract the desired wave. The A / D conversion circuit converts the analog detection signal after synchronous detection into digital detection data and outputs it to the processing circuit 66. The processing circuit 66 performs various processes on the detection data, such as zero point correction, sensitivity adjustment, filter processing, or temperature correction, and outputs the processed detection data to the interface 70.
[0071] In FIG. 9, a vibrator with a double-T structure is used as vibrator 56. Alternatively, a tuning-fork or H-shaped vibrator may be used as vibrator 56. Vibrator 56 includes drive arms 38A, 38B, 38C, and 38D, detection arms 39A and 39B, a base 31, and connecting arms 32A and 32B. Detection arms 39A and 39B extend from rectangular base 31 in the +y-axis and -y-axis directions. Connecting arms 32A and 32B extend from base 31 in the +x-axis and -x-axis directions. Drive arms 38A and 38B extend from the tip of connecting arm 32A in the +y-axis and -y-axis directions, respectively. Drive arms 38C and 38D extend from the tip of connecting arm 32B in the +y-axis and -y-axis directions. Plumbs for adjusting the frequency are provided on the tip sides of drive arms 38A, 38B, 38C, and 38D and detection arms 39A and 39B. If the z-axis is the thickness direction of oscillator 56, oscillator 56 detects angular velocity around the z-axis.
[0072] Drive electrodes 33 are formed on the upper and lower surfaces of drive arms 38A and 38B, and drive electrodes 34 are formed on the right and left sides of drive arms 38A and 38B. Drive electrodes 34 are formed on the upper and lower surfaces of drive arms 38C and 38D, and drive electrodes 33 are formed on the right and left sides of drive arms 38C and 38D. A drive signal DS from drive circuit 58 is supplied to drive electrode 33, and a feedback signal DG from drive electrode 34 is input to drive circuit 58. A detection electrode 35 is formed on the upper and lower surfaces of detection arm 39A, and ground electrodes 37 are formed on the right and left sides of detection arm 39A. A detection electrode 36 is formed on the upper and lower surfaces of detection arm 39B, and ground electrodes 37 are formed on the right and left sides of detection arm 39B. Detection signals S1 and S2 from detection electrodes 35 and 36 are input to detection circuit 60.
[0073] Next, the operation of the angular velocity sensor device 30 will be described. When the drive circuit 58 applies a drive signal DS to the drive electrode 33, the drive arms 38A, 38B, 38C, and 38D undergo flexural vibration as indicated by arrow C1. Each drive arm alternates between the vibration mode indicated by the solid arrow and the vibration mode indicated by the dotted arrow at a predetermined frequency. In this state, when an angular velocity about the z-axis is applied to the oscillator 56, the Coriolis force causes the drive arms 38A, 38B, 38C, and 38D to vibrate as indicated by arrow C2. This vibration indicated by arrow C2 is transmitted to the base 31 via the connecting arms 32A and 32B, causing the detection arms 39A and 39B to flexurally vibrate in the direction indicated by arrow C3. The piezoelectric effect of the flexural vibration of the detection arms 39A and 39B generates charge signals, which are input to the detection circuit 60 as detection signals S1 and S2, allowing angular velocity around the z-axis to be detected.
[0074] 4. Measurement System 10 shows an example of the configuration of a measurement system 200 of this embodiment. The measurement system 200 includes a sensor module 10 and a host device 210 electrically connected to the sensor module 10. The measurement system 200 can also include a GPS receiver 220, an antenna 222 for GPS reception, and an oscillator 230. In FIG. 10, the sensor module 10 is used as a six-axis inertial measurement unit (IMU).
[0075] The host device 210 can be realized by various processors such as an MPU or a CPU. The host device 210 may also be realized by an ASIC integrated circuit device. The host device 210 includes a DSP 212 (digital signal processor) that performs digital signal processing, and a clock signal generation circuit 213 that generates a clock signal.
[0076] The GPS receiver 220 receives signals from GPS satellites via the antenna 222. That is, it receives satellite signals with superimposed position information as GPS carrier waves. The GPS receiver 220 is a GPS receiver and can be implemented as an integrated circuit device including a GPS receiver circuit. The host device 210 detects GPS positioning data representing the position, velocity, and orientation of a measurement object, such as a moving object, based on the signals received by the GPS receiver 220. The position of the measurement object is represented by latitude, longitude, or altitude. This GPS positioning data also includes status data indicating the reception status or reception time. The host device 210 also receives acceleration data and angular velocity data from the sensor module 10 and performs inertial navigation calculations on these data to obtain inertial navigation positioning data. The inertial navigation positioning data includes acceleration data and attitude data of the measurement object. The host device 210 then calculates the position, attitude, or both the position and attitude of the measurement object based on the obtained inertial navigation positioning data and GPS positioning data. If the object to be measured is a moving object such as an automobile, the position on the ground where the moving object is traveling is calculated. Note that the process of calculating the position of the object to be measured can be realized by Kalman filter processing using the DSP 212.
[0077] The oscillator 230 generates an oscillation clock signal using an oscillator such as a quartz crystal oscillator. The oscillator 230 is, for example, a temperature compensated oscillator (TCXO). Alternatively, an oven-controlled oscillator (OCXO) equipped with a thermostatic oven may be used as the oscillator 230. The clock signal generation circuit 213 generates various clock signals used in the host device 210 based on the oscillation clock signal from the oscillator 230. In this case, the clock signal generation circuit 213 generates the clock signal based on a time reference signal, which is a signal obtained from a satellite positioning system such as GPS. The clock signal generation circuit 213 generates, for example, an external synchronization signal EXSYC as one of the clock signals.
[0078] The host device 210 can obtain accurate absolute time information based on the time information included in the satellite signal received by the GPS receiver 220. The time information includes information such as the year, month, date, hour, minute, and second. The GPS receiver 220 outputs a PPS signal, which generates a pulse every second, as a time reference signal. The clock signal generation circuit 213 is configured with a PLL circuit that operates using an oscillation clock signal from the oscillator 230. The PPS signal is input to the PLL circuit as a reference signal for clock synchronization. The PLL circuit then generates a clock signal synchronized with the PPS signal, which is the time reference signal. The host device 210 outputs an external synchronization signal EXSYC synchronized with the time reference signal to the sensor module 10 in this manner. Note that the PPS signal from the GPS receiver 220 may also be input to the sensor module 10 as the external synchronization signal EXSYC. The PPS signal is not limited to one pulse per second, and may be, for example, 10 pulses per second, as shown in FIG. 2 .
[0079] 5.Electronic equipment 11 shows an example of the configuration of an electronic device 300 according to this embodiment. The electronic device 300 includes the sensor module 10 according to this embodiment and a processing unit 320 that performs processing based on an output signal from the sensor module 10. The electronic device 300 may also include a communication unit 310, an operation unit 330, a display unit 340, a storage unit 350, and an antenna 312.
[0080] The communication unit 310 is, for example, a wireless circuit, and receives and transmits data from and to the outside via the antenna 312. The processing unit 320 controls the electronic device 300 and performs various digital processing of data transmitted and received via the communication unit 310. The processing unit 320 also performs processing based on the output signal of the sensor module 10. Specifically, the processing unit 320 performs signal processing such as correction or filtering on the output signal, such as detection data, of the sensor module 10, or performs various control processing of the electronic device 300 based on the output signal. The functions of the processing unit 320 can be realized by a processor such as an MPU or CPU. The operation unit 330 allows the user to perform input operations and can be realized by operation buttons or a touch panel display. The display unit 340 displays various information and can be realized by a display such as a liquid crystal or organic electroluminescence (EL). The memory unit 350 stores data, and its function can be realized by semiconductor memory such as RAM or ROM.
[0081] The electronic device 300 of this embodiment can be applied to, for example, video-related devices such as digital still cameras or video cameras, in-vehicle devices, wearable devices such as head-mounted displays or watch-related devices, inkjet discharge devices, robots, personal computers, personal digital assistants, printing devices, or projection devices. Examples of in-vehicle devices include car navigation systems or devices for autonomous driving. Examples of watch-related devices include watches or smartwatches. Examples of inkjet discharge devices include inkjet printers. Examples of personal digital assistants include smartphones, mobile phones, portable game consoles, notebook PCs, and tablet devices. The electronic device 300 of this embodiment can also be applied to electronic organizers, electronic dictionaries, calculators, word processors, workstations, videophones, security TV monitors, electronic binoculars, POS terminals, medical devices, fish finders, measuring instruments, mobile terminal base station devices, instruments, flight simulators, network servers, and the like. Examples of medical devices include electronic thermometers, blood pressure monitors, blood glucose meters, electrocardiogram measuring devices, ultrasound diagnostic devices, and electronic endoscopes. The instruments are those used in vehicles, aircraft, ships, etc.
[0082] Although the present embodiment has been described in detail above, it will be readily apparent to those skilled in the art that many modifications are possible without substantially departing from the novel features and advantages of the present disclosure. Therefore, all such modifications are intended to be within the scope of the present disclosure. For example, a term described at least once in the specification or drawings with a different term having a broader or similar meaning may be replaced with that different term anywhere in the specification or drawings. Furthermore, all combinations of the present embodiment and modifications are also within the scope of the present disclosure. Furthermore, the configurations and operations of the sensor element, detection circuit, interface, sensor device, digital interface, processing circuit, signal processing circuit, interrupt controller, host interface, microcontroller, host device, measurement system, electronic device, etc. are not limited to those described in the present embodiment, and various modifications are possible. [Explanation of symbols]
[0083] 10...sensor module, 20...sensor device, 20X...first sensor device, 20Y...second sensor device, 30...angular velocity sensor device, 50...sensor element, 50X...first sensor element, 50Y...second sensor element, 60...detection circuit, 60X...first detection circuit, 60Y...second detection circuit, 70...interface, 70X...first interface, 70Y...second interface, 80...microcontroller, 82...digital interface, 90...processing circuit, 91...register unit, 92...signal processing circuit, 93...counter, 94...interrupt controller, 96...host interface, 200...measurement system, 210...host device, 213...clock signal generation circuit, 220...GPS receiving unit, 222...antenna, 230...oscillator, 300...electronic device, 310...communication unit, 312...antenna, 320...processing unit, 330...operation unit, 340...display unit, 350...storage unit, CTVAL...count value, DRDY...data ready signal, EXSYC...external synchronization signal, SD1...first detected data, SD2...second detected data, SDAT...detected data, SDATC...accumulated data, SDATC1...first accumulated data, SDATC2...second accumulated data, TS...synchronization terminal
Claims
1. a first sensor device including a first sensor element, a first detection circuit that receives a signal from the first sensor element and performs detection processing, and a first interface that outputs first detection data from the first detection circuit; a second sensor device including a second sensor element, a second detection circuit that receives a signal from the second sensor element and performs detection processing, and a second interface that outputs second detection data from the second detection circuit; a microcontroller including a synchronization terminal to which an external synchronization signal is input, and to which the first detection data from the first sensor device and the second detection data from the second sensor device are input; Including, The microcontroller A sensor module characterized by obtaining first accumulated data by accumulating the first detection data up to the synchronization timing of the external synchronization signal, obtaining second accumulated data by accumulating the second detection data up to the synchronization timing, and outputting the first accumulated data and the second accumulated data to a host device at the synchronization timing.
2. The sensor module according to claim 1, The microcontroller A sensor module characterized in that the first integrated data is obtained by integrating the first detection data between synchronization timings of the external synchronization signal, and the second integrated data is obtained by integrating the second detection data between the synchronization timings.
3. The sensor module according to claim 2, The microcontroller The sensor module is characterized in that the first integrated data and the second integrated data are reset at each synchronization timing.
4. The sensor module according to claim 2, The microcontroller The sensor module is characterized in that, when the integration between the synchronization timings is completed, a signal notifying the completion of the integration is output to the outside.
5. The sensor module according to any one of claims 1 to 4, The microcontroller A sensor module characterized in that the first accumulated data is obtained by integrating the first detection data between output timings including the synchronization timing of the external synchronization signal and a timing a predetermined time after the synchronization timing, and the second accumulated data is obtained by integrating the second detection data between the output timings.
6. The sensor module according to claim 5, a register for storing setting information of the predetermined time; The microcontroller The sensor module is characterized in that the timing after the predetermined time is set based on the setting information.
7. The sensor module according to claim 5, The microcontroller The sensor module is characterized in that the first integrated data and the second integrated data are reset at each output timing.
8. The sensor module according to claim 5, The microcontroller The sensor module is characterized in that, when the integration between the output timings is completed, a signal notifying completion of the integration is output to the outside.
9. The sensor module according to any one of claims 1 to 4, The sensor module is characterized in that the external synchronization signal is a time reference signal obtained from a satellite positioning system.
10. A sensor module according to any one of claims 1 to 4; the host device electrically connected to the sensor module; A measurement system comprising:
11. 11. The measurement system according to claim 10, The host device A measurement system that determines at least one of the position and attitude of a moving object based on positioning information from a satellite positioning system and the output signal of the sensor module.
Citation Information
Patent Citations
Inertial measurement unit
JP2022072338A