Download presentation
Presentation is loading. Please wait.
1
Data acquisition and manipulation
Chapter Eleven Dr. Gheith Abandah
2
Outline Introduction The main features of a data acquisition system
The characteristics of an analog-to-digital converter The characteristics of the 16F873A analog-to-digital converter Summary Dr. Gheith Abandah
3
Analog vs. Digital Property Analog Digital Representation
Continuous voltage or current Binary Number Precision Infinite range of values Limited by the number’s length Resistance to Degradation Weak Tolerant to signal degradation Processing Limited Powerful Storage Impossible Possible Dr. Gheith Abandah
4
Analog to Digital Conversion
Most physical signals are analog. Analog signals are captured by sensors or transducers. Examples: temperature, sound, pressure, … Need to convert to digital signals to facilitate processing by the microcontroller. The device that does this is analog-to-digital converter (ADC). Dr. Gheith Abandah
5
ADC Types Dual ramp (slow with very high accuracy, for precision measurements) Flash converter (fast, lesser accuracy, for video or radar) Successive approximation (medium speed and accuracy, for general-purpose industrial applications, commonly found in embedded systems) Dr. Gheith Abandah
6
Conversion characteristic
Voltage Range Vr = Vmax – 0 Resolution = Vr / 2n Quantization error = ± Resolution / 2 = Vr / 2n+1 Dr. Gheith Abandah
7
Conversion Steps Get Sample Start conversion Wait
Read digital value (in parallel or serially) Usually need a voltage reference Dr. Gheith Abandah
8
Elements of a data acquisition system
Transducers: physical to electrical Amplify and offset circuits The input voltage should traverse as much of its input range as possible Voltage level shifting may also be required Filter: get rid of unwanted signal components Multiplexer: select one of multiple inputs Sampler: the conversion rate must be at least twice the highest signal frequency (Nyquist sampling criterion) ADC Dr. Gheith Abandah
9
Elements of a data acquisition system
Dr. Gheith Abandah
10
Sample and hold, and acquisition time
Dr. Gheith Abandah
11
Sample and hold, and acquisition time
Dr. Gheith Abandah
12
Example What should be the acquisition time for a 10-bit ADC?
The voltage should rise to ≥ Vs – quantization error = Vs - Vs / 2n+1 ≥ Vs(2047/2048) = Vs VC = Vs {1 − exp(−t/RC)} 0.9995Vs = Vs {1 − exp(−t/RC)} exp(−t/RC) = 1 − −t = RC ln(0.0005) t = 7.6RC Dr. Gheith Abandah
13
Typical timing requirement of one A-to-D conversion
Dr. Gheith Abandah
14
Data acquisition in the microcontroller environment
To operate to a good level of accuracy, an ADC needs a clean power supply and ground and no electromagnetic interference. When an ADC is integrated inside a microcontroller, it will be affected by the noisy internal power sources. So, integrated ADCs are not very accurate, typically 8- or 10-bit. Dr. Gheith Abandah
15
The PIC 16 Series Device Pins Features 16F873A 16F876A 28
3 parallel ports, 3 counter/timers, 2 capture/compare/PWM, 2 serial, 5 10-bit ADC, 2 comparators 16F874A 16F877A 40 5 parallel ports, 8 10-bit ADC, Dr. Gheith Abandah
16
The PIC® 16F87XA ADC module Dr. Gheith Abandah
17
Controlling the ADC The ADC is controlled by two SFRs: ADCON0 (1Fh)
The result of the conversion is placed in: ADRESH (1Eh) ADRESL (9Eh) Dr. Gheith Abandah
18
ADCON0: A/D Control Register 0 (address 1Fh)
ADCS1:0: conversion clock select CHS2:0: analog channel select GO/DONE’: conversion status The ADC interrupt flag ADIF and interrupt enable ADIE bits can also be used U: unimplemented ADON: A/D On Dr. Gheith Abandah
19
A/D Conversion Clock Select bits
A full 10-bit conversion takes around 12 TAD cycles TAD should be equal to or just greater than 1.6 μs Minimum 2TAD between two successive conversions Maximum conversion rate is 30 kHz, higher rate by switching to higher TAD after starting the conversion Dr. Gheith Abandah
20
ADCON1: A/D Control Register 1 (address 9Fh)
ADFM: result format select 1 = Right justified 0 = Left justified ADCS2: conversion clock select U: unimplemented PCFG3:0: port configuration control Dr. Gheith Abandah
21
A/D result format Dr. Gheith Abandah
22
A/D Port Configuration Control
Dr. Gheith Abandah
23
The analog input model Dr. Gheith Abandah
24
Calculating acquisition time
tac = Amplifier settling time + Hold capacitor charging time + Temperature coefficient tac = 2 μs + 7.6RC for 10-bit accuracy + (Temperature − 25◦C)(0.05 μs/◦C) Dr. Gheith Abandah
25
Calculating acquisition time - Example
RSS = 7kΩ, RIC = 1kΩ (VDD = 5V), RS = 0, Temp = 35 ◦C, TAD = 1.6 μs tac = 2 μs + 7.6(7kΩ + 1kΩ + 0)(120pF) + (35 − 25)(0.05 μs/◦C) = = 9.8 μs Total time = tac + 12TAD = μs = 29 μs Dr. Gheith Abandah
26
A/D Example – Page 1 ... bsf status,rp0 movlw B' ' ;set port A bits, movwf trisa ;ADC set as inputs movlw B' ' ;bits 0,1,3 analog input movwf adcon1 ;right justify result Dr. Gheith Abandah
27
A/D Example – Page 2 ... bcf status,rp0 movlw B' ' ;set up ADC: clock Fosc/8, ;switch ADC on but not converting, ;channel selection now is irrelevant movwf adcon0 Dr. Gheith Abandah
28
A/D Example – Page 3 main_loop movlw B' ' ;select channel 0 movwf adcon0 call delay20u ;acquisition time bsf adcon0,go ;start conversion btfsc adcon0,go_done ;conversion ended? goto $-1 movf adresh,0 ;read ADC output data high movwf ldr_left_hi bsf status,rp0 movf adresl,0 ;read ADC output data low bcf status,rp0 movwf ldr_left_lo Dr. Gheith Abandah
29
Summary - 1 Most signals produced by transducers are analog in nature, while all processing done by a microcontroller is digital. Analog signals can be converted to digital form using an analog-to-digital converter (ADC). The ADC generally forms just one part of a larger data acquisition system. Considerable care needs to be taken in applying ADCs and data acquisition systems, using knowledge among other things of timing requirements, signal conditioning, grounding and the use of voltage references. Dr. Gheith Abandah
30
Summary - 2 The 16F873A has a 10-bit ADC module that contains the features of a data acquisition system. Data values, once acquired, are likely to need further processing, including offsetting, scaling and code conversion. Standard algorithms exist for all of these, and Assembler libraries are published. A simple interface between the analog and digital world is the comparator, which is commonly used to classify an analog signal into one of two states. Dr. Gheith Abandah
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.