Share this

Design of low-power smart sensors

2026-04-06 05:59:41 · · #1
In industrial control processes, it is often necessary to measure certain parameters. However, the output signals of general sensors are weak and unsuitable for long-distance transmission. To reduce interference, twisted-pair transmitters with 4-20mA current output are typically used. Transmitters that perform analog signal processing suffer from limitations in nonlinear compensation due to circuit complexity, making it difficult to achieve temperature compensation across the entire temperature range and thus failing to meet high accuracy requirements. With the increasing prevalence of low-power, high-precision microcontrollers, Σ-Δ ADCs, and Σ-Δ DACs, technical pathways have been provided for the design of high-precision intelligent transmitters. This paper introduces a single-chip sensor signal interface design using Texas Instruments' recently released multi-functional microcontroller, the MSP430F2013, which integrates a 16-bit Σ-Δ ADC. Its 2kb program space and 128b data storage space enable intelligent data acquisition and differential transmission. Data is transmitted in frames, and CRC checks are used for error control during transmission. The MSP430F2013 is a microcontroller from TI's MSP430 series. It features a 16-bit RISC CPU, 16-bit registers and a constant generator for high code efficiency; five low-power modes to extend battery life in portable measurement applications; a digitally controlled oscillator (DCO) that allows switching from low-power to normal mode in less than 1μs; a 16-bit timer; 10 I/O ports; synchronous communication protocols (SPI or I2C); and a 16-bit Σ-Δ ADC. A typical application of the MSP430F2013 is in sensing systems that capture analog signals, convert them to digital signals, and then use the digital signals for screen display or transmission to a host system for further processing. System Introduction Common analog-to-digital converter (ADC) circuits amplify analog signals and typically require an interface circuit with a microcontroller. This system, however, boasts high integration; a single chip performs signal amplification, ADC conversion, and software filtering. It also implements a single-wire protocol, enabling direct communication with high-end computers without the need for a separate microcontroller interface. The MSP430F2013 is a low-power device. Operating at 1MHz, the system draws only 220μA, while in standby mode it draws a mere 0.5μA, and in RAM-saving mode, the draw is even lower at 0.1μA. This low power consumption allows for battery power, making it suitable for portable measurements. This system utilizes the MSP430F2013 for intelligent data acquisition. Data acquired from front-end sensors is amplified by a process-controlled gain amplifier, then converted to digital by the ADC. The converted data is output asynchronously in a serial manner. Figure 1 shows the schematic diagram of the entire system. Figure 1 shows the system schematic. To simplify the system and avoid the influence of external crystal oscillators, the system uses an internal DCO as the clock. The system utilizes differential data transmission, eliminating the need for data isolation. In this application, the transmission rate is configured to 9600 b/s, and the baud rate can be set using a serial port. Regardless of whether the system uses an internal or external reference voltage, the input voltage has a corresponding range; therefore, the front-end analog input must be limited using a Zener diode. The system can adjust the conversion accuracy according to the magnitude of the external signal. Simply pull P2.6 high and adjust the external analog input to the measured maximum value; the system will then automatically adjust the PGA (Programmable Gain Amplifier). Due to the use of half-duplex differential transmission, the system is easily expandable. Multiple sensors can be used to form a sensor network, and data acquisition can be controlled via a bus. System Software The system software flowchart is shown in Figure 2. Figure 2 System Software Flowchart Initialization The initialization section mainly performs the following functions: Initializing the system clock to ensure the system operating frequency is the standard 8MHz clock specified by the DCO. Configuring the system ports; this process is particularly important due to the multiplexing of chip pin functions. By setting SD16AE and SD16INCTL0, the operating states of P1.0 and P1.1 are A0+ and A0-, respectively. P2.6 and P2.7 are set as general-purpose I/O ports, with P2.6 used as the control signal for adjusting the PGA and P2.7 used as the data transmission channel. The system's AD converter is initialized using the system's internal reference voltage. Since the input frequency can only be up to 1.1MHz, the system's main frequency is divided by 8 for input. The MSP430F2013 ADC does not have input buffering; buffering is disabled in the buffer mode selection. The system is used to measure continuously changing physical quantities, so the system is set to continuous conversion mode. Measurement Interrupts are enabled during measurement. When a measurement result is generated, an interrupt is generated, the interrupt flag is set, and the measurement result is stored in the conversion result register. When the measurement result is read from the conversion result register, the interrupt flag is automatically reset. Therefore, reading the conversion result only requires checking the interrupt flag. The measurement result filtering uses the median average filtering method. Each measurement value is sampled 10 times, the maximum and minimum values ​​are removed, and the arithmetic mean of the remaining 8 values ​​is taken. This algorithm effectively overcomes fluctuations caused by accidental factors, and is particularly suitable for physical quantities that change slowly, such as temperature and liquid level. An internal reference voltage is used during measurement, and the voltage input range of the measurement signal is 0–500mV. When the input signal is at full scale and the highest bit of the analog-to-digital converter output is not 1, signal amplification is possible, with a maximum amplification factor of 32. When the amplification factor of the input signal is N, the range of the input signal will be correspondingly reduced to 1/N of its original value. For example, when the PGA amplification factor is selected as 2x, the voltage input range of the measurement signal is 0–250mV. The entire measurement process is represented by pseudocode as follows. int measure (void) { int i; if (SET==1) { Adjust gain; } For (i=0;i<10;i++) { Wait for conversion result; Read and save conversion result; } Accumulate conversion result; Find maximum and minimum value; Median average filtering; Return measurement result; } Data transmission Data is sent in frames, and the frame structure is shown in Figure 3. Figure 3: Data Frame Structure Diagram. Each frame includes a synchronization code, AD conversion result, and check code. Frame synchronization can use a specific synchronization code or gap synchronization; the second method is used here. When sending a data frame, the data transmission line is first pulled high for the duration of sending 16 data bits. The gap in the high level of the frame header is used for data frame synchronization. While parity check codes are simple error detection codes, their false negative rate is too high. The most widely used error detection code in computer networks and data communication is the Cyclic Redundancy Check (CRC), which has a much lower false negative rate and is easier to implement. The higher the order of the CRC generator polynomial, the lower the probability of misjudgment. This paper uses CCITT-16, whose generator polynomial is g(x) = x¹⁶ + x¹⁵ + x⁵ + 1. There are generally two methods to implement CRC: direct calculation and table lookup. Since the table lookup method requires at least 1kb of space to store the table values, the direct calculation method is used here. Single-wire serial output is used for data transmission, and I/O lines are used to simulate serial transmission. When sending bytes, data as shown in Figure 4 is sent sequentially on the I/O lines (the I/O line level is pulled low when the data is 0, and pulled high when the data is 1). The bit duration is calculated based on the baud rate; in this application, the baud rate is set to 9600b/s. When no data is being sent, the output I/O line remains high. Figure 4: Schematic diagram of the sequence of sent bytes. Data transmission is finally isolated by optocouplers, isolating the field and the data output. The circuit can also be easily modified according to the input requirements of the subsequent system. Conclusion Through practical application, the single-chip MSP430F2013 can realize the measurement of the output level of small signal sensors, with a conversion time of less than 1ms. It enables low-power measurement, with total power consumption not exceeding 6mW. This system is particularly suitable for implementing a smart sensor, ensuring 16-bit A/D conversion resolution when the input signal full-scale amplitude is greater than 40mV. Due to the use of half-duplex differential transmission, sensor networking can be easily achieved.
Read next

CATDOLL CATDOLL 115CM Milan (TPE Body with Hard Silicone Head)

Height: 115cm Weight: 19.5kg Shoulder Width: 29cm Bust/Waist/Hip: 57/53/64cm Oral Depth: 3-5cm Vaginal Depth: 3-15cm An...

Articles 2026-02-22