基于USB接口與labview的數(shù)據(jù)采集卡設計_第1頁
基于USB接口與labview的數(shù)據(jù)采集卡設計_第2頁
基于USB接口與labview的數(shù)據(jù)采集卡設計_第3頁
基于USB接口與labview的數(shù)據(jù)采集卡設計_第4頁
基于USB接口與labview的數(shù)據(jù)采集卡設計_第5頁
已閱讀5頁,還剩70頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

河北工程大學畢業(yè)設計PAGEI摘要離心式水泵是礦山機械中廣泛使用的機械設備,對保證礦山生產(chǎn)安全正常地進行發(fā)揮著重要的作用。一種準確方便的水泵檢測設備對于煤礦企業(yè)來說是非常重要的。并且對于保障礦山安全生產(chǎn)具有重要的意義。水泵要測量的主要參數(shù)有流量,水泵轉速,電機轉速,電機功率,電機電流,水泵軸功率。文中介紹了一種用USB2.0總線技術解決數(shù)據(jù)采集系統(tǒng)接口題的實施方案。文中首先深入研究了USB的體系結構,然后結合提出的方案,較為全面地介紹了系統(tǒng)的硬件和軟件設計。其中硬件部分具體描述了USB2.0控制器CY7C68013和模數(shù)轉換芯片ADS7825P的接口設計,同時也給出了各種電源轉換的實現(xiàn)方法。在軟件部分,通過分析EZ-USB的固件編程框架驅動程序是系統(tǒng)硬件和應用程序之間通信的橋梁,文中介紹了USB的LABVIEW驅動程序設計過程;最后,設計了數(shù)據(jù)采集和上位機驅動的應用程序,并對其功能做了解釋。系統(tǒng)不僅實現(xiàn)了數(shù)據(jù)的采集、傳輸和保存數(shù)據(jù)的功能,并且具有熱插拔、即插即用、便攜式的特點,達到了預期的效果。關鍵詞:離心泵測試,數(shù)據(jù)采集,USB2.0,驅動程序,Labview河北工程大學畢業(yè)設計PAGE63AbstractCentrifugalpumpsarewidelyusedinminingmachinery,mechanicalequipment,toensurethesafetyofmineproductiontonormalplayanimportantrole.Anaccurateandconvenientpumptestequipmentforthecoalminingenterprisesisveryimportant.Safetyofcoalminesandfortheproductionofgreatsignificance.Themainpumpparameterstomeasureflow,pumpspeed,motorspeed,motorpower,motorcurrent,pumpshaftpower.Basedontheresearch,thesolutiontothedataacquisitionsystemwasputforwardwiththeUSB2.0technologyinthepaper.Withtheanalysisonthesubject,thearchitectureoftheUSBwasdeeplyanalyzedfirstly,andaccordingtotheschemeofthedataacquisitionsystem,thedetailedhardwareandsoftwaredesignwasintroduced.Inthehardwaresection,theinterfacebetweentheCY7C68013andtheA/Dconverterwasintroduced,andthevariousDC-DCcircuitwereembodied.Inthesoftwaresection,andthetestingresultofthefirmwarewaslistedattheendofthefirmwarepart;Functiondriveristhebridgebetweenhardwareandsoftware,andthedesignprocessoftheLABVIEWdriverfortheUSBwasintroducedhere;Finallytheapplicationsoftwareusedtoexhibitthecurvesanduppercomputerdriverwasdesigned,andthefunctionsofthesoftwarewerealsoexplained.Thesystemnotonlyachievethedataacquisition,transformingandmemory,butalsohastheattributesofhot-plug-in,plus-and-play,andman-pack.Theexpectresultisachieved.Keywords:CentrifugalPump,Dataacquisition,USB2.0,Driver,Labview目錄摘要 IAbstract II第一章緒論 11.1課題研究的背景及意義 11.2USB簡介 11.2.1USB優(yōu)點 11.2.2國內外應用現(xiàn)狀及發(fā)展趨勢 21.3離心泵測試 31.4虛擬儀器技術及相關知識 41.4.1虛擬儀器簡述 41.4.2虛擬儀器的優(yōu)勢 51.4.3虛擬儀器系統(tǒng)的構成 51.5課題研究的主要內容 71.6課題意義 7第二章基于USB數(shù)據(jù)采集系統(tǒng)整體設計 82.1USB數(shù)據(jù)采集系統(tǒng)的性能指標 82.2USB數(shù)據(jù)采集系統(tǒng)的硬件構成 82.3USB數(shù)據(jù)采集系統(tǒng)的軟件設計 8第三章數(shù)據(jù)采集系統(tǒng)硬件電路設計 103.1USB2.0協(xié)議 103.1.1USB系統(tǒng)組成 103.1.2USB設備組成 103.1.3USB2.0數(shù)據(jù)幀 123.1.4USB2.0端點緩沖區(qū) 133.1.5USB插頭插座 143.2主要芯片介紹 143.2.1為何選擇CY7C68013 143.2.2CY7C68013芯片簡介 163.1.3ADS7825P簡介 223.2USB采集系統(tǒng)原理電路設計 243.2.1主芯片外圍電路設計 243.2.2A/D轉換電路設計 253.2.3傳感信號處理電路設計 283.2.4電源電路設計 303.2.5EEPROM電路設計 32第四章USB數(shù)據(jù)采集系統(tǒng)軟件設計 344.1固件程序開發(fā) 344.1.1固件功能及編程 344.1.2列舉和重列舉 364.1.3USB描述符 384.2驅動程序開發(fā) 404.2.1使用DriverDevelopmentWizard創(chuàng)建INF文檔 404.2.2安裝INF文檔和USB設備 434.2.3使用VISAInteractiveControl測試通訊情況 444.3數(shù)據(jù)采集程序設計 464.4上位機程序開發(fā) 47第五章結論與展望 49參考文獻 50致謝 51第一章緒論1.1課題研究的背景及意義信息技術與電子技術的迅猛發(fā)展,使得計算機和外圍設備也得到飛速發(fā)展和應用,在科學研究領域和許多生產(chǎn)場合中常用到數(shù)據(jù)采集技術,并且對數(shù)據(jù)采集的各種要求也越來越高。傳統(tǒng)的通信方式由于傳輸速度慢、抗干擾能力弱、安裝麻煩等原因嚴重阻礙了數(shù)據(jù)采集設備的發(fā)展,新一代通用串行總線(UniversalSerialBus,簡稱USB)具有傳輸線少、速度快、支持熱插拔以及易于擴展等優(yōu)點,很好的解決了以上問題,因此串行總線技術在計算機系統(tǒng)及通信設備中迅速得到了廣泛的應用。文中分析了USB總線的體系結構和特點,針對傳統(tǒng)總線不足之處,在此基礎上研究了基于USB的數(shù)據(jù)采集系統(tǒng),根據(jù)系統(tǒng)應該達到的技術指標,從而確定系統(tǒng)的整體框架和各個部分芯片的選擇。而且USB接口芯片價格低廉,大大促進USB設備的開發(fā)和應用。所以目前基于USB的數(shù)據(jù)采集卡已經(jīng)成為一種流行趨勢HYPERLINK\o"12"[12]。通常開發(fā)USB系統(tǒng)時,先用WindowsDDK(設備驅動程序開發(fā)包)或第三方開發(fā)工具(如DriverStudio)開發(fā)USB驅動程序,然后用VisualC++編寫DLL(動態(tài)連接庫),最后再調用DLL來開發(fā)應用程序,這對不熟悉Windows編程的人有一定的難度;而USB應用程序也大都是使用VisualC++來編寫的,過程繁瑣,調試麻煩,花費的時間也比較長。美國國家儀器NI(NationalInstrument)公司開發(fā)的LabⅥEW(LaboratoryVirtualInstrumentEngineeringWorkbeneh)語言是一種基于圖形程序的編程語言,含有豐富的數(shù)據(jù)采集、數(shù)據(jù)信號分析以及控制等子程序,易于調試和維護,且程序編程簡單、直觀口??梢灾苯釉贚abⅥEW環(huán)境下通過NI—VISA(VirtualInstrumentSoftwareArchiteeture,以下簡稱為“VISA”)開發(fā)驅動程序,完全避開了以前開發(fā)USB驅動程序的復雜性,大大縮短了開發(fā)周期。用它來開發(fā)應用程序,把采集來的數(shù)據(jù)傳送到主機上,再通過LabⅥEW的模塊實現(xiàn)數(shù)據(jù)的實時顯示、分析和存儲。1.2USB簡介1.2.1USB優(yōu)點USB(universalSerialBus)是一種通用串行總線USB是1995年康柏、微軟、mM、DEC等公司為解決傳統(tǒng)總線不足而推廣的一種新型的快速雙向同步傳輸并可熱插拔數(shù)據(jù)傳輸總線。該總線接口具有以下優(yōu)點[4]:(l)低成本。為了把外設連接到計算機上,USB提供了一種低成本的解決方案,即所有系統(tǒng)的智能機制都駐留在主機并嵌入芯片組中,方便了外設的制造。(2)可以熱插拔。這就讓用戶在使用外接設備時,不需要重復“關機將并口或串口電纜接上再開機”這樣的動作,而是直接在PC開機時,就可以將USB電纜插上使用。(3)攜帶方便。USB設備大多以“小、輕、薄”見長,對用戶來說,同樣20G的硬盤,USB硬盤比roE硬盤要輕一半的重量,在想要隨身攜帶大量數(shù)據(jù)時,當然USB設備會是首要之選。(4)標準統(tǒng)一。大家常見的是DE接口的硬盤,串口的鼠標鍵盤,并口的打印機掃描儀,可是有了USB之后,這些應用外設統(tǒng)統(tǒng)可以用同樣的標準與PC連接,這時就有了USB硬盤、USB鼠標、USB打印機。(5)單一連接器類型。USB定義了一種簡單的連接器,僅適用一個四芯電纜即可鏈接任何一個USB設備。(6)獨立供電。USB通過集線器向設備提供電源,當外設的電源要求電壓5v電流小于5OOmA時,可以直接從USB總線獲取電源,這樣USB無需專用電源線,從而降低成本。(7)錯誤檢測和恢復。USB事務處理包括錯誤檢測機制,他們可以確保數(shù)據(jù)無錯誤發(fā)送了(8)USB系統(tǒng)在設計保持了向上的繼承性。1.2.2國內外應用現(xiàn)狀及發(fā)展趨勢USB設備的應用目前在國外處于高速發(fā)展階段,國外有些企業(yè)也已經(jīng)推出了很多適應不同條件、不同精度的USB數(shù)據(jù)采集系列產(chǎn)品。典型的是美國國家儀器有限公司(NationalInstruments,NI)公司研制的一系列USB數(shù)據(jù)采集卡,NI于2005年8月退出了八款最新USB2.0高速數(shù)據(jù)采集設備,從而擴展了其業(yè)界領先的高性能USB數(shù)據(jù)采集設備USB-9000系列產(chǎn)品,實現(xiàn)了高達800ks/s的采樣率。此后新推出的USB2.0高速設備包含免費的交互式數(shù)據(jù)記錄軟件,以供分析之用。USB設備在國內的應用已經(jīng)起步,并速度快,水平不斷提高。市場上國內產(chǎn)品有北京優(yōu)采公司UA300系列、四川拓普公司的UDAQ,UBOX,UCARD等系列。國內在USB數(shù)據(jù)采集,USB工業(yè)控制等領域已經(jīng)取得了一定的成果,在現(xiàn)實中的得到成功的應用。USB2.0協(xié)議,數(shù)據(jù)傳輸速率高達480Mbps,如此高的傳輸速率能用于1.0的傳輸速率所無法滿足的地方,如高實時性要求的工業(yè)設備控制,動態(tài)圖像實時傳輸?shù)?,隨著時代的進步和技術的發(fā)展,USB必將在更廣闊的領域得到更深層次的應用。國內有一些廠商為USB設備研發(fā)提供軟硬件支持,這很大程度上降低了開發(fā)難度,減少了開發(fā)時間,提高了開發(fā)質量和效率USB2.0接口憑借低成本,高性能,可靠穩(wěn)定,方便靈活的特點,將逐步成為微型計算機的主要輸入輸出方式。總的來說,目前國內對USB數(shù)據(jù)采集設備的研制已經(jīng)取得了可喜的發(fā)展,但是與國外的情況相比,在開發(fā)和應用的深度和廣度而言,還有一段距離現(xiàn)場數(shù)據(jù)采集要求比較高的場合多是采用的國外產(chǎn)品。因此,隨著計算機對USB接口的普及和實際應用中對數(shù)據(jù)采集卡要求的提高,利用USB2.0協(xié)議規(guī)范開發(fā)出符合多種場合要求的數(shù)據(jù)采集系統(tǒng),以及此領域內先進產(chǎn)品的國產(chǎn)化等都成了急待解決的現(xiàn)實問題1.3離心泵測試離心泵由于具有結構簡單,緊湊,重量輕,造價低,排量大以及供液均勻等優(yōu)點,因而獲得了廣泛的應用。由于泵類產(chǎn)品在結構上和在運行過程中特有的復雜性,對泵的性能測試是泵研制、開發(fā)以及生產(chǎn)中必不可少的重要環(huán)節(jié)[1]。傳統(tǒng)的測試系統(tǒng)存在硬件集成復雜、界面不友好、開發(fā)周期長和對開發(fā)人員編程能力要求高等缺點[2]。本文基于LabVIEW虛擬儀器平臺,運用USB總線技術,開發(fā)的離心泵性能測試系統(tǒng)很好的解決了上述缺點,系統(tǒng)硬件簡單,可移動性強,操作方便,實用性強,具有十分重要的現(xiàn)實意義。水泵要測量的主要參數(shù)有流量,水泵轉速,電機轉速,電機功率,電機電流,水泵軸功率。水泵流量的檢測有多種方法與傳感器,比如水堰法,差壓式流量計,渦輪流量計,電磁流量計,超聲波流量計,但相比較而言超聲波流量計不破壞管路于管外安裝,且簡單實用,安裝方便,。由于不和流體接觸,對流體無阻力,因此在煤礦生產(chǎn)中應用日益廣泛。超聲波流量計可以適用于不同大小管徑的流量測量,解決了大管徑流量的測量問題。轉速的測量方法很多,根據(jù)脈沖計數(shù)來實現(xiàn)轉速測量的方法主要有M法(測頻法)、T法(測周期法)和MPT法(頻率周期法),我們采用和測頻法。根據(jù)霍爾效應原理,將一塊永久磁鋼固定在電機轉軸上的轉盤邊沿,轉盤隨測軸旋轉,磁鋼也將跟著同步旋轉,在轉盤下方安裝一個霍爾器件,轉盤隨軸旋轉時,受磁鋼所產(chǎn)生的磁場的影響,霍爾器件輸出脈沖信號,其頻率和轉速成正比。電機轉速的檢測同水泵轉速。功率通常是指機械的回轉功率,即在穩(wěn)定狀態(tài)下原機軸端的扭矩與轉速的乘積。測量的方法主要有:用轉矩速傳感器與轉矩轉速功率儀配套測量、扭矩法測功率和電測法等。也可以用功率傳感器直接測量。功率傳感器也稱功率計探頭,它把高頻電信號通過能量轉換為可以直接檢測的電信號。水泵的軸功率是電動機傳遞給水泵軸的功率。水泵軸功率的測定實質上是通過測定拖動電機的輸入功率和功率損耗來確定拖動電機的輸出功率,對于聯(lián)軸器直連傳動機組,電動機輸出功率與傳動效率之積為水泵軸功率。1.4虛擬儀器技術及相關知識虛擬技術、計算機通信技術與網(wǎng)絡技術是信息技術的重要組成部分,它們被稱為21世紀科學技術中的三大核心技術。虛擬技術的出現(xiàn)大大改變了人類現(xiàn)有的思維模式工作模式和生活模式。虛擬儀器技術是計算機技術和儀器技術深層次結合的產(chǎn)物,是一種全新的儀器形式。它的出現(xiàn)使儀器與計算機之間的界限開始消失,是儀器發(fā)展史上的一場革命。1.4.1虛擬儀器簡述 虛擬儀器技術就是利用高性能的模塊化硬件,結合高效靈活的軟件來完成各種測試、測量和自動化的應用。自1986年問世以來,世界各國的工程師和科學家們都已將NILabVIEW圖形化開發(fā)工具用于產(chǎn)品設計周期的各個環(huán)節(jié),從而改善了產(chǎn)品質量、縮短了產(chǎn)品投放市場的時間,并提高了產(chǎn)品開發(fā)和生產(chǎn)效率。使用集成化的虛擬儀器環(huán)境與現(xiàn)實世界的信號相連,分析數(shù)據(jù)以獲取實用信息,共享信息成果,有助于在較大范圍內提高生產(chǎn)效率。虛擬儀器提供的各種工具能滿足我們任何項目需要。20年來,無論是初學乍用的新手還是經(jīng)驗豐富的程序開發(fā)人員,虛擬儀器在各種不同的工程應用和行業(yè)的測量及控制的用戶中廣受歡迎,這都歸功于其直觀化的圖形編程語言。虛擬儀器的圖形化數(shù)據(jù)流語言和程序框圖能自然地顯示您的數(shù)據(jù)流,同時地圖化的用戶界面直觀地顯示數(shù)據(jù),使我們能夠輕松地查看、修改數(shù)據(jù)或控制輸入[19]。美國國家儀器公司NI(NationalInstruments)提出的虛擬測量儀器(VI)概念,引發(fā)了傳統(tǒng)儀器領域的一場重大變革,使得計算機和網(wǎng)絡技術得以長驅直入儀器領域,和儀器技術結合起來,從而開創(chuàng)了“軟件即是儀器”的先河。“軟件即是儀器”這是NI公司提出的虛擬儀器理念的核心思想。從這一思想出發(fā),基于電腦或工作站、軟件和I/O部件來構建虛擬儀器。I/O部件可以是獨立儀器、模塊化儀器、數(shù)據(jù)采集板(DAQ)或傳感器。NI所擁有的虛擬儀器產(chǎn)品包括軟件產(chǎn)品(如LabVIEW)、GPIB產(chǎn)品、數(shù)據(jù)采集產(chǎn)品、信號處理產(chǎn)品、圖像采集產(chǎn)品、DSP產(chǎn)品和VXI控制產(chǎn)品等。1.4.2虛擬儀器的優(yōu)勢同其他技術相比,虛擬儀器技術具有四大優(yōu)勢[16]:1)性能高虛擬儀器技術是在PC技術的基礎上發(fā)展起來的,所以完全"繼承"了以現(xiàn)成即用的PC技術為主導的最新商業(yè)技術的優(yōu)點,包括功能超卓的處理器和文件I/O,使您在數(shù)據(jù)高速導入磁盤的同時就能實時地進行復雜的分析。此外,不斷發(fā)展的因特網(wǎng)和越來越快的計算機網(wǎng)絡使得虛擬儀器技術展現(xiàn)其更強大的優(yōu)勢。2)擴展性強NI的軟硬件工具使得我們不再受限于當前的技術中。這得益于NI軟件的靈活性,只需更新計算機或測量硬件,就能以最少的硬件投資和極少的、甚至無需軟件上的升級即可改進整個系統(tǒng)。在利用最新科技的時候,我們可以把它們集成到現(xiàn)有的測量設備,最終以較少的成本加速產(chǎn)品上市的時間。3)開發(fā)時間少在驅動和應用兩個層面上,NI高效的軟件構架能與計算機、儀器儀表和通訊方面的最新技術結合在一起。NI設計這一軟件構架的初衷就是為了方便用戶的操作,同時還提供了靈活性和強大的功能,使我們輕松地配置、創(chuàng)建、發(fā)布、維護和修改高性能、低成本的測量和控制解決方案。4)無縫集成虛擬儀器技術從本質上說是一個集成的軟硬件概念。隨著產(chǎn)品在功能上不斷地趨于復雜,工程師們通常需要集成多個測量設備來滿足完整的測試需求,而連接和集成這些不同設備總是要耗費大量的時間。NI的虛擬儀器軟件平臺為所有的I/O設備提供了標準的接口,幫助我們輕松地將多個測量設備集成到單個系統(tǒng),減少了任務的復雜性。1.4.3虛擬儀器系統(tǒng)的構成虛擬儀器由硬件設備與接口、設備驅動軟件和虛擬儀器面板組成。其中,硬件設備與接口可以是各種以PC為基礎的內置功能插卡、通用接口總線接口卡、串行口、VXI總線儀器接口等設備,或者是其它各種可程控的外置測試設備,設備驅動軟件是直接控制各種硬件接口的驅動程序,虛擬儀器通過底層設備驅動軟件與真實的儀器系統(tǒng)進行通訊,并以虛擬儀器面板的形式在計算機屏幕上顯示與真實儀器面板操作元素相對應的各種控件[15]。用戶用鼠標操作虛擬儀器的面板就如同操作真實儀器一樣真實與方便。1.虛擬儀器系統(tǒng)的硬件構成虛擬儀器的硬件系統(tǒng)一般分為計算機硬件平臺和測控功能硬件。計算機硬件平臺可以是各種類型的計算機,如臺式計算機、便攜式計算機、工作站、嵌入式計算機等。它管理著虛擬儀器的軟件資源,是虛擬儀器的硬件基礎。因此,計算機技術在顯示、存儲能力、處理器性能、網(wǎng)絡、總線標準等方面的發(fā)展,導致了虛擬儀器系統(tǒng)的快速發(fā)展。按照測控功能硬件的不同,VI可分為DAQ、GPIB、VXI、PXI和串口總線五種標準體系結構,它們主要完成被測輸入信號的采集、放大、模/數(shù)轉換。2.虛擬儀器系統(tǒng)的軟件構成測試軟件是虛擬儀器的主心骨。NI公司在提出虛擬儀器概念并推出第一批實用成果時,就用軟件就是儀器來表達虛擬儀器的特征,強調軟件在虛擬儀器中的重要位置。NI公司從一開始就推出豐富而又簡潔的虛擬儀器開發(fā)軟件。使用者可以根據(jù)不同的測試任務,在虛擬儀器開發(fā)軟件的提示下編制不同的測試軟件,來實現(xiàn)當代科學技術復雜的測試任務。在虛擬儀器系統(tǒng)中用靈活強大的計算機軟件代替?zhèn)鹘y(tǒng)儀器的某些硬件,特別是系統(tǒng)中應用計算機直接參與測試信號的產(chǎn)生和測量特性的分析,使儀器中的一些硬件甚至整個儀器從系統(tǒng)中消失,而由計算機的軟硬件資源來完成它們的功能。虛擬儀器測試系統(tǒng)的軟件主要分為以下四部分。(1)儀器面板控制軟件儀器面板控制軟件即測試管理層,是用戶與儀器之間交流信息的紐帶。利用計算機強大的圖形化編程環(huán)境,使用可視化的技術,從控制模塊上選擇你所需要的對象,放在虛擬儀器的前面板上。(2)數(shù)據(jù)分析處理軟件利用計算機強大的計算能力和虛擬儀器開發(fā)軟件功能強大的函數(shù)庫可以極大提高虛擬儀器系統(tǒng)的數(shù)據(jù)分析處理能力,節(jié)省開發(fā)時間。(3)儀器驅動軟件虛擬儀器驅動程序是處理與特定儀器進行控制通信的一種軟件。儀器驅動器與通信接口及使用開發(fā)環(huán)境相聯(lián)系,它提供一種高級的、抽象的儀器映像,它還能提供特定的使用開發(fā)環(huán)境信息。儀器驅動器是虛擬儀器的核心,是用戶完成對儀器硬件控制的紐帶和橋梁。虛擬儀器驅動程序的核心是驅動程序函數(shù)/VI集,函數(shù)/VI是指組成驅動的模塊化子程序。驅動程序一般分為兩層,底層是儀器的基本操作,如初始化儀器配置儀器輸入?yún)?shù)、收發(fā)數(shù)據(jù)、查看儀器狀態(tài)等。高層是應用函數(shù)/VI層,它根據(jù)具體測量要求調用底層的函數(shù)/VI。(4)通用I/O接口軟件在虛擬儀器系統(tǒng)中,I/O接口軟件作為虛擬儀器系統(tǒng)軟件結構中承上啟下的一層,其模塊化與標準化越來越重要。VXI總線即插即用聯(lián)盟,為其制定了標準,提出了自底向上的I/O接口軟件模型即VISA。作為通用I/O標準,VISA具有與儀器硬件接口無關性的特點,即這種軟件結構是面向器件功能而不是面向接口總線的。應用工程師為帶GPIB接口儀器所寫的軟件,也可以于VXI系統(tǒng)或具有RS232接口的設備上,這樣不但大大縮短了應用程序的開發(fā)周期,而且徹底改變了測試軟件開發(fā)的方式和手段[16]。1.5課題研究的主要內容本課題為水泵測試研究項目的一部分,旨在研究開發(fā)一款目前比較流行的基于USB接口與labview的數(shù)據(jù)采集卡。本課題分為以下幾個主要方面:(l)熟悉USB協(xié)議及體系結構,掌握操作系統(tǒng)知識。(2)完成USB接口數(shù)據(jù)采集卡硬件電路設計。(3)設計水泵測試中的采集信號的處理電路。(4)編寫固件程序與驅動程序。(5)用labview編寫上位機讀寫USB的上位機程序。其中難點是在于硬件電路的設計、usb驅動及上位機程序的編寫。1.6課題意義隨著USB接口在PC機上已經(jīng)成為標配以及現(xiàn)代工業(yè)生產(chǎn)和科學研究對數(shù)據(jù)采集的要求日益提高,在瞬態(tài)信號測量、圖像處理等一些高速、高精度的測量中,基于USB接口的數(shù)據(jù)采集平臺的優(yōu)勢日益突顯出來。目前在基于USB的數(shù)據(jù)采集卡已經(jīng)成為一種流行趨勢。但目前讓有一些問題尚在研究發(fā)展之中,如,高速實時同步數(shù)據(jù)采集。本課題旨在研究開發(fā)一款目前比較流行的基于USB接口的數(shù)據(jù)采集卡,為今后的大量應用奠定基石。河北工程大學畢業(yè)設計第二章基于USB數(shù)據(jù)采集系統(tǒng)整體設計基于USB總線數(shù)據(jù)采集系統(tǒng)包括兩部分:系統(tǒng)的硬件設計和軟件設計。硬件設計部分完成數(shù)據(jù)采集功能,并將采集的數(shù)據(jù)傳送給PC機;軟件設計包括USB固件程序、設備驅動程序和上位機應用程序。整體設計思路為:用戶通過主機端的應用軟件下載USB固件代碼,并向采集系統(tǒng)發(fā)出讀寫指令以及對對A/D的設置數(shù)據(jù):采集系統(tǒng)收到指令后,根據(jù)所收到的設置開始對外部模擬信號進行A/D變換,轉換后的數(shù)據(jù)有USB傳輸至計算機,在labview上位機程序中實現(xiàn)數(shù)據(jù)的接收和讀取和顯示。下面以USB數(shù)據(jù)采集系統(tǒng)須達到的技術指標來分別介紹這兩部分的設計構想和原理。2.1USB數(shù)據(jù)采集系統(tǒng)的性能指標(1)接口方式:USB總線接口(支持USB2.0接口標準、可熱插拔,即插即拔);(2)輸入通道:8個通道;(3)測量信號:工業(yè)現(xiàn)場各類傳感器的輸出電壓信號、電流信號;(4)信號的輸入范圍:0-5V;(5)A/D分辨率:16Bit;(6)用戶程序要實現(xiàn)數(shù)據(jù)的接收和讀取功能;2.2USB數(shù)據(jù)采集系統(tǒng)的硬件構成基于usb總線數(shù)據(jù)采集系統(tǒng)的硬件部分主要有以下幾部分組成[18]:A/D模數(shù)轉換芯片、usb2.0主控器、電源設計。實現(xiàn)多通道數(shù)據(jù)采集,多通道輸入數(shù)據(jù)經(jīng)過A/D的多通道數(shù)據(jù)選擇并轉換,由usb接口控制芯片的IN端點讀入緩沖區(qū),在由其OUT端點輸出至PC機。

系統(tǒng)的工作流程為采集信號輸入模數(shù)轉換器(ads7815p)轉換為數(shù)字信號用cy7c68013的I/O口引腳來控制ADS7825P,進行讀數(shù)據(jù)。PC的用戶應用程序發(fā)出接受數(shù)據(jù)的請求,并由設備發(fā)出相應的響應決定是否開始傳輸數(shù)據(jù)。當系統(tǒng)上電后,系統(tǒng)自動識別設備后加載驅動程序,usb控制器的控件程序通過USB電纜從主機自動下載到其應用程序RAM中,并經(jīng)過列舉和重列舉后開始正常工作,計算機可以通過用戶軟件取得系統(tǒng)的配置信息。2.3USB數(shù)據(jù)采集系統(tǒng)的軟件設計

圖2.1系統(tǒng)軟件的層次圖USB數(shù)據(jù)采集系統(tǒng)的軟件部分一共包括三部分:芯片的固件程序、設備的驅動程序和用戶界面程序。這三部分;層次關系如圖2.1所示。USB固件程序是USB數(shù)據(jù)采集系統(tǒng)中處于最底層的設備端。它主要完成對USB芯片68013、A/D轉換以及整個電路的初始化,將采集的數(shù)據(jù)送入cy7c68013的緩沖區(qū)發(fā)給PC機,接受并執(zhí)行PC發(fā)出的指令。它負責處理PC機發(fā)來的各種USB設備請求,并以外圍電路進行數(shù)據(jù)傳輸[14]。USB驅動程序給用戶界面程序提供了軟件和硬件的平臺連接的通道。應用程序的主要功能是對采集的數(shù)據(jù)進行讀取顯示,開發(fā)用戶界面程序可以選擇不同的開發(fā)軟件,本系統(tǒng)中的應用程序軟件是LABVIEW,它可以使用圖形化編程語言,簡單易懂,功能強大。第三章數(shù)據(jù)采集系統(tǒng)硬件電路設計本章主要介完成USB數(shù)據(jù)采集系統(tǒng)的硬件電路的設計,硬件電路設計部分主要包括多通道A/D轉換電路、USB2.0主控制器(cy7c68013)外圍電路設計、cy7c68013與模數(shù)轉換器ADS7825P的鏈接、傳感信號調理電路、電源設計部分等。3.1USB2.0協(xié)議3.1.1USB系統(tǒng)組成首先了USB設備組成,并帶著這些問題去閱讀。USB系統(tǒng)的三個組成HOST、HUB和Device。圖3.1USB最簡單系統(tǒng)組成HOST:主控器,PC端的就是HOST了,如果我們在ARM芯片或者單片機上加上一個HOST芯片就可以讀寫U盤和其它的DEVICE了HUB:HOST只有一個USB口,如果要同時使用多個USBDEVICE,HUB 可以將一個USB口擴充多個USB口,市場上都有賣。DEVICE:似乎大家對這個最為親切,因為我們接觸最多就是USBDEVICE,例如移動硬盤、打印機、U盤等。典型的USB系統(tǒng)都是由三者構成的,實際上主要是由HOST和DEVICE組成,最簡潔的USB系統(tǒng)構成如圖3.1所示,其中CPU可以是PC機、單片機、ARM、MIPS、COLDFIRE、POWERPC.3.1.2USB設備組成圖3.2USB設備組成一般,如圖3.2所示,每個USB設備由一個或多個配置(configuration)來控制其行為,使用多配置原因是對操作系統(tǒng)的支持;一個配置中是由接口(Interface)組成;接口則是由管道(Pipe)組成;管道是和USB 設備的端點(Endpoint)對應,端點都是輸入輸出成對的。在固件編程中,USB設備、配置、接口和管道都有描述符來報告其屬性。雖然圖中配置、接口、端點很多,但是一般使用的時候配置和接口我們都只設置一個,根據(jù)數(shù)據(jù)傳輸?shù)膶嶋H情況,來選擇用哪個端點,每個芯片的端點數(shù)都是一定的,例如AN2131有32個,68013有7個端點,而實際工程中可能采用到其中的幾個[12]。端點有了,就可以建立數(shù)據(jù)傳輸?shù)墓艿溃粋€端點建立一個通道。一般管道的端點總是成對出現(xiàn),一個 IN(DEVICE->PC),一個OUT(DEVICE<-PC)。如圖3.3,端點0默認配置為控制管道,用來完成所規(guī)定的設備請求,設備請求詳見USB協(xié)議第九章。其它端點可配置為數(shù)據(jù)管道,對開發(fā)而言,主要的大數(shù)據(jù)傳輸都是通過數(shù)據(jù)管道來完成的。用戶需要根據(jù)實際數(shù)據(jù)傳輸速度來規(guī)定數(shù)據(jù)管道的傳輸類型。同時,每種數(shù)據(jù)傳輸都必須根據(jù)數(shù)據(jù)請求的格式來進行。隨著USB1.X的普及應用,為了增加USB接口的應用范圍,USB-IF推出USB2.0規(guī)范,該規(guī)范在兼容USB1.X的基礎至上,增加了480Mbps的高速數(shù)據(jù)傳輸??偩€拓撲上USB2.0仍然采用USB1.X的樹型結構;物理連接上使用USB1.X定義好的A型和B型接口;在傳輸速度上,USB2.0支持1.5Mbps,12Mbps,480Mbps;數(shù)據(jù)傳輸上USB2.0同USB1.1規(guī)范,支持四種傳輸:控制傳輸,批量傳輸,中斷傳輸和等時傳輸;在數(shù)據(jù)包上,USB2.0和USB1.1有著相同的數(shù)據(jù)格式,為了支持高速數(shù)據(jù),USB2.0增加了新的令牌數(shù)據(jù)包圖3.3USB多層次通訊模型3.1.3USB2.0數(shù)據(jù)幀USB2.0和USB1.1規(guī)范最大的不同之處就是數(shù)據(jù)幀。如圖3.4,在USB1.1規(guī)范中,USB數(shù)據(jù)采用每毫秒一個數(shù)據(jù)幀的方式進行數(shù)據(jù)傳輸,在毫秒數(shù)據(jù)幀的開始,USB 主機首先產(chǎn)生幀開始(SOF)數(shù)據(jù)包,并傳輸當前數(shù)據(jù)幀號,后面是傳輸數(shù)據(jù)。對于USB2.0規(guī)范,為了支持480Mbps高速傳輸速度,如圖3.5,USB2.0提出了微幀的概念,每毫秒數(shù)據(jù)幀又包括8個微幀[8]。圖3.4USB1.1數(shù)據(jù)幀圖3.5USB2.0數(shù)據(jù)幀從圖3.4和圖3.5中可看出,在USB每個數(shù)據(jù)幀中包括的控制、中斷、等時和批量傳輸數(shù)據(jù),每個傳輸類型分配一定的帶寬,中斷傳輸和等時傳輸有時間要求,所以每個數(shù)據(jù)幀中均要分配一定帶寬。3.1.4USB2.0端點緩沖區(qū)相對于USB1.X,USB2.0中每種傳輸類型的端點可以用更大的緩沖區(qū),見表3.1表3.1端點緩沖區(qū)大小3.1.5USB插頭插座USB是良好的屏蔽線,總共由四根線組成,見表3.2。表3.2USB接線信號USB接插頭和座的類型有兩種,A型和B型。通過A和B從聯(lián)結上來區(qū)分USBHOST和USBDEVICE,A型用在USBHOST端,B型用在USBDEVICE端,見表3.3表3.3USB插頭和座其中miniUSB型插頭和座USB2.0協(xié)議才有。3.2主要芯片介紹3.2.1為何選擇CY7C68013目前USB芯片大致分為5大類型:1)單獨運作的USB接口芯片;2)內含USB單元的微處理器(MPU);3)特定的接口轉芯片,如USB轉RS-232或USB轉ATA/ATAPI等;4)PC端或主機端的USB控制器;由于后兩種是屬于PC主機板與芯片組制造商所開發(fā)的領域,不適合用戶來開發(fā)USB外圍設備;因此,對于一般的USB接口的開發(fā)者而言,可以選用前面的兩種來滿足自己的設計要求。1)單獨運作的USB接口芯片所謂USB接口芯片,即是僅包含USB的串行接口引擎(SIE)、FIFO內存、收發(fā)器以及電壓調節(jié)器等的芯片。為了降低成本,有的僅包含模擬的差動電路而已。這類的芯片只處理USB相關的通信工作,必須外加一個微控制器(MCU)來管理USB控制器的寄存器、設備描述符的獲取和數(shù)據(jù)包的交換等,芯片提供一個串行或并行的數(shù)據(jù)總線來與控制器進行連接。這樣,外部接口可能比USB最大速度要慢,使得芯片只適合傳送間歇數(shù)據(jù)。這種類型的接口芯片常用的有Philips公司的PDIUSB11、11A與12系列,NationalSemiconductor公司推出的USBN9602/9603以及NetChip公司的NET2888與NET2890等等。2)內含USB單元的微處理器(MPU)芯片內部已經(jīng)嵌入了通用微控制器類型的USB控制器芯片一般是在通用微控制器的基礎上擴展了USB功能,其優(yōu)點是開發(fā)者熟悉這些通用微控制器的結構和指令集,相關資料豐富,易于進行開發(fā)。如Cypress公司基于增強型8051內核的EZ-USBFX系列,Motorola公司基于68HC08系列的68HC08JB8,Atmel公司基于AVR的AT76C711等USB控制芯片。采用單獨運作的USB接口芯片的主要特點是成本低、接口形式多樣、可靠性高,具有很高的靈活性,尤其適合于產(chǎn)品的改型設計;缺點是開發(fā)者需要非常熟悉USB的協(xié)議,以處理USB總線事務,加大了編程設計人員的開發(fā)難度,延長了產(chǎn)品的開發(fā)周期,同時要用微處理器控制收發(fā)器的工作。內含USB單元的微處理器的優(yōu)點是CPU只需要訪問一系列寄存器和存儲器,便可實現(xiàn)USB口的數(shù)據(jù)傳輸;從而簡化了程序的設計,開發(fā)難度減小,而且許多供應商還提供許多范例電路和測試代碼,使設計者從復雜的協(xié)議解釋中得到解脫[13]。在本設計中,主要考慮到應用USB2.0技術,使整個數(shù)據(jù)采集設備小型化,連接電路簡單三個方面的因素,選擇了內部嵌入了微控制器,并且支持USB2.0協(xié)議的USB2.0接口芯片CY7C68013該芯片屬于Cypress公司的FX2系列。CYPRESS公司推出的CY7C68013器件自從推出以來就受到廣大用戶的好評,主要原因有:出色USB2.0單芯片解決方案,68013包含增強型8051內核和智能USB接口優(yōu)良的性價比,其中56引腳的68013市場售價不到50元,開發(fā)簡單,CYPRESS公司提供了完整開發(fā)方案,如調試界面和固件框架真正體現(xiàn)USB2.0傳輸速度,包含通用可編程接口(GPIF),實現(xiàn)與外設的“膠連接”,增強型8051的指令周期只有4時鐘周期。3.2.2CY7C68013芯片簡介1.芯片特點圖3.6FX2框架圖CY7C68013特點[3]:USB2.0單芯片解決方案,包括USB2.0收發(fā)器,串行接口引擎(SIE)和增強型51內核可“軟配置”RAM,大小為8.5K,取代傳統(tǒng)51的RAM和ROM,程序可通過下面方式下載:- 通過USB口下載― 通過外部E2PROM裝載- 外界存儲設備(僅128引腳支持)- 通用可編程接口GPIF,GPIF是FX2一個重要技術- 可設置為主從模式,主模式下可對外部FIFO,存儲器,ATA接口設備進行高速讀寫操作,從模式下外部主控器(如DSP,MCU)可把GPIF端口當作FIFO進行高速讀寫操作。- 支持與外設通過并行8位或16總線傳輸- 支持通過GPIF編程工具編程,靈活產(chǎn)生各種波形- 支持多CTL輸出和多RDY輸入- 增強工業(yè)級8051內核- 支持48M時鐘-4個時鐘指令周期,在時鐘為48M時,單指令執(zhí)行時間為83.3nS- 兩個UART- 三個TIMER- 多中斷系統(tǒng)- 雙數(shù)據(jù)指針- 3.3V工作電壓- 智能串行接口引擎(SIE)- USB中斷矢量- 100KHz或400KHzI2C接口- 4個集成FIFO- 低成本與外設實現(xiàn)“膠連接”- 自動實現(xiàn)從16位FIFO轉換- 支持主從工作模式-FIFO支持內外時鐘和同步數(shù)據(jù)觸發(fā)- 輕松實現(xiàn)與ASIC,DSP連接- 包括40多個通用IO端口- 4種可選封裝-56引腳SSOP和QFN,100引腳TQFP和128引腳TQFP。2.引腳說明FX2的引腳主要可以分為幾類[5]:電源引腳,包括數(shù)字電源地和模擬電源地;系統(tǒng)引腳,如時鐘,USB掛起外部喚醒,USB差分數(shù)據(jù)線,復位引腳,中斷,計數(shù)器輸入,UART通信;通用IOs,包括端口A,B,C,D,E;地址與數(shù)據(jù)總線,可用來外擴展RAM;GPIF主模式引腳;FIFO從模式SLAVEFIFO引腳。引腳功能見圖3.7,圖中128引腳封裝68013包括所有功能引腳,56引腳封裝和100引腳封裝只有其中的部分引腳。-XTALIN和XTALOUT時鐘輸入引腳-RESET#復位輸入引腳,低電平有效-WAKEUP#外部喚醒引腳輸入,低電平有效-SCL和SDA為I2C接口時鐘與數(shù)據(jù)引腳-IFCLK,GPIF時鐘,可作為輸入或輸出-CLKOUT,時鐘輸出,可設置為12M,24M或48M時鐘輸出,作為其他外設時鐘-DPLUS和DMINUS,USB數(shù)據(jù)線D+和D--PB0~PB7端口B,復用引腳,可設置為GPIF數(shù)據(jù)總線的低八位FD[0]~FD[7]-PD0~PD7端口D,復用引腳,可設置為GPIF數(shù)據(jù)總線的高八位FD[8]~FD[15]-RDY0~RDY5,GPIF主模式作為狀態(tài)輸入引腳,RDY0和RDY1為復用引腳,F(xiàn)IFO從模式作為讀寫信號SLRD和SLWR-CTL0~CTL5,GPIF主模式作為控制輸出引腳,CTL0~CTL2可復用為FIFO從模式作為狀態(tài)標志引腳FLAGA,F(xiàn)LAGB,F(xiàn)LAGC-PA0~PA7端口A,復用引腳,PA0與中斷INT0復用,PA1與中斷INT1復用,PA3與USB喚醒可選引腳WU2復用,PA2與FIFO從模式FIFO輸出使能引腳復用,PA4與FIFO從模式FIFO地址FIFOADD0引腳復用,PA5與FIFO從模式FIFO地址FIFOADD1引腳復用,PA6與FIFO從模式包結束PKTEND引腳復用,PA7與FIFO從模式狀態(tài)標志位FLAGD,以及和FIFO從模式SLAVEFIFO使能/觸發(fā)SLCS#引腳復用,PA7引腳功能由寄存器IFCONFIG[1:0]來配置RD#,WR#,CS#,OE#,PSEN#外擴RAM控制邏輯EA,外部地址使能RxD0,TxD0,RxD1,TxD1串口1和2INT4,INT5#,外部中斷TIMER0,TIMER1,TIMER2計數(shù)器時鐘輸入引腳說明:在實際應用中,用戶需要根據(jù)項目需要來選擇合適的68013芯片封裝,128引腳功能較全,可以外擴RAM,兩個串口可用來實現(xiàn)與其它MCU通信和程序在線仿真功能,另外各種功能引腳也較多,但是設計較為復雜。56引腳優(yōu)點是設計簡單,成本較低,缺點則是不能外擴RAM和在線仿真功能引腳較少。故本設計中選用128引腳以方便外擴存儲器。圖3.768013功能引腳3.存儲器對于EZ-USB存儲器都包括RAM[6],沒有ROM,所以程序和數(shù)據(jù)都只能是存儲在RAM中,RAM包括內部RAM和外部RAM,內部RAM和8051的內部RAM功能一樣,外部RAM則是EZ-USB將傳統(tǒng)8051部分外擴RAM放到了芯片的內部,用來存放數(shù)據(jù)和存儲。(1)內部RAM內部RAM見圖3.8,和傳統(tǒng)8051內部RAM功能相同。圖3.8內部RAM(2)外部RAM圖3.9是EA=0時FX2中RAM的分布,EA=1時情況很少使用,所以本文中不做介紹。外部RAM包括兩部分,片上外部RAM(InsideFX2)和外擴RAM(OutsideFX2),外擴RAM是通過128PIN封裝中的引腳D0~D7,A0~A15和RD#,WR#,CS#,OE#,PSEN#來實現(xiàn)的,對于56PIN封裝,只有片上外部RAM。地址0x0000~0x1FFF總共8KB可以用來存放程序或數(shù)據(jù),地址0xE000~0xE200總共0.5KB 只能用來存放數(shù)據(jù),地址0xE200~0xFFFF是寄存器和端點FIFO空間[7]。0xE000~0xFFFF詳細分布見圖3.10??偣灿?.5K的程序和地址空間,如果端點緩沖區(qū)沒有用到,也可以用來存放數(shù)據(jù),程序可設置范圍為0x0000~0x1FFF,數(shù)據(jù)可設置范圍為0x0000~0x1FFF,0xE000~0xE200和0xF000~0xFFFF(僅在端點緩沖區(qū)沒有使用的情況下可以設置)。如果程序使用了中斷,則地址空間0x0000~0x0080空間作為中斷程序入口地址,不能使用。地址空間設置見圖3.11。對于128引腳封裝FX2,如果擴展了外部RAM,則外部RAM中數(shù)據(jù)可設置范圍是0x2000~0xDFFF,程序可設置范圍是0x2000~0xFFFF。圖3.9內嵌外部RAM圖3.10寄存器和斷點FIFO地址圖3.11XDATA和CODE空間分配各地址空間訪問方法包括寄存器、內部RAM和外部RAM。4.CY7C68013的枚舉和重枚舉1)FX2的枚舉[9]當首次插入一個USB設備時,要經(jīng)過以下幾個步驟:①主機向地址0發(fā)送Get_Descriptor/Device(獲取描述符/設備)的要求。②設備用固件下載之前的PID響應主機的要求。③主機根據(jù)設備應答ID,安裝下載固件的設備驅動程序。④由固件裝載設備驅動程序,將設備的固件下載到FX2芯片上。⑤固件裝載設備驅動程序使8051脫離復位狀態(tài),并開始運行固件應用程序。⑥8051固件在電氣上斷開FX2設備與USB總線的連接。以上的過程,就稱為“FX2的枚舉”。2)FX2的重枚舉因為Cypress公司的EZ-USB2100系列、FX系列和FX2系列具有軟特性,所以它能在許多不同的USB設備中表現(xiàn)出共性。當插上外圍設備時,設備首先通過USB總線下載的是8051的固件和設備描述符。下載完成后,當下一次設備訪問時,該設備就作為信息中所定義的完全不同USB外設來處理。這兩步的過程稱為“重枚舉”。3.1.3目前,隨著數(shù)據(jù)采集應用的日益普遍,為了滿足不同場合和分辨率的要求,模數(shù)轉換芯片也是種類繁多。選擇A/D轉換芯片需要考慮器件本身的性能和具體的應用要求。選擇A/D轉換芯片要考慮一些參數(shù)指標,如芯片精度、芯片的轉換速度和芯片的轉換量程等。1)精度:與系統(tǒng)測量的信號范圍有關,但估算時要考慮到其他因素,轉換器位數(shù)應該比總精度要求的最低分辯率高一位。常見的AD器件有8位,10位,12位,14位,16位等。2)速度:應根據(jù)輸入信號的最高頻率來確定,保證轉換器的轉換速率要高于系統(tǒng)要求的采樣頻率。3)模擬信號類型:通常AD器件的模擬輸入信號都是電壓信號,而DA器件輸出的模擬信號有電壓和電流兩種。為了匹配USB2.0的高速傳輸特性,滿足廣泛的實際需要,本設計選用的是采樣速度快、分辨率高的A/D轉換器ads7825p。ADS7825是Burr—Brown公司生產(chǎn)的4通道16位CMOSA/D轉換器,精度高、轉換速率快,具有如下特點:(1)數(shù)據(jù)采樣和轉換時間不超過25s;(2)單一+5V電源供電,最大功耗為50mw;(3)4路模擬輸入,輸入電壓范圍為±10V;(4)轉換數(shù)據(jù)可以并行和串行輸出。(5)補碼輸出ADS7825的轉換速度和精度在同類產(chǎn)品中是比較高的,因此是常用的高速數(shù)據(jù)采集A/D轉換芯片,ADS7825的引腳如圖3.12所示。圖3.12ads7825引腳主要控制引腳及說明:BYTE字節(jié)選擇端,僅用于并行模式,當BYTE為高電平時,在D0~D7端輸出低8位數(shù)據(jù),當BYTE為低電平時,輸出高8位數(shù)據(jù);R/C讀數(shù)據(jù)/轉換選擇端,通過該引腳可以完成啟動A/D轉換或轉換數(shù)據(jù)的讀出;/CS片選端,不論是啟動轉換還是讀出數(shù)據(jù),都要對該引腳進行低邏輯電平操作;BUSY忙端,在開始啟動轉換之后,要維持該引腳為低電平,直到轉換結束并把轉換的數(shù)鎖存到輸出寄存器為止;PAR/SER并行/串行數(shù)據(jù)輸出選擇端,當該引腳為高電平時,8位并行數(shù)據(jù)在D0~D7端輸出;當該引腳為低電平時,串行數(shù)據(jù)在16引腳SDATA端輸出;CONTC連續(xù)轉換輸入端,當CONTC為低電平時,完成通常情況下的A/D轉換,當CONTC為高電平時,只要CS、R/C、PWRD保持低電平,就可以完成4個輸入通道,連續(xù)循環(huán)的A/D轉換;如下表3.4是ADS7825主要控制引腳功能表表3.4 ADS7825主要控制信號功能表BYTER/C/CS/BUSY功能0轉換模式:用/CS及R/C逐次驅動(CONTC=0)00啟動A/D轉換000A/D正在轉換001A/D轉換完成,可讀數(shù)據(jù)101允許讀數(shù)001BYTE=0,輸出D8-D15(PAR/SER=1)101BYTE=1,輸出D0-D7(PAR/SER=1)注:1.PAR/SER=1,數(shù)據(jù)D0-D7并行輸出,PAR/SER=0,數(shù)據(jù)D0-D7串行輸出。2.CONTC=0,轉換模式:用/CS及R/C逐次驅動轉換,CONTC=1,轉換模式:采樣4道連續(xù)循環(huán)。3.SYANC、TAG、SDATACLK、EXT//INT在串行通信中使用。3.2USB采集系統(tǒng)原理電路設計3.2.1主芯片外圍電路設計USB控制器及其外圍電路組成了數(shù)據(jù)采集系統(tǒng)的數(shù)據(jù)讀取和傳輸模塊,這部分電路主要負責讀取和傳輸A/D轉換ADS7825P轉換后的數(shù)據(jù),并負責與PC的通信[10]。由于CY7C68013集成了多重功能,所以外部電路就顯得不是很復雜,減少了一般電路復雜的外部數(shù)據(jù)線和信號線的連接,提高了整個數(shù)據(jù)采集系統(tǒng)的可靠性。USB控制器部分外圍電路原理圖如圖3.13所CY7C68013用自己的片內晶振電路和一個外部24MHz晶振組成系統(tǒng)的時鐘電路。它有一個片內鎖相環(huán)(PLL)電路,利用PLL可以24MHz振蕩器頻率倍頻至480MHz供收發(fā)器使用。CY7C68013內部計數(shù)器把24MHz的頻率分頻為內部8051需要的默認的12MHz的時鐘頻率。XTALIN和XTALOUT為晶振的輸入和輸出引腳,分別與晶振相連;同時,晶振的兩個引腳分別通過一個22pF的負載電容接地。DMINUS和DPLUS為USB的D+、D-信號線,分別和USB-B型連接器的相應引腳相接。USB-B型連接器上的VBUS和GND為總線電源線,整個系統(tǒng)的所需要的各種電壓都是通過該電源轉換而得到。SCL和SDA分別為I2C總線的時鐘線和數(shù)據(jù)線,在CY7C68013中,I2C控制器是漏極開路的,因此將這兩個引腳分別通過一個2.2KΩ的上拉電阻連接到3.3V電源上。RESERVED引腳通過一個10KΩ電阻接地,否則不能正確找到USB設備。WAKEUP為喚醒引腳,在8051和芯片的其他部分為低功耗狀態(tài)時,USB系統(tǒng)掛起;PLL和晶振停止工作,當外部邏輯觸發(fā)WAKEUP,晶振重新工作之后,PLL趨于穩(wěn)定;同時,8051也會收到一個喚醒中斷。本設計沒有使用WAKEUP引腳,所以通過10KΩ上拉電阻連接到3.3V電壓。RESET引腳為芯片的復位引腳,該引腳有一個滯后作用并且低電平有效。因為內部鎖相環(huán)在VCC升至3.3V之后大約200μs才能穩(wěn)定,所以本設計將RESET引腳連接到IMP811,使系統(tǒng)正常上電復位。IMP811是在低功耗微處理器、微控制器和數(shù)字系統(tǒng)中用來監(jiān)視3.0V、3.3V和5.0V電源工作的低功耗監(jiān)控電路,具有去抖動的手動復位輸入。圖3.13主芯片外圍電路3.2.2A/D轉換電路設系統(tǒng)基本操作過程為:主機給外設一個采樣控制信號CLK;A/D轉換完成的數(shù)據(jù)直接進入CY7C68013的內部端點FIFO,當FIFO容量達到指定程度后,自動將數(shù)據(jù)打包傳送給USB總線,主機進行接收,保證有較高的傳輸速度。以ADS7825為核心對4路模擬輸入信號進行AD轉換。ADS7825是BB公司生產(chǎn)的高性能模數(shù)轉換器件,它具有4路模擬輸入通道,5V單電源供電,16位并行輸出等獨特性能[17]。圖3.14A/D轉換電路圖其工作原理,在此著重介紹ADS7825在并行輸出方式下的工作過程,如下圖3.15所示為其并行輸出時電路原理圖。在并行輸出方式下,啟動初始化過程是由R/C(pin22)腳變?yōu)榈碗娖讲⒅辽俦3?0ns開始,啟動轉換。BUSY(pin24)腳變?yōu)榈碗娖?,并保持到?shù)據(jù)轉換和數(shù)據(jù)輸出寄存器刷新完畢。如果BYTE(pin21)腳為低電平,在BUSY的上升沿,觸發(fā)輸出信號的高8位數(shù)字;相反,若BYTE腳為高電平,輸出信號的低8位數(shù)字。最終轉換的數(shù)據(jù)以完全二進制數(shù)字格式輸出。REF是外部參考電壓輸入端或內部參考2.5V電壓輸出端。此引腳應與一個2.2μF電容相連,并與REF腳的輸出阻抗構成一個低通濾波器濾過帶限噪聲。CAP為內部參考電壓的緩沖輸出端,也應與一個2.2μF電容相連,在ADS7825的轉換周期內,這樣連接可提供給內置D/A轉換器最佳的轉換寫入電流,同時對緩沖輸出也是一種補償。另外,在BUSY為低電平期間,不再接受新的轉換指令。ADS7825在并行輸出模式情況下,根據(jù)通道選擇方式的不同,還可以分為連續(xù)轉換方式和可編程通道選擇方式。在CS、R/C和PWRD同時接低電平的情況下,若CONTC(pin25)腳為高電平時,ADS7825處于連續(xù)轉換工作模式。此時,ADS7825將按順序連續(xù)采集和轉換4路通道中的信號;而在CONTC變?yōu)楦唠娖街?,當前通道號就相應存入A0和A1通道選擇的寄存器中,也就是說在連續(xù)轉換圖3.15ADS7825并行輸出電路原理圖模式下(即CONTCE為HIGH),A0和A1為輸出端。對于前一個通道來說,輸出數(shù)據(jù)BUSY在跳變?yōu)楦唠娖綍r變?yōu)橛行АA硗?,每一次轉換結束,BUSY要跳變?yōu)楦唠娖綍r,A0和A1能夠輸出將要轉換信號的通道號。在可編程通道選擇方式下,模擬輸入通道的選擇是由程序控制指令完成的??刂破靼l(fā)出數(shù)據(jù)轉換指令和要轉換的通道號,通過片選信號與A0和A1端譯碼選擇需要的模擬通道,此時A0和A1為數(shù)據(jù)通道選擇輸入端。在完成數(shù)據(jù)通道的選擇之后,后續(xù)各引腳的工作過程與連續(xù)轉換方式下的情況類似。3.2.3傳感信號處理電路設計水泵測試中需要傳感器測量的有壓力、轉速和流量三個信號。其中流量采用超聲波式傳感器,輸出4~20mA電信號,其信號處理電路如圖3.16所示,電流信號經(jīng)AD627轉換為電壓信號,為了提高抗干擾能力,該電路采用光電耦合器4N30進行光電隔離,并將傳感器地和電源地分開,光電耦合器4N30的輸出接INA106組成的可調增益放大器,最后輸出信號通過ADS7825p的IN1輸入進行A/D轉換。圖3.16流量傳感信號輸入處理電路轉速測量的方法很多,在此采用頻率測量法。其測量原理為,在固定的測量時間內,計取轉速傳感器產(chǎn)生的脈沖個數(shù),從而算出實際轉速。設固定的測量時間Tc(min),計數(shù)器計取的脈沖個數(shù)m1,假定脈沖發(fā)生器每轉輸出p個脈沖,對應被測轉速為N(r/min),則f=pN/60;另在測量時間Tc內,計取轉速傳感器輸出的脈沖個數(shù)m1應為m1=Tcf,所以,當測得m1值時,就可算出實際轉速值N=60m1/pTc。本檢測裝置中發(fā)動機的轉速傳感器信號盤安裝在轉軸上,工作時傳感器輸出信號經(jīng)整形后可得到相應的方波脈沖信號。利用單片機的輸入捕捉功能,可得到相鄰的兩個上升沿的時間差,即可算出當前轉速N。傳感器部分采用霍爾傳感器,負責將電機的轉速轉化為脈沖信號。信號預處理電路包含待測信號放大、波形變換、波形整形電路等部分,其中放大器實現(xiàn)對待測信號的放大,降低對待測信號的幅度要求,實現(xiàn)對小信號的測量;波形變換和波形整形電路實現(xiàn)把正負交變的信號波形變換成可被單片機接受的TTL/CMOS兼容信號。系統(tǒng)采用LM358對霍爾傳感器的輸出信號進行整形。LM358內部包括有兩個獨立的高增益、內部頻率補償?shù)碾p運算放大器,適合于電源電壓范圍很寬的單電源使用,也適用于雙電源工作模式。它的使用范圍包括傳感放大器、直流增益模塊和其他所有可用單電源供電的使用運算放大器的場合。設計的脈沖產(chǎn)生及信號調理電路如圖3.17所示。信號調理電路為系統(tǒng)的前級電路,其中霍爾傳感元件b,d為兩電源端,d接正極,b接負極;a,c兩端為輸出端,安裝時霍爾傳感器對準轉盤上的磁鋼,當轉盤旋轉時,從霍爾傳感器的輸出端獲得與轉速成正比的脈沖信號。圖中LM358部分為過零整形電路,以使輸入的交變信號更精確的變換成規(guī)則穩(wěn)定的矩形脈沖,便于單片機對其進行計數(shù)。輸出直接接68013的PD0口進行計數(shù)。圖3.17轉速脈沖產(chǎn)生及信號調理電路壓力傳感器信號調節(jié)電路如圖3.18所示電流源是由±1%帶隙的基準二級管VR控制,型號為LT1004CLD-1.2,基準電流I0由下式定義:I0=(E0-e0)/R其中:E0-二級管基準電壓:1.235V±1%(LM385)eo放大器A1的偏移R反饋電阻值選用失調電壓小于1mV的放大器A1和公差為±1%的電阻R2,則可產(chǎn)生電流I0=0.996MA,其典型精度為±1.4%。圖3.18所示信號調節(jié)電路提供了用作傳感器激勵的精密恒流源和AD8221組成的具有高共模抑制比的增益放大電路。圖3.18壓力傳感器信號調節(jié)電路3.2.4電源電路設計USB的電源主要包括兩方面: 電源分配:即USB的設備如何通過USB總線獲得主機提供的電源; 電源管理:即通過電源管理系統(tǒng),USB的系統(tǒng)軟件和設備如何與主機協(xié)調工作。(1)電源分配每段USB都在電纜上提供了數(shù)量有限的電源。主機向與它直接相連的USB設備提供電源,并且每個USB設備都有自己的電源。那些完全依靠電纜提供能源的設備稱作“總線功能”設備。相反,那些有另外電源的設備稱作“自供電”設備。而且,集線器也可為連接在它上面的USB設備提供電源。(2)電源管理USB主機與USB系統(tǒng)有相互獨立的電源管理系統(tǒng)。USB的系統(tǒng)軟件和主機的電源管理系統(tǒng)相互作用,處理系統(tǒng)的電源事件,如掛起和恢復等。另外,USB設備還有額外的功耗管理特性,允許軟件對他們進行功耗管理本論文中需設計+5V,+2.5V,+3.3V,12V和±15V供電電源,本設計對+5V,+2.5V,+3.3V電源采用了總線電源供電與外接供電兩種方式;通過跳針可以選擇其中一種作為系統(tǒng)各個部分所需的電源。對12V和±15V采用外部供電方式。D1為電源指示燈,上電后D1點亮。圖3.19+5V電源選擇電路圖選用電源轉換芯片AS1117-3.3將+5V轉換為+3.3V。連接電路如圖3.20所示。圖3.20+3.3V電源轉換電路圖選用電源轉換芯片AS1117-2.5將+5V轉換為+2.5V。連接電路如圖3.21所示圖3.21+2.5V電源轉換電路圖傳感信號處理電路還需要±15V和12V電源供電。電源設計如圖3.22和圖3.24所示。圖3.2212V供電電源設計圖3.23±15V供電源設計3.2.5EEPROM電路設計該部分電路用于存放CY7C68013的VID和PID程序。該部分電路主要芯片選用具有IC總線接口的EEPROM芯片24LC64。24LC64是8K字節(jié)的電可擦除的PROM,其工作電壓范圍為2.5V-5.5V。24LC64可以一次寫入32字節(jié),可以任意或連續(xù)的讀出8K字節(jié)數(shù)據(jù)。本設計所使用24LC64的封裝類型引腳如圖3.25所示。圖3.2424LC64引腳其中A2,A1,A0為用戶配置地址,在USB接口硬件系統(tǒng)中,此地址必須為001,WP為寫保護,SCL,SDA為IC總線的時鐘和數(shù)據(jù)線。J5跳針可控制EEPROM連接。圖3.25為EEPROM硬件電路。圖3.25I2C接口的EEPROM電路第四章USB數(shù)據(jù)采集系統(tǒng)軟件設計一般情況下,一個完整的USB通信系統(tǒng)的軟件通常需要固件程序、驅動程序和上位機程序三個部分。4.1固件程序開發(fā)4.1.1固件功能及編程固件程序主要負責完成兩項任務:一是作為駐留在設備中的內部應用程序,響應主機的列舉請求,實現(xiàn)配置設備并將設備的配置信息(如支持哪些傳輸類型和端點)告知主機,進而為主機和設備之間進行數(shù)據(jù)通信做好準備工作:二是作為整個設備的控制中心,根據(jù)用戶應用系統(tǒng)的特定要求,實現(xiàn)對外圍設備的具體控制。USB控制器芯片借助CPU執(zhí)行固件程序來控制芯片的活動,以實現(xiàn)數(shù)據(jù)傳輸功能。固件的設計就是使在USB總線上的傳輸能獲得快速的、有效的數(shù)據(jù)傳輸速度。它的操作方式與硬件聯(lián)系緊密,包括USB設備的連接、列舉、重列舉、USB協(xié)議和中斷處理等等。當把設備連接到主機上(USB設備連接到主機上的集線器上)時,上位機可以發(fā)現(xiàn)新設備,然后建立連接。因此,編寫固件程序的一個最主要的目的就是讓Windows可以檢測和識別設備。一般開發(fā)板上68013A的芯片外圍都會接一個I2C芯片,用來存放固件程序,因為芯片內部的空間有限,太大的程序可能放不下。本文開發(fā)板,上面接有一塊EEPROM如圖3.20;開發(fā)板的USB口與計算機連接后,從這片24LC64里讀取配置程序。然后計算機會提示有USB設備接入,要求安裝驅動。如果開發(fā)板買來芯片里就有程序,那么按照要求裝驅動就可以了。編寫固

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論