Chúng ta hiện đang sống trong một thế giới tự nhiên, nơi mọi thứ được biểu diễn bằng tín hiệu analog như ánh sáng, nhiệt độ, áp suất, v.v. Nhưng hầu hết các thiết bị điện tử mà chúng ta sử dụng hàng ngày lại là các thiết bị kỹ thuật số. Do đó, chúng ta cần một thiết bị có khả năng chuyển đổi các tín hiệu analog thành dạng kỹ thuật số để máy tính hoặc bộ xử lý có thể hiểu và sử dụng. Đó chính là vai trò của bộ chuyển đổi ADC, còn biết đến là Analog to Digital Converter. Trong bài viết này, chúng tôi sẽ giúp bạn hiểu rõ hơn về bộ chuyển đổi ADC.
Bộ chuyển đổi ADC là gì?
Bạn đang xem: Bộ chuyển đổi ADC là gì
ADC là viết tắt của Analog to Digital Converter, nghĩa là một mạch điện có khả năng chuyển đổi tín hiệu điện áp liên tục (analog) thành dạng số nhị phân (kỹ thuật số) mà các thiết bị kỹ thuật số có thể hiểu và sử dụng để tính toán. Mạch ADC có thể là một mạch độc lập hoặc được tích hợp vào một vi mạch điều khiển.
Tại sao cần chuyển đổi tín hiệu analog sang kỹ thuật số?
Ngày nay, hầu hết các thiết bị điện tử đều hoạt động dựa trên tín hiệu kỹ thuật số, và không còn nhiều thiết bị hoạt động theo nguyên tắc analog. Tuy nhiên, thực tế là thế giới xung quanh chúng ta vẫn là một thế giới analog có nhiều giá trị không chỉ là đen và trắng.
Ví dụ, một cảm biến nhiệt độ như LM35 tạo ra một điện áp phụ thuộc vào nhiệt độ, và trong trường hợp của công cụ này, điện áp sẽ tăng thêm 10 mV cho mỗi độ tăng nhiệt độ. Nếu chúng ta kết nối cảm biến này trực tiếp vào đầu vào kỹ thuật số, nó sẽ chỉ ghi nhận là cao hoặc thấp, tùy thuộc vào ngưỡng đầu vào, điều này là không hữu ích.
Thay vào đó, chúng ta sử dụng một bộ ADC để chuyển đổi tín hiệu điện áp analog thành một dãy các bit có thể được kết nối trực tiếp vào bus dữ liệu của bộ xử lý và được sử dụng để tính toán.
Nguyên tắc hoạt động của ADC như thế nào?
Một cách dễ hiểu về nguyên tắc hoạt động của ADC là coi nó như một bộ chia tỷ lệ toán học. Bản chất của nó là ánh xạ các giá trị từ một phạm vi vào phạm vi khác, nghĩa là ADC ánh xạ một giá trị điện áp sang một số nhị phân.
Chúng ta cần một thiết bị có khả năng chuyển đổi điện áp thành các mức logic, chẳng hạn như trong một thanh ghi. Tuy nhiên, thanh ghi chỉ có thể chấp nhận các mức logic làm đầu vào, vì vậy nếu bạn kết nối các tín hiệu trực tiếp vào đầu vào logic, kết quả không tốt. Do đó, chúng ta cần một giao diện giữa logic và điện áp đầu vào analog.
Dưới đây là một số tính năng quan trọng của ADC, khi xem qua, chúng ta sẽ hiểu cách nó hoạt động.
- Điện áp tham chiếu
Tất nhiên, không có ADC nào hoàn hảo, vì vậy điện áp tương ứng với giá trị nhị phân lớn nhất được gọi là điện áp tham chiếu. Ví dụ: Trong một bộ chuyển đổi 10 bit với điện áp tham chiếu 5V, 1111111111 (tất cả các bit đều một, tương ứng với số nhị phân 10 bit cao nhất có thể) tương ứng với 5V và 0000000000 (số thấp nhất tương ứng với 0V). Do đó, mỗi bước nhị phân tương ứng với khoảng 4,9mV, vì có thể có 1024 giá trị trong 10 bit. Các giá trị điện áp được đo trên từng bit này được gọi là độ phân giải của ADC.
Xem thêm : SoapUI là gì? Giới thiệu về SoapUI Testing
Điều gì xảy ra nếu điện áp thay đổi dưới 4,9mV mỗi bước? Nó sẽ đặt ADC vào khu vực không hoạt động, do đó kết quả chuyển đổi sẽ luôn có một sai số nhỏ. Có thể ngăn chặn sai số này bằng cách sử dụng ADC có độ phân giải cao hơn, ví dụ như bộ ADC 24 bit, mặc dù tốc độ chuyển đổi sẽ thấp hơn.
- Tốc độ lấy mẫu
Số lượng chuyển đổi từ analog sang kỹ thuật số mà bộ chuyển đổi có thể thực hiện trong mỗi giây được gọi là tốc độ lấy mẫu. Ví dụ: Một bộ ADC tốt có thể có tốc độ lấy mẫu là 300Ms/s. Đơn vị này đọc là megasamples trên giây, chỉ số nghĩa là một triệu mẫu mỗi giây. Lưu ý rằng tiền tố SI được sử dụng ở đây.
Tốc độ lấy mẫu hoàn toàn phụ thuộc vào loại bộ chuyển đổi và sự chính xác cần thiết. Nếu cần đọc rất chính xác, ADC thường dành nhiều thời gian hơn để xem xét tín hiệu đầu vào (thường bằng cách lấy mẫu và giữ hoặc tích hợp vào đầu vào) và nếu không cần độ chính xác cao, nó có thể đọc rất nhanh.
Nguyên tắc chung ở đây là tốc độ và độ chính xác có tỷ lệ nghịch với nhau, vì vậy quan trọng là chọn bộ chuyển đổi ADC phù hợp với ứng dụng cụ thể.
Các loại ADC
- Flash ADC
Đây là loại ADC đơn giản nhất và nhanh nhất, nó bao gồm một chuỗi so sánh với đầu vào không đảo được kết nối với tín hiệu đầu vào và các chân đảo được nối với một thang điện áp.
Tuy nhiên, nếu điện áp vượt quá một trong số các mức của thang điện áp, tất cả các bit đầu ra dưới mức này sẽ được đặt là một, vì điện áp vượt quá ngưỡng đối với các so sánh dưới cùng. Để giải quyết vấn đề này, đầu ra được thông qua một bộ mã hóa ưu tiên chuyển đổi thành số nhị phân.
Tốc độ bị giới hạn bởi độ trễ của so sánh và bộ mã hóa ưu tiên. Tuy nhiên, độ chính xác là tương đối tốt.
- ADC tích hợp đếm hoặc độ dốc
Ở đây, một mạch tạo đoạn dốc được bắt đầu tại thời điểm chuyển đổi và bộ đếm nhị phân được khởi động cùng lúc. Một so sánh phát hiện khi đoạn dốc vượt quá điện áp đầu vào và dừng bộ đếm nhị phân. Bộ đếm nhị phân thu được tỷ lệ với mức độ điện áp đầu vào.
Độ chính xác tuyệt đối của bộ chuyển đổi này vẫn là một câu hỏi, nhưng nó thực hiện một cách đơn giản và mang lại độ phân giải tốt, với các bước nhị phân cách đều nhau. Nếu không có vi mạch, mạch này cũng có thể được tạo riêng.
- ADC ước lượng tiếp theo
Bộ ADC này có lẽ là loại chính xác nhất. Nó bao gồm một bộ so sánh, một bộ DAC flash đơn giản và một thanh ghi bộ nhớ. Thiết bị ban đầu giả sử tất cả các bit trong thanh ghi, ngoại trừ bit có ý nghĩa cao nhất (giá trị một), là 0. Sau đó, thanh ghi này gửi nó đến DAC chuyển đổi thành điện áp analog, được so sánh với đầu vào qua bộ so sánh. Nếu điện áp đầu vào cao hơn điện áp DAC, thì MSB vẫn là một. Quá trình này được lặp lại cho đến khi tất cả các bit được đặt thành không hoặc một, nghĩa là giá trị của thanh ghi bằng điện áp đầu vào.
Bộ chuyển đổi này là một trong những loại ADC phổ biến nhất khi cần độ chính xác và tốc độ không quá nhanh, ví dụ như trong vi điều khiển. ADC loại này có thể đạt được thời gian chuyển đổi vài micro giây.
Các ứng dụng
- Máy hiện sóng kỹ thuật số và đồng hồ vạn năng
Xem thêm : Các bước xử lí khi bị chó cắn
Ưu điểm lớn nhất của máy hiện sóng kỹ thuật số so với máy hiện sóng analog là có ít mạch điện giữa đầu vào và màn hình, đó là bạn có thể thấy chính xác những gì đang diễn ra trong mạch theo thời gian thực. Tuy nhiên, nó không thể lưu trữ các dạng sóng để sử dụng sau này hoặc thực hiện các phép đo trên bo mạch.
Máy hiện sóng kỹ thuật số giải quyết được tất cả các vấn đề này và trọng tâm của nó là một bộ ADC mạnh mẽ và nhanh chóng với độ phân giải từ 12 bit trở lên. ADC chuyển đổi các dạng sóng sang giá trị số nhị phân có thể được lưu trữ trong bộ nhớ, xử lý và hiển thị trên màn hình.
- Vi điều khiển
Hầu hết các vi điều khiển hiện đại đều tích hợp sẵn ADC, phổ biến nhất là Arduino dựa trên ATMega328P với độ phân giải 10 bit và STM32 với độ phân giải 12 bit.
Arduino IDE cung cấp hàm ‘analogRead()’ để đọc điện áp analog trên một trong các chân analog và trả về giá trị số nguyên từ 0 đến 1023, tương ứng với phạm vi từ 0V đến 5V.
- Nguồn kỹ thuật số
Hầu hết các nguồn điện hiện đại được điều khiển bằng máy tính và để máy tính đo điện áp đầu ra, cần phải có bộ chuyển đổi ADC.
Cách sử dụng một IC ADC
Có nhiều IC ADC trên thị trường có thể sử dụng để đo điện áp analog. ADC0804, ADC0808, MCP3008, … là một số module ADC được sử dụng phổ biến. Chúng thường được sử dụng cùng với Raspberry Pi hoặc bộ xử lý hoặc mạch kỹ thuật số khác khi ADC tích hợp trong nó không có sẵn. Ví dụ, chúng ta hãy xem xét vi mạch ADC ADS1115 của Texas Instruments có độ phân giải cao và kiến trúc hiện đại.
Nó có dạng gói QFN hoặc VSSOP, cho phép kích thước vật lý rất nhỏ. Nó chiếm rất ít không gian trên PCB. Con chip nhỏ này thực hiện nhiều chức năng, chúng ta sẽ xem xét một số tính năng của nó dưới đây.
- Tương thích với I2C
Bất kỳ ai đã làm việc với vi điều khiển đều biết công nghệ SPI và I2C có tác dụng như thế nào trong việc giao tiếp với các thiết bị ngoại vi. Tính năng này giúp bạn dễ dàng sử dụng IC này với board Arduino vì đã có các thư viện mở rộng viết cho thiết bị.
- Công suất tiêu thụ thấp
Ưu điểm của vi mạch hiện đại là tiêu thụ dòng điện rất thấp và có thể hoạt động ở nhiều mức điện áp khác nhau, trong trường hợp này là từ 2.0V đến 5.5V.
- So sánh có thể được lập trình
ADS đi kèm với một bộ so sánh mà ngưỡng tham chiếu của nó có thể được lập trình qua bus I2C. Đương nhiên, đối với các ứng dụng nhanh, không có gì vượt qua so sánh rời rạc.
- Đầu vào có thể được cấu hình
Bốn đầu vào có thể là hai cặp không cân bằng (chỉ tính hiệu chênh lệch giữa các chân) hoặc bốn đầu vào đơn.
Hạn chế của ADC
- ADC chậm, thường chỉ trong vài micro hoặc nano giây.
- Thiếu các giá trị liên tục của điện áp.
- Mạch ngày càng phức tạp hơn.