InterComp - With qualified application engineers
By InterComp | 1105 days ago.

Conversores ADC: O que são, tipos e princípios de funcionamento

When we are working on a project, whether using Arduino, PLC or any other processor, our inputs are signals coming from our real world, like the buttons we press, an LDR checking the ambient light level, an ultrasound sensor for our robot avoid a collision or any other type of sensor that our project requires. These signals can be classified as digital or analog depending on how they interact with the processor.

Digital signals are those that have only two logical states, “on” or “off”, “one” or “zero”, according to the literature we studied. Normally, the output in zero state sends a signal with a value very close to zero volts, while an output in state 1 sends a signal with a fixed voltage level that will depend on the sensor used, which can be the same value as the power supply or a logical value with 5V.

Analog signals, on the other hand, can represent infinite values ​​within a range, for example if we work with a temperature sensor with a working range from 0⁰C to 100⁰C with an output that uses a 0V to 5V signal, this signal will be proportional to the temperature measurement within the measuring range of the sensor, as shown in the table:

Temperature (⁰C) Sensor output (V)
0 0.0
25 1.25
50 2.5
62 3.1
90 4.5
100 5.0


Working with analog signals all values ​​are considered, as a value of 2.5V is different from 2.51V, for example, although for us this difference may not be so relevant.

To bring these analog values ​​to the digital world, that is, for infinite values ​​to be converted into "zeros" and "ones" we use circuits called analog-digital converters, also called A/D converters or simply ADC (which is the acronym in English to Analog to Digital Converter ), which are mixed circuits as they will transform one type of signal into another making an interface from the real world to the digital world.

Digital Representation of Values

All modern processors work with digital signals, whether they come from memory, an address or inputs. But if digital signals are represented by “zeros” and “ones”, how are larger values ​​represented?

The representation of a value inside the processor is done in parallel, that is, the joining of several bits at the same time to represent a single value.

If we have a bit, we can represent only two values ​​for it, 0 or 1. However, if we have two bits to represent a number, we can represent 4 values, defining a weight for each bit.

Let's see how this relationship with just one bit looks like:

BIT Value
0 0
1 1


Now by combining 2 bits, we can form four more values ​​in a conversion to a larger value:

BIT 1 BIT 2 Value
0 0 0
0 1 1
1 0 2
1 1 3


The range of possible values ​​increases exponentially as the number of bits increases, but the complexity of developing a processor that can work with this bus also increases accordingly.

These bits when working together in parallel form what we call a bus, which is a path for data transfer between different components of the electronic circuit or inside processors, where this bus is more common to be found with 8 bits or 16 bits , nowadays on home computers it reaches 64 bits.

On 8-bit buses, the values ​​go from 0 to 255 on 16-bit buses, we have a range from 0 to 65535 and, for curiosity, on 64-bit buses the values ​​go from 1.8×10^19.

This number of bits representing the analog value we call resolution, the output value of the converter will be as close to the input as its resolution.

Resolution

For a digital output as close as possible to the analog value, a larger amount of bits is necessary. An 8-bit converter will have its working range value divided into 256 parts. A 12-bit converter will have this value divided by 4096, each variation will be better perceived by the circuit.

Comments

  • No comment. Be the first to comment!

Aguarde..