ADPD188BI是一款完整的光度測量系統,采用光學雙波長技術進行煙霧檢測。該模塊集成了高效的光度前端、藍光和紅外 (IR) 發光二極管 (LED) 以及光電二極管,采用定制封裝,可防止光線在不先進入煙霧探測室的情況下直接從 LED 進入光電二極管。ADPD188BI與EVAL-CHAMBER煙霧室配合使用,可創建完整的光學煙霧檢測解決方案,用于住宅和工業煙霧探測器。EVAL-CHAMBER可通過訂購EVAL-ADPD188BIZ-S2購買。
本應用筆記介紹了ADPD188BI的校準,使用編程到片內非易失性存儲器(NVM)中的校準系數,以將器件間的差異降低到<+10%。
對于特定的LED驅動設置和測試/應用環境,ADPD188BI表現出LED響應的器件間可變性。LED響應具有因器件而異的斜率(增益)和截距(偏移),這會導致器件間響應常見環境而變化,并且可以使用增益和失調校準系數進行校準。這種校準的主要應用是允許更有效地比較多個器件輸出,因為它們在最終應用中實例化。這種校準顯著減少了任何器件之間的光學差異,并可以簡化對特定應用環境變化的觀察。
校準 ADPD188BI
測試方法
每個LED/驅動器對在多個LED電流下工作在反射器中,反射器響應由ADPD188BI模塊內的光電二極管測量。計算每個 LED/驅動器對的響應斜率,截距從線性回歸得出。然后計算校準系數并將其存儲在片上 NVM(也稱為 eFuse 寄存器)中,以供以后在最終應用中使用。校準系數基于特定設備的每脈沖測量值計算,并歸一化為從不同設備收集的數據的大量分布的平均值。此規范化可確保在設備群中最大程度地減少設備到設備的可變性。
失調和增益校準系數存儲在片內電子保險絲寄存器中。增益校準系數(LED1_GAIN_COEFF和LED3_GAIN_COEFF分別存儲在寄存器0×71和寄存器0×72中。偏移校準系數LED1_INT_COEFF和LED3_INT_COEFF分別存儲在寄存器0×73和寄存器0×74中。
要訪問電子保險絲寄存器,請執行以下步驟:
設置寄存器 0×4B,位 7 = 1 以啟用 32 kHz 振蕩器。
將 0×1 寫入寄存器 0×10 以強制設備進入程序(空閑)模式。
寫入 0×1 以寄存器 0×5F 以啟用 32 MHz 先進先出 (FIFO) 時鐘。
將 0×7 寫入寄存器 0×57 以啟用對電子保險絲寄存器的訪問。
讀取寄存器 0×67。當寄存器 0×67 = 0×04 時,電子保險絲寄存器的刷新完成,可供訪問進行讀取。
在應用校準系數之前,將糾錯碼 (ECC) 功能應用于電子保險絲數據(請參閱使用 ECC 檢測和更正 EFUSE 值中的錯誤部分)。
確認寄存器 0×70 的內容分別為模塊 ID 0、模塊 ID 1、模塊 ID 0 或更大的 1×0E、21×30F、31×33 或更大。
讀取所需LED/驅動器對的增益和失調校準系數。最終增益校準系數必須按照計算校準系數部分中的定義,使用eFuse寄存器的內容進行計算。計算最終增益校準系數時,將其加載到用戶可訪問的存儲器中以備將來使用。
讀取電子保險絲寄存器完成后,按如下方式禁用電子保險絲寄存器:
寫入 0×0 以寄存器 0×57 以禁用對電子保險絲寄存器的訪問
寫入 0×0 以寄存器 0×5F 以禁用 32 MHz FIFO 時鐘。
計算模塊 ID 30 和模塊 ID 31 的校準系數
最終校準系數必須使用寄存器0x71到寄存器0x74的內容計算,如以下公式所示:
GAIN_CAL_X = DEVICE_SCALAR/NOMINAL_SCALAR
其中:
DEVICE_SCALAR = x_GAIN × LEDx + x_INTERCEPT。
藍色 LED 通道BLUE_GAIN x_GAIN,紅外 LED 通道IR_GAIN。
BLUE_GAIN = (17/256)(LED1_GAIN_COEFF ? 112) + 17。
IR_GAIN = (34/256)(LED3_GAIN_COEFF ? 112) + 34。
LEDx 是以毫安為單位的 LED 驅動電流,例如,如果驅動電流 = 200 mA,請輸入 200。LEDx 是藍色 LED 通道的 LED1,是紅外 LED 通道的 LED3。
藍色 LED 通道BLUE_INTERCEPT x_INTERCEPT,紅外 LED 通道IR_INTERCEPT。
BLUE_INTERCEPT = 8(LED1_INT_COEFF ? 128)。
IR_INTERCEPT = 5(LED3_INT_COEFF ? 128)。
NOMINAL_SCALAR = x_MEAN_GAIN × LEDx + x_MEAN_INTERCEPT。
藍色 LED 通道的x_MEAN_GAIN為 17,紅外 LED 通道的為 34。
藍色 LED 通道的x_MEAN_INTERCEPT為 622,紅外 LED 通道的為 128。
地址 | 名字 | 位 | 描述 |
0×70 | MODULE_ID | [7:0] | 模塊 ID = 30 或 31 |
0×71 | LED1_GAIN_COEFF | [7:0] | 藍色 LED 增益系數 |
0×72 | LED3_GAIN_COEFF | [7:0] | 紅外發光二極管增益系數 |
0×73 | LED1_INT_COEFF | [7:0] | 藍色 LED 截點系數 |
0×74 | LED3_INT_COEFF | [7:0] | 紅外 LED 截距系數 |
0×7E | 環保委員會 | [7:0] | 環保委員會 |
計算模塊 ID 30 和模塊 ID 33 的校準系數
要計算最終校準系數,請使用寄存器0x71寄存器0x74的內容,如以下公式所示:
GAIN_CAL_X = DEVICE_SCALAR/NOMINAL_SCALAR
其中:
DEVICE_SCALAR = x_GAIN × LEDx + x_INTERCEPT。
藍色 LED 通道BLUE_GAIN x_GAIN,紅外 LED 通道IR_GAIN。
BLUE_GAIN = (21/256)(LED1_GAIN_COEFF ? 112) + 21。
IR_GAIN = (42/256)(LED3_GAIN_COEFF ? 112) + 42。
LEDx 是以毫安為單位的 LED 驅動電流,例如,如果驅動電流 = 200 mA,請輸入 200。LEDx 是藍色 LED 通道的 LED1,是紅外 LED 通道的 LED3。
藍色 LED 通道BLUE_INTERCEPT x_INTERCEPT,紅外 LED 通道IR_INTERCEPT。
BLUE_INTERCEPT = 8(LED1_INT_COEFF ? 80)。
IR_INTERCEPT = 5(LED3_INT_COEFF ? 80)。
NOMINAL_SCALAR = x_MEAN_GAIN × LEDx + x_MEAN_INTERCEPT。
藍色 LED 通道的x_MEAN_GAIN為 21,紅外 LED 通道的為 42。
藍色 LED 通道的x_MEAN_INTERCEPT為 753,紅外 LED 通道的為 156。
校準 32 KHz 和 32 MHz 振蕩器以獲得最佳系統性能
校準 32 kHz 和 32 MHz 片內振蕩器以獲得最佳性能。32 kHz振蕩器決定ADPD188BI的總采樣速率,32 MHz振蕩器影響ADPD188BI的總增益。對于模塊 ID = 33 的設備,讀取 eFuse 寄存器(寄存器 0×77 和寄存器 0×78),并將這些值寫入器件寄存器(分別寄存器 0×4B 和寄存器 0×4D)。或者,用戶可以按照ADPD188BI數據手冊中描述的程序手動確定最佳設置,以校準32 kHz時鐘和校準32 MHz時鐘。
根據模塊 ID 應用正確的公式
為獲得最佳操作,請閱讀 eFuse 寄存器 0×70 以確定模塊 ID 并應用適當的公式。下面是一個示例案例語句,它可以是用戶軟件的一部分。
檢查模塊 ID 案例(模塊 ID
):
對于ID 30和31案例30,31
:
GAIN_CAL_BLUE =(使用計算模塊 ID 30 和模塊 ID 31 的校準系數中顯示的方程式)GAIN_CAL_IR =(使用計算模塊 ID 30 和模塊 ID 31 的校準系數中顯示的方程式)
對于 ID 33
案例 33:
GAIN_CAL_BLUE =(使用計算模塊 ID 33 的校準系數中顯示的公式) GAIN_CAL_IR =(使用計算模塊 ID 33 的校準系數中顯示的公式)
案例待定 1:離開以備將來擴展 案例待定 2:離開以備將來擴展
默認值:引發錯誤
地址 | 名字 | 位 | 描述 |
0×70 | MODULE_ID | [7:0] | 模塊 ID = 33 |
0×71 | LED1_GAIN_COEFF | [7:0] | 藍色 LED 增益系數 |
0×72 | LED3_GAIN_COEFF | [7:0] | 紅外發光二極管增益系數 |
0×73 | LED1_INT_COEFF | [7:0] | 藍色 LED 截點系數 |
0×74 | LED3_INT_COEFF | [7:0] | 紅外 LED 截距系數 |
0×77 | 32kHz_OSC_OPT_ADJUST | [7:0] | 32 kHz 振蕩器最佳調整設置 |
0×78 | 32MHz_OSC_OPT_ADJUST | [7:0] | 32 MHz 振蕩器最佳調整設置 |
0×7E | 環保委員會 | [7:0] | 環保委員會 |
應用校準系數
要在最終應用中應用校準系數,請執行以下步驟:
根據需要配置 ADPD188BI 器件。
將0x2寫入地址0x10以啟動正常的采樣操作。
在所需的LED電平上進行測量,并執行以下計算:
歸一化輸出 (LSB) = AFE_OUT/GAIN_CAL_x
其中:
AFE_OUT = LED 亮起時的原始輸出測量。
GAIN_CAL_x = 藍色 LED 通道的 GAIN_CAL_BLUE,紅外 LED 通道GAIN_CAL_IR。
應用校準系數可大大減少器件之間的差異。圖 1 和圖 2 顯示了藍色 LED 和紅外 LED 校準前后的直方圖。圖1和圖2表明,在這兩種情況下,器件間差異的分布都縮小到±10%。
應用校準系數可大大減少器件之間的差異。圖 1 和圖 2 顯示了藍色 LED 和紅外 LED 校準前后的直方圖。圖1和圖2表明,在這兩種情況下,器件間差異的分布都縮小到±10%。
圖1.校準前后的藍色 LED 響應
圖2.校準前后的紅外 LED 響應
電子保險絲內容對設備正常運行的影響
寫入ADPD188BI電子保險絲寄存器的校準系數不會改變任何器件性能或規格。所有數據手冊規格和器件性能本質上不受電子保險絲寄存器編程的影響。
校準系數旨在用于采樣數據的后處理,以校準器件間光學特性的變化。無論電子保險絲寄存器是否經過編程,ADPD188BI 的性能都沒有差異。在 eFuse 寄存器使用校準系數進行編程的情況下,存儲在 eFuse 寄存器中的數據只有在軟件中對采樣數據實施后處理校準例程時才會產生影響。
使用 ECC 檢測和糾正電子保險絲值中的錯誤
ECC 的 C 代碼部分中顯示的 C 代碼包含利用漢明碼檢測和糾正存儲的電子保險絲寄存器值中的錯誤的例程。這些函數使用傳統的 127,120 漢明碼,截斷為 119,112。增加了一個額外的全局奇偶校驗位,以提供具有 2 位故障檢測的單位校正。最終形式是 120,112,它為每個 8 位(112 字節)塊添加一個 14 位奇偶校驗代碼。
此代碼檢測并修復每個數據塊中 100% 的單位錯誤,并檢測每個數據塊中 100% 的 2 位故障。
方法如下:將電子保險絲數據和奇偶校驗字節讀入本地內存。用戶必須讀取寄存器 0×70 才能寄存器 0×7E。寄存器 0×70 到寄存器 0×7D 與輸入指針、數據相關聯,并且必須讀入數據數組。寄存器 0×7E 與輸入指針、奇偶校驗相關聯,必須作為奇偶校驗值讀入。使用 fix_hamm_parity 命令驗證塊。此功能可就地修復單個損壞位。如果 fix_hamm_parity 命令返回錯誤,請將設備標記為損壞。
此過程修復所有單位故障,檢測所有 2 位故障和大約 6% 的 3 位故障,并檢測大多數偶數故障。
焊料回流對校準系數的影響
在回流爐中回流焊,其中存在的氧氣水平不受控制,會導致光電二極管對藍色LED的響應降低。平均而言,光電二極管對藍色LED的響應每次回流的偏移為~7%。由于校準系數是在最終測試中編程的,因此在ADPD188BI進行任何回流之前,當ADPD188BI在氧氣水平不受控制的烘箱中進行焊料回流時,藍色系數不再準確。
圖3顯示了在氧氣水平不受控制的烘箱中回流后的原始和校準藍色響應。這組設備被重排了三次。數據包括每次重排后的檢查點。如數據所示,每次回流后,藍色LED響應有~7%的偏移。
圖3.在焊接回流期間氧氣水平不受控制的情況下,藍色 LED 響應偏移
為避免響應偏移,請使用使用氮氣的回流爐來降低烤箱中的氧氣水平。當使用氮氣控制的回流爐將氧氣水平控制在 <1000 ppm 時,藍色 LED 響應沒有偏移。
圖 4 中顯示的數據顯示了在烘箱中回流三次的設備的原始和校準藍色 LED 響應值,其中使用氮氣吹掃將氧氣水平降低到 <1000 ppm。數據包括每次重排后的檢查點。如圖4所示,在這些條件下,回流焊不會發生偏移。
無論烤箱的氧氣水平是否不受控制,紅外響應都不會受到回流焊的影響。
圖4.藍色 LED 響應偏移,氮氣吹掃,以控制焊料回流期間的氧氣水平
審核編輯:郭婷
-
led
+關注
關注
242文章
23277瀏覽量
660897 -
探測器
+關注
關注
14文章
2641瀏覽量
73028 -
存儲器
+關注
關注
38文章
7492瀏覽量
163842
發布評論請先 登錄
相關推薦
評論