USB在數(shù)據(jù)采集系統(tǒng)中的應(yīng)用
2.2 軟件構(gòu)成
Windows98 提供了多種USB設(shè)備的驅(qū)動程序,但好象還沒有一種是專門針對數(shù)據(jù)采集系統(tǒng)的,所以必須針對特定的設(shè)備來編制驅(qū)動程序。盡管系統(tǒng)已經(jīng)提供了很多標準接口函數(shù),但編制驅(qū)動程序仍然是USB開發(fā)中最困難的一件事情,通常采用Windows DDK來實現(xiàn)。目前有許多第三方軟件廠商提供了各種各樣的生成工具,象Compuware的driver works,Blue Waters的Driver Wizard等,它們能夠很容易地在幾分鐘之內(nèi)生成高質(zhì)量的USB的驅(qū)動程序。
設(shè)備中單片機程序的編制也同樣困難,而且沒有任何一家廠商提供了自動生成的工具。編制一個穩(wěn)定、完善的單片機程序直接關(guān)系到設(shè)備性能,必須給予充分的重視。
以上兩個程序是開發(fā)者所關(guān)心的,用戶不大關(guān)心。用戶關(guān)心的是如何高效地通過鼠標來操作設(shè)備,如何處理和分析采集進來的大量數(shù)據(jù),因此還必須有高質(zhì)量的用戶軟件。用戶軟件必須有友好的界面,強大的數(shù)據(jù)分析和處理能力以及為用戶提供進行再開發(fā)的接口。
3 實現(xiàn)USB遠距離采集數(shù)據(jù)傳輸
傳輸距離是限制USB在工業(yè)現(xiàn)場應(yīng)用的一個障礙,即使增加了中繼或Hub,USB傳輸距離通常也不超過幾十米,這對工業(yè)現(xiàn)場而言顯然是太短了。
現(xiàn)在工業(yè)現(xiàn)場有大量采用RS-485傳輸數(shù)據(jù)的采集設(shè)備。RS-485有其固有的優(yōu)點,即它的傳輸距離可以達到1200米以上,并且可以掛接多個設(shè)備。其不足之處在于傳輸速度慢,采用總線方式,設(shè)備之間相互影響,可靠性差,需要板卡的支持,成本高,安裝麻煩等。RS-485的這些缺點恰好能被USB所彌補,而USB傳輸距離的限制恰好又是RS-485的優(yōu)勢所在。如果能將兩者結(jié)合起來,優(yōu)勢互補,就能夠產(chǎn)生一種快速、可靠、低成本的遠距離數(shù)據(jù)采集系統(tǒng)。
這種系統(tǒng)的基本思想是:在采集現(xiàn)場,將傳感器采集到的模擬量數(shù)字化以后,利用RS-485協(xié)議將數(shù)據(jù)上傳。在PC端有一個雙向RS-485~USB的轉(zhuǎn)換接口,利用這個轉(zhuǎn)接口接收485的數(shù)據(jù)并通過USB接口傳輸至PC機進行分析處理。而主機向設(shè)備發(fā)送數(shù)據(jù)的過程正好相反:主機向USB口發(fā)送數(shù)據(jù),數(shù)據(jù)通過485~USB轉(zhuǎn)換口轉(zhuǎn)換為485協(xié)議向遠端輸送,如圖3所示。
在圖3的方案中,關(guān)鍵設(shè)備是485~USB轉(zhuǎn)換器。這樣的設(shè)備在國內(nèi)外都已經(jīng)面市。筆者也曾經(jīng)用NATIONAL SEMICONDUCTOR公司的USBN9602+89c51+MAX485實現(xiàn)過這一功能,在實際應(yīng)用中取得了良好的效果。
需要特別說明的是,在485~USB轉(zhuǎn)換器中,485接口的功能和通常采用485卡的接口性能(速率、驅(qū)動能力等)完全一樣,也就是說,一個485~USB轉(zhuǎn)換器就能夠完全取代一塊485卡,成本要低許多,同時具有安裝方便、不受插槽數(shù)限制、不用外接電源等優(yōu)點,為工業(yè)和科研數(shù)據(jù)采集提供了一條方便、廉價、有效的途徑。
4 綜合式采集數(shù)據(jù)傳輸系統(tǒng)的實現(xiàn)
現(xiàn)在的數(shù)據(jù)采集系統(tǒng)通常有分布式和總線兩種。采用USB接口易于實現(xiàn)分布式,而485接口則易于實現(xiàn)總線式,如果將這兩者結(jié)合起來,則能夠?qū)崿F(xiàn)一種綜合式的數(shù)據(jù)采集系統(tǒng)。實現(xiàn)方法是:仍然利用上面提到過的USB~485轉(zhuǎn)換器實現(xiàn)兩種協(xié)議的轉(zhuǎn)換。由于USB的數(shù)據(jù)傳輸速率大大高于485,因此在每條485總線上仍然可以掛接多個設(shè)備,形成了圖4所示的結(jié)構(gòu),其中D代表一個設(shè)備。
這種傳輸系統(tǒng)適用于一些由多個空間上相對分散的工作點,而每個工作點又有多個數(shù)據(jù)需要進行采集和傳輸?shù)膱龊?,例如大型糧庫,每個糧倉在空間上相對分散,而每個糧倉又需要采集溫度、濕度、二氧化碳濃度等一系列數(shù)據(jù)。在這樣的情況下,每一個糧倉可以分配一條485總線,將溫度、濕度、二氧化碳濃度等量的采集設(shè)備都掛接到485總線上,然后每個糧倉再通過485總線傳輸?shù)奖O(jiān)控中心,并轉(zhuǎn)換為USB協(xié)議傳輸?shù)絇C機,多個糧倉的傳輸數(shù)據(jù)在轉(zhuǎn)換為USB協(xié)議后可以通過Hub連接到一臺PC機上。由于糧倉的各種數(shù)據(jù)監(jiān)測實時性要求不是很高,因此采用這種方法可以用一臺PC機完成對一個大型糧庫的所有監(jiān)測工作。
5 前景展望
USB設(shè)備的應(yīng)用目前在國外處于高速發(fā)展階段,在國內(nèi)的應(yīng)用已經(jīng)起步。我們在USB數(shù)據(jù)采集、USB工業(yè)控制等領(lǐng)域已經(jīng)取得了一定的成果,在現(xiàn)實中得到成功的應(yīng)用。
即將出臺的USB2.0協(xié)議,數(shù)據(jù)傳輸速率高達480Mbps,如此高的傳輸速率能用于1.0的傳輸速率所無法滿足的地方,如高實時性要求的工業(yè)設(shè)備控制、動態(tài)圖像實時傳輸?shù)取kS著時代的進步和技術(shù)的發(fā)展,USB必將在更廣闊的領(lǐng)域得到更深層次的應(yīng)用。
評論