Làm thế nào để căn chuẩn (calibrate) bộ ADC Bộ chuyển đổi tín hiệu tương tự sang số được sử dụng một cách rộng rãi trong rất nhiều ứng dụng ví dụ như thu âm, các thiết bị sinh học, kiểm tra và giám sát các thiết bị, v.v. Có rất nhiều bộ ADC trên thị trường nơi mà một kĩ sư thiết kế điện tử có khả năng chọn mô hình phù hợp nhất dựa vào hai nhân tố sau:
o Độ phân giải (resolution), cái mà phụ thuộc vào số bit sử dụng để lưu trữ giá trị chuyển đổi. Ví dụ một bộ ADC có độ phân giải 12-bit có bit có giá trị nhỏ nhất tương đương với 1/(2^12). Nếu điện áp tham chiếu tương đương với 5V thì nó sẽ có khả năng thực hiện sự chuyển đổi với độ phân giải 0.01953125V.
o Tốc độ, được biểu diễn bởi thời gian yêu cầu để hoàn thành quá trình chuyển đổi (conversion time). Một vài loại ADC được gọi là “flash converter”, cách gọi này hoàn toàn đúng bởi chúng có thời gian chuyển đổi là rất nhỏ so với những bộ ADC khác. Trong một vài trường hợp thì độ phân giải lại được ưa chuộng hơn thời gian chuyển đổi. Ví dụ một bộ chuyển đổi ADC có độ phân giải 24-bit với thời gian chuyển đổi là 100ms thì lại có thời gian chuyển đổi không thực sự cao.
Một bộ ADC lí tưởng là bộ mà có kết quả chuyển đổi hoàn toàn chính xác và tỉ lệ tuyến tính với tín hiệu lối vào.
Thực thế là một bộ ADC bị ảnh hưởng bởi 3 ba loại lỗi chủ yếu. Bây giờ ta sẽ xem xét các lỗi đó và chúng xảy ra như thế nòa, thuật toán để cho vi xử lí hoặc vi điều khiển, thủ tục căn chuẩn.
Hình 1 chỉ ra đặc tính điện áp của một bộ ADC lí tưởng: trục x là điện áp vào (Vin), trục y là giá trị số (N) thu được tương ứng với giá trị chuyển đổi. Vref là điện áp tham chiếu của bộ ADC. Với Vin=Vref, thì ta có N=(2^Nres)-1, với Nres là độ phân giải, được biểu diễn như là số của các bits. Ví dụ một bộ ADC có độ phân giải 8bit với điện áp tham chiếu 5V, sẽ cung cấp N=(2^8)-1=255 giá trị chuyển đổi khi Vin=5V. Tuy nhiên thực tế thì khác với li tưởng. Lỗi đầu tiền là lỗi offset error, chỉ ra ở hình 2. Offser error được đo bởi số bit có giá trị nhỏ nhất (LSB) (1 LSB tương đương với 1/2^Nres) đưa ra bởi bộ ADC khi mà Vin =0. Một bộ ADC lí tưởng sẽ luôn co N=0 khi Vin=0.
Bây giờ chúng ta sẽ xem xét đến đặc tính điện của một bộ ADC thương mại, chính xác hơn là ADC0800 của National Semiconductor.Nó là bộ ADC 8 –bit.
Nhìn vào datasheet, ta thấy rằng lỗi offset đối với bộ chuyển đổi này là (còn được gọi là zero error) là +/-2 LSB . Loại lỗi thứ hai là gain error, như trong hình 3. Gain error được gây ra bởi sự không hoàn hảo bộ khuếch đại của bộ ADC, đường dốc thể hiện đặc tính của nó thì khác so với li thuyết. Loại lỗi này là lỗi hệ thống (có nghĩa là luôn có thể xuất hiện lại) và theo một qui luật tuyến tính. Bởi vì thực tế này, ta có thể biểu diễn toàn bộ gain error như một sự dịch, khi Vin=Vref của giá trị chuyển đổi so với một giá trị lí tưởng. Do đó gain error có thể được biểu diễn bằng một số lần LSB (a*LSB). Trong trường hợp ADC0800, gain error tương đương với +/-2LSB. Loại lỗi thứ ba là lỗi không tuyến tính non linearity error, tức là đặc tính của ADC không phải là một đường thẳng. Nó thường được đó bằng độ khoảng cách lớn nhất giữa đường thực với đường li tưởng. Đối với ADC0800 lỗi này là +/-1LSB. Bây giờ ta sẽ xem thủ tục để điều chỉnh lỗi offset và gain. Thủ tục gồm hai bước: 1. Thiết lập Vin=0. Giá trị chuyển đổi được Nzero, đọc từ ADC sau đó lưu vào persistent memory ( ví dụ: eeprom memory). 2. Thiết lập Vin=Vfull (Vreff) tương ứng ta có giá trị chuyển đổi Nfs, sau đó đọc từ ADC và lưu vào một persisten memory (eeprom hoặc NVRAM). Phương trình lí tưởng: N = ( (2 ^ Nres) – 1) / Vref) x Vin Phương trình thưc tế: N’ = ((Nfs – Nzero) / Vref) x Vin + Nzero Theo cách này ta sẽ thu được một phương trinh biểu diễn đặc tính thực của bộ ADC. Nzero và Nfs có thể được lưu trong eeprom hoặc NVRAM và được thay đổi khi bộ ADC được đặt lần đầu tiên trong mạch hoặc được thay thế bởi bộ ADC khác khi nó hoạt động không chính xác nữa.