本文從本人的163博客搬遷至此。
為了展示NImax(Measurement & Automation explorer)的強大配置功能,做了一個半導體溫度傳感器測試的示例。
一、半導體溫度傳感器
半導體溫度傳感器 (semiconductor transducer )利用半導體材料的物理特性制成的溫度傳感器。其優點在於:靈敏度高、體積小、響應速度快和成本低等;缺點是測量范圍較窄,精度不高等。早期的半導體溫度傳感器需要配備輔助電路,線性不佳,且整個測量系統需要標定后方可使用,應用不方便。但各大半導體公司推出的新型溫度傳感器,一般經過線性校正,且采用電壓直接輸出,極大地簡化了溫度的測量步驟。
半導體溫度傳感器可大致分為"數字接口"和"模擬接口"兩大類,常見的DS18B20就屬於數字接口類,這里為了展示USB-6009的模擬測試功能,選擇模擬接口類型的MCP9700。MCP9700的靈敏度達到10mV/℃,具有非常優異的線性,且可以直接測量0℃以下的溫度。MCP9700典型的溫度——電壓關系如下圖所示:

圖1 MCP9700輸出電壓和溫度對應曲線
二、測試電路
由圖1可知,在0-100℃的常溫下,MCP9700的輸出電壓為0.5~1.5V,如果直接送給USB-6009配置為單端(RSE)模式的模擬輸入通道(輸入范圍為-10V~+10V),則顯得輸入范圍太小。因此在MCP9700的輸出端配置了一個同相放大器來增加其輸入范圍。

圖2 溫度傳感器輸出放大電路
經過放大后,在0-100℃的常溫下,放大器的輸出電壓為1~3V。
三、在NImax中配置換算規則
NImax是NI公司的硬件配置平台,在該平台上可以測試、配置NI公司生產的各種硬件板卡和設備。本例在NImax配置換算關系,隨后在LabVIEW程序框圖中使用該換算關系,這樣就可以直接在程序框圖中直接得到換算結果,非常直觀方便。
1、打開NImax。

圖3 打開Measurement & Automation explorer
2、單擊右鍵單擊左側目錄樹中的"換算",在彈出的快捷菜單中選擇"新建…",彈出下圖,單擊"下一步"。

圖4 新建NI-DAQmx
3、由於MCP9700具有線性輸出,所以在彈出的下圖中選擇左側框中的"映射范圍"。

圖5 選擇換算關系
4、輸入換算名稱:"MCP9700溫度換算(放大兩倍)",並單擊"完成"。

圖6 輸入換算名稱
5、單擊Measurement & Automation explorer主界面左側"換算"下的"MCP9700溫度換算(放大兩倍)",在左側配置換算關系。

圖7 配置換算關系
由於選擇了線性關系,因此只需指定線性映射關系中的"最大值"和"最小值"兩個點即可固定換算關系。如上圖所示,換算前的最大值為3V,最小值為1V;換算后的最大值為100℃,最小值為0℃;換算前單位為"伏特",換算后為"攝氏度"。最后單擊上部的"保存"。
四、測試程序
在LabVIEW的程序框圖中配置USB-6009,其中"自定義換算關系"連線端子處需連接到NImax中配置的換算關系"MCP9700溫度換算(放大兩倍)",如圖8所示。具體過程是:在連線狀態下右鍵單擊"自定義換算關系"端子——在彈出快捷菜單中選擇"創建","常量"——在工具選板中選擇"操作值"工具——單擊剛創建的"常量"——在圖8所示的快捷菜單中選擇"MCP9700溫度換算(放大兩倍)"。

圖8 指定事先配置的"自定義換算關系"
溫度測試程序如圖9所示。

圖9 溫度測試程序
上圖程序中,每輸出一個新的溫度值都啟動了100次測量,並對其求平均,以降低噪聲的影響。
五、程序運行結果
打開圖9所示的測試程序,並用手觸摸MCP9700得到圖10所示的測試曲線。

圖10 實際測試得到的溫度曲線
未完待續……
