ANALOG TO DIGITAL CONVERTER (ADC)

Một phần của tài liệu điều khiển ổn định nhiệt độ sử dụng bộ điều khiển pi (Trang 54)

2.5.1 Giới thiệu

Dữ liệu trong thế giới của chúng ta là các dữ liệu tương tự (analog). Ví dụ nhiệt

độ không khí buổi sáng là 25oC và buổi trưa là 32oC, giữa hai mức giá trị này có vô số các giá trị liên tục mà nhiệt độ phải “đi qua” để có thể đạt mức 32oC từ 25oC, đại

lượng nhiệt độ như thế gọi là một đại lượng analog.

Trong khi đó, rõ ràng vi điều khiển là một thiết bị số (digital), các giá trị mà một vi điều khiển có thể thao tác là các con số rời rạc vì thực chất chúng được tạo thành từ sự kết hợp của hai mức 0 và 1.

Ví dụ chúng ta dùng một thanh ghi 8 bit trong vi điều khiển để lưu lại các giá trị

nhiệt độ từ 0oC đến 25oC, như chúng ta đã biết một thanh ghi 8 bit có thể chứa tối

đa 256 (28) giá trị nguyên từ 0 đến 255, như thế các mức nhiệt độ không nguyên

như 28.123oC sẽ không được ghi lại.

Nói cách khác chúng ta đã “số hóa” (digitalize) một dữ liệu analog thanh một

dữ liệu digital.

Quá trình “số hóa” này thường được thực hiện bởi một thiết bị gọi là “bộ

chuyển đổi tương tự - số” hay “Analog to Digital Converter (ADC)”.

2.5.2 Những khái niệm cơ bản về chuyển đổi

 Tín hiệu là gì?

Tín hiệu mà chúng ta xem xét ở đây là sự thay đổi giá trị điện áp của dòng điện thông qua một môi trường truyền dẫn (transmission medium) hiện tại. Có 2 loại tín hiệu nói chung: tuần hoàn và không tuần hoàn.

Tín hiệu tuần hoàn (Periodic signals): là tín hiệu lặp lại chính nó sau một khoảng thời gian nhất định (gọi là 1 chu kì), mà ở chu kì tiếp theo thì nó không chứa bất kì dữ liệu mới nào.

Tín hiệu không tuần hoàn (Aperiodic signal): không lặp lại theo bất cứ chu kì nào, vì vậy có thể chứa nhiều dữ liệu mới.

Ngoài ra tín hiệu cũng có thể phân thành tín hiệu số hay tín hiệu tương tự. - Tín hiệu tương tự (Analog): là loại tín hiệu có giá trị thay đổi liên tục theo thời

gian. Xét ví dụ về đồng hồ analog, ở đây thời gian trôi qua được hiển thị bởi

chuyển động của kim đồng hồ. Trong tín hiệu điện, một mức điện áp nhất định

tương ứng trực tiếp đến một hiện tượng vật lí được đo. Tín hiệu tương tự có lợi thế là nó có thể biễu diễn cho bất kì đại lượng nào bằng cách xuất ra một điện áp

GVHD: Ks.Nguyễn Văn Khanh 41 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

tương đương với đại lương được biểu diễn. Tín hiệu tương tự được xem là tín

hiệu của thế giới thực.

Ví dụ: Tín hiệu được truyền đi trong AM và FM radio là tín hiệu tương tự

Điện thoại đời cũ sử dụng tín hiệu tương tự để truyền đi dữ liệu tiếng nói đến

các văn phòng điện thoại trung tâm.

Các sensor luôn xuất dữ liệu là tín hiệu tương tự vì tính chính xác có thể thu

được

- Tín hiệu số (Digital): lạ dạng tín hiệu không liên tục, nó chỉ có 2 mức điện áp là cao và thấp. Mức điện áp cao được gọi là 1, mức điện áp thấp gọi là 0. Mỗi mức tín hiệu phải được truyền trong ít nhất một chu kì ( Thời gian Bit – Time Bit). Mỗi mức tín hiệu trong một chu kì gọi là 1bit. Một tập hợp nhiều bit được sắp xếp tạo thành một đại lượng lớn hơn so với hai số 0 và 1, chúng được gọi là số

nhị phân. Bởi vì các bit chỉ là 0 hoặc 1 nên truyền tín hiệu số không được chính

xác như tín hiệu tương tự. Ngoài ra để đọc và hiểu các tín hiệu này cần phải có

một hệ thống kĩ thuật số phức tạp. Tuy nhiên lợi ích của tín hiệu số là có thể thao tác, lưu giữ và xử lí thông tin trên máy tính.

Ví dụ:

Điên thoại di động hiện nay chủ yếu sử dụng tín hiệu số. Internet là một mạng lưới tín hiệu số.

Lấy mẫu và dựng lại tín hiệu

2.5.3 Mối quan hệ giữa A & D

Tín hiệu tương tự và tín hiệu số đều có thể được sử dụng để truyền tải cùng một

thông tin. Đôi khi tín hiệu số được đưa qua bộ điều biến (modulator) để chuyển thành mạng lưới tín hiệu tương tự. Tương tự như vậy, tín hiệu tương tự đôi khi cũng

cần phải được số hóa để chuyển thành tín hiệu số. Ví dụ:

Với hệ thống điện thoại hiện nay: khi nhận được tín hiệu tương tự từ điện thoại

di động, hệ thống sẽ chuyển tín hiệu này thành tín hiệu số để truyền qua mạng cáp quang kĩ thuật số.

Dữ liệu số được ghi trên đĩa CD – DVD cần được chuyển đổi thành tín hiệu

GVHD: Ks.Nguyễn Văn Khanh 42 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

Cả 2 loại tín hiệu đều rất hữu ích và có những điểm nổi bật riêng. Vì vậy việc chuyển đổi qua lại giữa 2 tín hiệu là rất cần thiết.

 Bộ lấy mẫu

Thiết bị để chuyển đổi tín hiệu tương tự sang tín hiệu số gọi là một mẫu –

sampler. Nó thường được viết tắt là ADC, A2D hay A/D. Các tín hiệu tương tự được chuyển thành tín hiệu số theo một số nguyên tắc cụ thể. Nếu chúng ta chỉ lấy mẫu tại các thời điểm cụ thể thì quá trình lấy mẫu có thể gây mất thông tin. Ngoài ra, bởi vì các tín hiệu số có độ chính xác thấp hơn tín hiệu tương tự nên các giá trị

lấy mẫu có thể không được thể hiện một cách chính xác. Những ảnh hưởng khi lấy mẫu một tín hiệu thường gọi là “Sampling noise”, “Sampling error”, “xuống cấp tín hiệu chuyển đổi – Converted signal degradation”. Tuy nhiên vẫn có phương pháp

làm giảm những lỗi này.

 Mạch tái thiết

Mạch tái thiết dùng để chuyển đổi tín hiệu số sang tín hiệu tương tự. Nó

thường được viết tắt là DAC, D2A hay D/A. Bởi vì các tín hiệu số không có độ chính xác như tín hiệu tương tự nên việc dựng lại tín hiệu tương tự sẽ phát sinh một số lượng lỗi nhất định. Những lỗi này thường được gọi là “Reconstrution noise” hay “Reconstrution error” và có thể trở thành một vấn đề lớn trong các ứng dụng nhạy.

2.5.4 Lấy mẫu và lượng tử hóa

 Mẫu lí tưởng

Chúng ta có một thiết bị lấy mẫu hoạt động như sau: cứ mỗi giây T thiết bị sẽ đọc giá trị hiện tại của tín hiệu đầu vào, sau đó thiết bị sẽ cho 1 giá trị đầu ra cho giây T trước khi lấy mẫu tiếp theo

Việc lấy mẫu được thực hiện bằng cách đọc một dạng sóng tương tự và “bắt” các giá trị của sóng đó tại mỗi thời điểm cụ thể. Sau đó giá trịấy sẽ được đưa vào công

cụ chuyển đổi ADC và một chuỗi tín hiệu số được tạo ra.

 Định lí lấy mẫu

Định lí lấy mẫu là một biến đổi toán học cho phép lấy mẫu của một dạng sóng

đầu vào tại một thời điểm T. Định lí này không giống với “star transform”.

Định nghĩa: nếu xoắn tín hiệu ngõ vào với một xung động, tập trung tại thời

điểm lấy mẫu T, ngõ ra sẽ là giá trị của ngõ vào tại thời điểm T hay nói cách khác ngõ ra sẽ là mẫu tại thời điểm T:

GVHD: Ks.Nguyễn Văn Khanh 43 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

là giá trị lấy mẫu tại thời điểm T.

 Sai số lấy mẫu

Trong nhiều quá trình ta cần biến đổi tín hiệu tương tự thành tín hiệu số (ADC)

và sau đó thì cần biến đổi nó ngược lại thành tín hiệu tương tự (DAC) và yêu cầu của quá trình này là ngõ ra của DAC vẫn biểu diễn chính xác tín hiệu ban đầu. Nếu mẫu chỉ đọc giá trị tại những thời điểm cụ thể thì có thể giá trị của mẫu không chính xác nếu tần số đầu vào là quá nhanh và xuất hiện tín hiệu tạp nhiễu tại đầu ra của DAC. Vấn đề đó được gọi là sai số lấy mẫu

Ví Dụ: khi tần số của tín hiệu đầu vào nhanh hơn so với tần số lấy mẫu thì kết quả

lấy mẫu sẽ biễu diễn một làn sóng có tần số thấp.

Hình 2.31: Biển diễn kết quả lấy mẫu của ADC

Trong hình trên, các dấu chấm đỏ là điểm lấy mẫu và hình sin màu đen là dạng

sóng đầu vào. Quá trình lấy mẫu diễn ra chậm rãi và ngõ ra là dạng sóng màu cam

với tần số thấp hơn.  Tốc độ lấy mẫu:

Để tránh vấn đề sai số khi lấy mẫu, tốc độ lấy mẫu nên là tốc độ lấy mẫu chậm nhất và tốt nhất là giữa 2 lần tần số cao nhất của tín hiệu đầu vào. Bất kì việc lấy mẫu chậm hơn tốc độ lấy mẫu thì đều sản sinh tín hiệu tạp nhiễu.

GVHD: Ks.Nguyễn Văn Khanh 44 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

2.5.5 Độ phân giải và Bitrate

 Độ phân giải:

Độ phân giải của một mẫu là số bit được sử dụng để biểu diễn cho từng tín hiệu. Ví dụ 1 mẫu 12-bit sẽ xuất 12 bit dữ liệu cho mỗi mẫu. Nói chung, số lượng bit càng nhiều thì sai số lượng tử càng nhỏ, độ chính xác càng cao. Độ phân giải (n) và số bước (m) có liên hệ với nhau theo công thức:

2n = m (2.11)

 Phạm vi mẫu

Phạm vi của mẫu có thể phụ thuộc vào nhiều yếu tố, bao gồm dấu của đối số

cần chuyển đổi, độ phân giải và kích thước bước.

Kích thước bước của một mẫu là một chuỗi các giá trị của tín hiệu tương tự có

thể nhập vào trước khi mẫu thay đổi. Kích thước bước (∆) được tính bằng cánh lấy

phạm vi mẫu (R) chia cho số lượng các bước (m):

m R

 (2.12)

Trong đó: phạm vi của một mẫu R được tính như sau:

R = Vmax - Vmin (2.13) Ví dụ

Chúng ta có bộ chuyển đổi chỉ thực hiện đối số dương (không có đối số nào

dưới 0v) , độ phân giải cho là 2 bit. Chúng ta muốn xử lí tất cả giá trị đầu vào tới mức 10v, vậy phạm vi mẫu của chúng ta là từ 0v đến 10v:

R = 10 – 0 = 10

Với độ phân giải n=2 bit, chúng ta có tổng cộng số bước là: m = 22 = 4

Vậy kích thước bước là:

5 . 2 4 10   

Điều này có nghĩa là những giá trị của tín hiệu tương tự sẽ được chuyển thành những giá trị số như sau:

0V – 2.5V => 00 2.5V – 5.0V => 01

GVHD: Ks.Nguyễn Văn Khanh 45 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

5.0V – 7.5V => 10 7.5V – 10V => 11

Số lượng các bit tạo cho mỗi mẫu và thời gian lấy mẫu cho ta biết tốc độ để tạo ra các bit dữ liệu. Tốc độ này gọi là Bitrate và thường được kí hiệu là rb hoặc r. Nếu chúng ta có thời gian lấy mẫu là T giây, độ phân giải n thì bitrate được tính theo công thức:

T n

rb (2.14)

rb có đơn vị là bit/s khi T được đo bằng s và n số bit được truyền.

 Băng thông

Băng thông, kí hiệu W, là phạm vi cần thiết để truyền đi một tín hiệu tương tự

hay tín hiệu số. Băng thông được liên hệ với bitrate như sau:

W = 2rb (2.15)

Nội suy phi tuyến

 Giảm lấy mẫu

Có nhiều trường hợp bộ lấy mẫu tạo ra các mẫu quá nhanh hoặc quá chậm với phần còn lại của mạch. Khi bộ lấy mẫu tạo ra quá nhiều mẫu chúng ta cần loại bỏ

một số thông qua quá trình gọi là giảm lấy mẫu.

Trong 1 lần giảm lấy mẫu, một số mẫu bị loại bỏ từ tín hiệu số, phần còn lại của mẫu sẽ được thay đổi để trải rộng (spread out) ra. Việc giảm lấy mẫu được thưc

hiện theo quy tắc phân đoạn.

 Tăng lấy mẫu

Nếu các bộ lấy mẫu không tạo ra đủ nhanh các mẫu, chúng ta cần tạo ra nhiều

mẫu hơn. Quá trình này gọi là tăng lấy mẫu. Một chương trình tăng lấy mẫu cơ bản

nhất là thêm các mẫu có giá trị bằng 0 vào giữa các mẫu hiện tại. Phương pháp này

gọi là “Zero Padding”.

Nội suy tuyến tính

Trong nội suy tuyến tính, một đường thẳng được kẻ lên mẫu mới nằm ở giữa 2 mẫu cũ. Giá trị của mẫu mới là giá trị trung bình của 2 mẫu cũ. Đây được gọi là nội suy tuyến tính bởi vì các mẫu mới sẽ được hình thành trên những mẫu cũ.

GVHD: Ks.Nguyễn Văn Khanh 46 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

Hình 2.32: Sơ đồ nguyên tắc làm việc của ADC

Tín hiệu tương tự sau khi qua xử lý được đưa vào lấy mẫu. Bộ ADC có hai

nhiệm vụ chính:

Lấy mẫu tín hiệu tương tự tại các thời điểm khác nhau và cách đều nhau, nói

cách khác đây là quá trình rời rạc hoá tín hiệu về mặt thời gian.

Lượng tử hoá và mã hoá tín hiệu. Quá trình lượng tử hoá về bản chất là quá trình làm tròn số được thực hiện theo nguyên tắc so sánh, tín hiệu cần chuyển đổi được so sánh với một đơn vị chuẩn. Còn mã hoá là quá trình sắp xếp lại kết quả đã lượng tử

theo một quy luật nhất định tuỳ thuộc vào loại mã yêu cầu ở đầu ra bộ biến đổi (có thể là mã nhị phân hoặc mã hexa).

2.5.6 Các phương pháp chuyển đổi AD

Có nhiều cách để phân loại các bộ biến đổi AD, hay dùng hơn cả là phương

pháp phân loại về mặt thời gian. Phương pháp này có ưu điểm là cho phép phán

đoán một cách tổng quát về tốc độ chuyển đổi.

 Chuyển đổi song song (Parallel Comparator ADC): Tín hiệu cần chuyển đổi

được so sánh cùng một lúc với nhiều giá trị chuẩn, vì vậy các bit được xác

định đồng thời và đưa đến đầu ra.

 Chuyển đổi nối tiếp theo mã đếm: Quá trình so sánh được thực hiện từng

bước theo quy luật mã đếm. Kết quả chuyển đổi được xác định bằng cách

đếm số lượng giá trị tín hiệu tương tự cần chuyển đổi.

 Chuyển đổi nối tiếp theo mã nhị phân: Quá trình so sánh được thực hiện từng

bước theo quy luật của mã nhị phân. Các đơn vị chuẩn dùng để so sánh lấy các giá trị giảm dần theo mã nhị phân, do đó các bit được xác định lần lượt từ bit có ý nghĩa.

GVHD: Ks.Nguyễn Văn Khanh 47 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

2.3.3 CHUẨN TRUYỀN THÔNG SPI

SPI (Serial Peripheral Interface) là một chuẩn truyền thông nối tiếp tốc độ cao do hãng Motorala đề xuất. Đây là kiểu truyền thông Master – Slave, trong đó có

một chip Mater điều phối quá trình truyền thông và các chip Slave được điều khiển

bởi Mater vì thế truyền thông chỉ xảy ra giữa Master và Slave. SPI là một cách truyền song công (full deplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời. SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì

có bốn đường giao tiếp trong chuẩn này đó là: SCK (Serial Clock), MISO (Master

Input Slave Output), MOSI (Master Output Slave Input) và SS (Slave Select).

Hình 2.33: Kết nối SPI giữa 1 Matster và 3 Slave

- SCK - Serial Clock: Xung giữ nhịp cho giao tiếp SPI, và SPI là chuẩn giao tiếp truyền thông đồng bộ nên cần một đường giữ nhịp, mỗi nhịp trên chân SCK báo 1 bit dữ liệu đến hoặc đi. Đây là điểm khác biệt với truyền thông không đồng bộ mà chúng ta đã biết trong chuẩn UART. Sự tồn tại của chân SCK giúp quá trình truyền ít bị lỗi và vì thế tốc độ truyền của SPI có thể đạt rất cao. Xung nhịp chỉ được tạo ra bởi các chip Master.

- MISO – Master Input/ Slave Output: nếu là chip Master thì đây là đường Input, còn nếu là chip Slave thì MISO lại là Output. MISO của Master và các Slave

được nối trực tiếp với nhau.

- MOSI – Master Output/ Slave Input: nếu là chip Master thì đây là đường Output còn nếu là chip Slave thì MOSI là Input. MOSI của Master và các Slave

GVHD: Ks.Nguyễn Văn Khanh 48 SVTH: Đoàn Hải Đăng

Nguyễn Thành Tâm

- SS – Slave Select: SS là đường chọn Slave cần giao tiếp, trên các chip Slave

đường SS sẽở mức cao khi không làm việc. Nếu chip Master kéo đường SS của

Một phần của tài liệu điều khiển ổn định nhiệt độ sử dụng bộ điều khiển pi (Trang 54)

Tải bản đầy đủ (PDF)

(112 trang)