This content requires the Adobe Flash Player and a browser with JavaScript enabled. Click here to get the latest version of Adobe Flash Player.

Build a complete industrial-ADC interface using a microcontroller and a sigma-delta modulator

Patrick Weber and Craig Windish, Siemens Energy and Automation, Pittsburgh, Pennsylvania -- EDN Europe, 01 Aug 2007

Designers commonly use 0- to 20-mA, 0 to 10V isolated inputs for industrial-application-control signals. A combination of isolated supplies, the built-in isolation of an Analog Devices (www.analog.com) AD7400 sigma-delta modulator, and a Texas Instruments (www.ti.com) MSP430 microcontroller creates a design for industrial designers requiring complete, isolated, and robust analog-signal interfaces. A precise signal-conditioning circuit generates the small differential voltage that the AD7400 requires (Figure 1). The circuit generates the required 200-mV differential voltage. For clarity, the figure omits overvoltagediodes and protection circuits.

A 0- to 20-mA current loop converts to a voltage through a properly scaled resistor, R2, and enters a precision operational amplifier. The signal level, which connects to the negative input, gets a positive offset by maintaining constant voltage on the positive input of the amplifier. The 0 to 10V signal, such as that from a potentiometer, also scales to a voltage similar to that of the 0- to 20-mA signal and gets summed into the negative terminal of theAnalog Devices OP1177 amplifier, IC1.

A differential ADC-driver amplifier, Analog Devices’ AD8138, drives the AD7400. The gain scales such that the resultant signal is within ±200 mV, which the ADC requires. Finally, before connecting to the AD7400, the signal runs through a lowpass filter, which R10, R11, and C4 create between the positive and the negative terminals. The AD7400 converts this differential signal and processes it using a low-cost microcontroller. Sigma-deltamodulator ADCs, such as the AD7400, commonly interface to an FPGA or a DSP. However, this approach comes at a high price in both cost and complexity. For cost-sensitive applications not requiring advanced filtering, you canuse a simple microcontroller.

The AD7400 device has two outputs, MCLKOUT and MDAT (Figure 2). MCLKOUT, a 10-MHz clock, synchronizes the modulated data stream, MDAT. The AD7400 interprets MDAT as a percentage of ones over time. Because MDAT changes only at the rising edge of MCLKOUT, the circuit must AND together MDAT and MCLKOUT to create a stream of pulses that the microcontroller can count. The microcontroller first inverts MCLKOUTto prevent unintentional glitches from being counted at the transition edgesof MDAT. The figure shows MDAT,inverted MCLKOUT, and the resultingdata stream.

The pulsed data signal and the inverted MCLKOUT each feed into a separate timer/counter on the microcontroller (Figure 3). The TI MSP430F2274 provides two 16-bit counters and can support operating speeds as fast as 16 MHz. The circuit measures the ADC value by sampling the data counter when the clock counter signals an overflow interrupt. For this application, running an average number of data measurements on a circular buffer may conveniently filterthe data.


 

Our Sponsors



Ads by Google