串行通信程序的編寫過程如下:
1)串口初始化
按照VS5067-5汽車尾氣分析儀通信協(xié)議,利用LabVIEW8.2函數(shù)選板的【數(shù)據(jù)通信】→【協(xié)議】→【串口】子選板中的“VISA配置串口”函數(shù)初始化串口為波特率9600bps,數(shù)據(jù)位8位,1位停止位,無奇偶校驗(yàn)位,選擇工控計(jì)算機(jī)的COM1口。
2)發(fā)送測(cè)量命令
當(dāng)工控計(jì)算機(jī)要向尾氣分析儀發(fā)送測(cè)量命令時(shí),可利用“VISA寫入”函數(shù)發(fā)送。由于尾氣分析儀的命令為多字節(jié)的ASCII格式,因此需要將命令組建成一個(gè)數(shù)組,再利用“字節(jié)數(shù)組至字符串轉(zhuǎn)換”函數(shù)將數(shù)組轉(zhuǎn)換為字符串發(fā)送。圖3中示意的是“計(jì)算機(jī)控制”命令的發(fā)送情況,“計(jì)算機(jī)控制”命令的十六進(jìn)制表示為:02H,2AH,53H,52H,45H,4DH,20H,4BH,30H,03H。
3)接收應(yīng)答信號(hào)
當(dāng)尾氣分析儀接收到工控計(jì)算機(jī)發(fā)來的命令后,會(huì)相應(yīng)返回應(yīng)答信號(hào),程序設(shè)計(jì)中,可利用“VISA讀取”函數(shù)接收儀器的應(yīng)答信號(hào),再利用“字符串至字節(jié)數(shù)組轉(zhuǎn)換”函數(shù)將接收到的ASCII數(shù)據(jù)轉(zhuǎn)換為十六進(jìn)制數(shù)據(jù)。例如,當(dāng)儀器收到“計(jì)算機(jī)控制”命令后,返回的應(yīng)答信號(hào)十六進(jìn)制表示為:02H、2AH、 53H、52H、45H、4DH、20H、30H、03H。如果工控計(jì)算機(jī)向儀器發(fā)送“讀數(shù)據(jù)”命令,則儀器返回的應(yīng)答信號(hào)中就包含了HC、CO、 CO2、O2、NO以及轉(zhuǎn)速、油溫,λ(過量空氣系數(shù))等檢測(cè)數(shù)據(jù)。
4)關(guān)閉串口
當(dāng)工控計(jì)算機(jī)要停止尾氣檢測(cè)時(shí),可利用“VISA關(guān)閉”函數(shù)關(guān)閉串口,釋放LabVIEW占用的資源。
3 實(shí)驗(yàn)結(jié)果
我們對(duì)基于LabVIEW8.2開發(fā)的汽車尾氣檢測(cè)系統(tǒng)進(jìn)行了多臺(tái)汽車的尾氣檢測(cè)實(shí)驗(yàn)。在實(shí)驗(yàn)過程中,選擇了不同的汽車類型,得到了大量的實(shí)驗(yàn)數(shù)據(jù)。圖4 為一輛小客車的測(cè)量結(jié)果,圖中顯示的是怠速和高怠速HC的原始數(shù)據(jù)曲線,也可選擇顯示CO或其他參數(shù)的數(shù)據(jù)曲線。
4 結(jié)束語
本系統(tǒng)以LabVIEW8.2為開發(fā)平臺(tái),可以方便的對(duì)HC、CO、CO2、O2、NO等汽車排氣污染物濃度進(jìn)行檢測(cè),實(shí)驗(yàn)結(jié)果表明該系統(tǒng)有較高的穩(wěn)定性和測(cè)量精度。另外,通過在工控計(jì)算機(jī)上配置網(wǎng)卡,可實(shí)現(xiàn)汽車尾氣的聯(lián)網(wǎng)檢測(cè),從而很方便地將汽車尾氣檢測(cè)系統(tǒng)應(yīng)用于新車研究開發(fā)實(shí)驗(yàn)、新車的出廠檢驗(yàn)和交通管理部門對(duì)上路車輛定期檢驗(yàn)的汽車綜合性能檢測(cè)線中,應(yīng)用前景十分廣闊。