前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇數據采集系統范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。
關鍵詞:多路數據;采集系統;單片機
多路數據采集系統的構建主要借助于單片機進行數據的收集和傳輸,整個設計包括數據顯示、報警、數據測量和系統的控制四大部分,可以說現階段智能化的多路數據采集系統更是成為了電氣生產中不可缺失的一項綜合技術設備,與傳統的數據采集系統相比其數據的準確率更高、數據的采集更快,且所出現的故障更少,因此備受現階段設電氣行業的追捧。隨著我國多路數據采集系統在行業中應用的范圍越來越大,對其設計的整體要求也就有增無減,所以相關的設計人員需要不斷的完善自身的專業知識,在多路數據采集系統的實際工作中找尋到其中存在的問題,通過完善設計的方式加以糾正,使其更加適應于現階段的行業應用中,滿足于市場的需要。
1系統硬件電路設計
整個多路數據采集系統的硬件設備可以分為以下幾部分:1)以ATmega8單片機為基礎構建的控制電路;2)LCD12864顯示電路;3)以MAX487為基礎構建的485通信電路;4)以AT24C64為基礎構建的數據存儲電路和鍵盤電路;5)A/D轉換電路。這五部分共同構建成了多路數據采集系統的硬件電路,其具體的設計如圖1。由圖中電路圖顯示可知ATmega16單片機是多路數據采集系統中的核心,其主要負責整個多路數據采集系統的控制,因此其本質上是一個八位的微處理器,且具有性能較高、功耗較低的特點,其結構是最為先進的RISC結構;因此整體的運算時間大大縮小了,且可以做到讀寫同步。ATmega16但騙子自身的驅動能力很高,在工作室5V時其I/O口的輸出電壓可達5V,每一個I/O口的輸出電流也可以達到40mA。由于整個系統的主要作用就是采集數據,所以一般需要ADC芯片的參與。但是當我們在多路數據采集系統設計中加入ATmega16單片機之后,由于其本身就具有8路10位A/D,所以就不需要用單獨的芯片參與了,不僅節約了成本,還提高了速度。變送器和傳感器主要以電流信號為主要方式在輸出回路中強度在4~20mA之間隨后變成1~5V的電壓信號輸送到單片機AD中,在轉變的過程中需要電阻的參與,所以在設計上需要在回路上增加一個250歐的電阻以彎沉該工作。AT⁃mega16自身攜帶ADC,因此只要和8通道的模擬多路復用器連接在一起就可以對端口A的所輸入的電壓數據進行采樣收集。
一端的電壓輸入是以0V(GND)為基準。ADC由AVCC引腳單獨的提供電源,AVCC和與VCC之間產生的偏差不得大于±0.3V。為了更好的減少噪音可以在在AREF引腳上加一個電容進行解耦。現場顯示的實現主要是借助于LCD12864完成的,具體來講是4位和8位相并行的一種接口方式,且2線和3線的串行也具有多種形式,同時液晶顯示器模塊是點陣圖形且具有國標簡體中文字庫,顯示為中文文字方便信息讀取。其顯示的為128×64的分辨率,其中包含8000多個16平方點的漢字以及128個16乘以8點ASCII字符集。這一顯示電路的接口方式更為的簡單,在其指令的過程中需要的指令和操作簡潔明了,所以可以實現人機之間的直接中文的交流,更加方便與理解其顯示的含義所在,對于專業程度技術不高的人員來說中文顯示器的使用提高了工作效率。在設置多路數據采集系統的時候考慮到實用性其單片機的PD口連接LCD12864的數據線,PC3到7口連接控制的總線,其可變電阻的RV1可以對顯示屏的亮度進行一定的調節。
單片機的PB5到B7連接鍵盤電路,從而可以確保所輸入信息的準確性,同時引腳逐一接到1K的上拉電阻上,在其程序上的設置上設定為沿觸發。多數據線路現場采集的信號的儲存是借助AT24C64來實現的,其由64K位串行的CMOSE2PROM構成的,且內部具有8k的8位字節,數據傳送的控制由兩部分構成,即產生串行的時鐘以及所有起始停止的信號相對應的主器件來實現的。主器件或者從器件都能作為接收器或者是發送器等等,但是因為主器件自身功能在于控制數據的傳輸,是通過A0、A1和A2等構件的共有八種情況,換句話說就是要借助器件的地址輸入端與多個AT24C64器件構件連接在總線上而實現的,所以需要對于選擇器件上進行合理的配置考慮。在這一設計過程中僅僅運用了一個AT24C64,所以A0、A1和A2的連接還要接地。為了保證對現場現場數據的準確信號的傳輸并確保主機中的數據的準確讀取,本次設計多路數據采集系統的時候選擇了RS485總線,這種總線自身就具有平衡發送和差分接收的特點,所以其抗干擾的能力更強,對于波特率下且距離過長的傳輸具有一定的優勢。
2軟件設計
在對于多路數據采集系統設計的思路中,整個系統控制都需要由ATmega16單片機來完成,在軟件設計的單片機中選擇ATmega16第一要完成實現初始化的設置,特別是對于引腳寄存器、LCD12864等進行的初始化操作。第二是依照相應的順序通過PA口對所有數據電路上的模擬電壓進行讀取,并把它轉換成相應的數字量,使其可以在LCD12864上進行中文和數值的顯示,且通過AT24C64將所得到的數據存儲起來,這些數據在通過485總線將數據信號傳輸到主機中去。本文中所選擇的ATmega16單片機的AD轉換以及MAX487之間的通信傳遞,其他的模塊不多贅述。ADC在對輸入的模擬電壓進行轉變的時候是借助逐次逼近的手段使其轉換成一個10位的數字量。其中最小值用字母GND表示,最大值用字母AREF表示。借助設置AD-CSRA寄存器的形式可以實現ADC的啟動。向ADC啟動轉換位ADSC位寫"1”運用這種方式可以進行單次的啟動轉換。對ADCS⁃RB寄存器的設置中要注意ADC的觸發選擇位于ADTS上因此可以依照其選擇相應的觸發源。在軟件系統的設置中所選擇的觸發信號產生一定的上跳沿的時候ADC預分頻器復位且可以進行一定的轉換,當轉換結束了之后觸發信號依舊還仍然,但是還不能自動的啟動下一次轉換。圖2AD轉換時序圖MAX487有2個控制端RE和DE,1個TTL(CMOS)數據接收RO端和1個TTL(CMOS)數據發送端DI,以及1對RS485差分信號端A和B。當TXD為高電平時,經74HC04反向為低電平,使得RE=0且DE=0,接收器R打開,驅動器D關閉,此時MAX487處于數據接收允許狀態;當TXD為低電平時,經74HC04反向后,DE/RE為高電平,使接收器R關閉,驅動器D打開,此時MAX487處于數據發送允許狀態。
3結論
綜上所述,設計多路數據收集系統其本身需要保證收集數據準確,所以在設計過程中不僅需要確保各組織之間的接線準確,還需要根據多線路局收集系統的應用范圍選擇合適的硬件設施,并進行合理的軟件系統的設置,使其具有優越的性能才能廣泛的運用到生產生活中去,本文的研究主要對硬件設計和軟件設計兩個方面進行了論述,為多路數據采集系統的完善提供相應的理論基礎。
參考文獻:
[1]張理京.基于96通道智能多路數據采集系統的軟硬件設計與實現[J].西安:西安電子科技大學,2014.
[2]林穎,羅金炎,劉驕,,等.智能多路數據基于RS485總線的PC機與多單片機系統的串行通信[J].機械與電子,2016(1).
【關鍵詞】綜合數據采集系統;參數測試;總線
1、引言
隨著直升機不斷向高度綜合化、智能化和通用化方向發展,用于記錄飛機姿態信息和各種重要飛行信息的飛行參數記錄系統[1]逐漸被綜合數據采集系統取代,其功能也得到了進一步擴展。綜合數據采集系統應用AFDX、1553B等數字總線技術實現對直升機維護數據、狀態數據和飛行數據的采集。本文闡述了綜合數據采集系統試驗測試依據與標準,對試驗測試的典型故障進行分析和總結。
2、測試的意義及必要性
綜合數據采集系統是直升機重要機載系統之一。所記錄的數據經地面數據處理站分析處理后,可用于直升機維護、訓練評估和事故分析[2]。由于部件集成度高,與機載設備交聯復雜,采集信號多樣化,因此為了保障系統工作的可靠性,需要對其性能進行檢測。
建立綜合數據采集系統的試驗能力,其意義和必要性主要體現在以下幾點:
(1)在科研、生產過程中,如果將系統部品直接裝機,一旦出現故障無法定位,還會給其它交聯的機載設備帶來安全隱患,因此需要對其進行裝機前校驗。
(2)由于綜合數據采集系統主要應用于直升機飛行事故評估,其記錄數據的可靠性將直接影響判定結論,因此必須建立系統試驗能力,實現對系統記錄數據可靠性檢測。
(3)對綜合數據采集系統試驗能力的建設,利于對其它機載系統故障的判讀與解析,極大地提高了解決總裝通電和試飛時故障問題的能力。
(4)可建立對單機試驗測試數據的管理,形成測試檔案提供給用戶,為直升機今后的故障預測與系統維護提供科學依據。
3、測試依據與標準
按照GJB6346-2008《軍用直升機飛行參數采集要求》的規定,采集信號的類型分為模擬量、數字量、開關量和頻率量信號,標準中對各類參數的采集精度、采樣間隔、信號源和采集范圍都進行了明確規定。在對綜合數據采集系統記錄參數進行測試時,結合此標準,針對不同機型用戶的要求,來制定相應的系統參數采集標準。
試驗測試時對對參數的采集應遵循以下原則:
(1)參數的模擬范圍應全面、準確。既能夠反映整機工作狀態,又能夠準確反映飛機狀態急劇變化及飛機系統工作瞬間異常變化的情況。
(2)對每個參數的采集點設計,應從機載信號源頭進行引接,確保真實、準確的反映機載設備的工作狀態,中間未經轉接與數據處理。
(3)與機載其它系統交聯進行參數采集測試時,不能影響其它系統的正常工作。
4、典型故障分析
4.1采集點選擇錯誤
對發動機系統的“發動機停車”參數進行測試時,發現不管如何模擬信號狀態變化,測試結果均顯示“停車”狀態。
“發動機停車”參數是開關量信號,源于油門桿位置微動開關,其接口參考圖1所示[3]。拉動油門桿置“停車位置時”,其內部繼電器觸點NC閉合,采集點(B)的電壓由原來的懸空狀態轉換為+28V直流高電平信號輸入,通過測量采集點的電壓由低電平到高電平狀態的變化,來判斷“發動機停車”的狀態。
由于采集點未出現電平狀態變化,經分析可能原因有:(1)油門桿位置微動開關損壞,不能實現接通;(2)在“發動機停車”功能未接通時,采集點信號雖然是低電平,但處于+3.3V與7V之間高阻狀態,輸出可能是低電平或是高電平,無法實現電平狀態變化,(3)采集點錯誤。
通過對“發動機停車”參數采集點的電壓測試,發現“發動機停車”功能接通和未接通兩種狀態下,測量值都是+28V,表示沒有有效信號輸入。測試油門桿位置微動開關的信號輸出點(A)的電壓值,發現未接通時為3.5V,接通后為28V其輸出值是正確的,那么只說明采集點出現了錯誤。經檢查發現采集點(B)接到了28V輸出點處,線路連接修改后故障排除。
4.2測試方法錯誤
4.3測試標準設計錯誤
關鍵詞:數據采集系統;信號干擾;消除
隨著信息技術的發展,數據采集系統被廣泛應用到各行各業,數據采集系統是其他系統運行的基礎。在應用實踐中,數據采集系統可以實現對數據的處理和分析。數據采集系統能夠很大程度上提高社會生產效率,便捷了人們生活,數據采集系統在運行過程中,可能收到環境因素的影響,降低數據采集的準確性,使得數據系統工作效率降低。
1數據采集系統信號干擾問題分析
在數據采集系統工作過程中,通常現場環境復雜惡劣,諸多因素會對工作效率產生影響,對信號產生干擾,影像數據采集系統的結果。通過對信息采集系統的干擾因素進行分析,進行分類。
1.1干擾的內外部影響
外部環境會對信號采集系統產生干擾,系統的內部信號也會對電路產生干擾。在工作過程中,由于電路電阻受熱產生熱噪音,電力元件長期運行,未及時進行更換,使元件運行效果產生變化;晶體管同其他配件相配合時產生工作噪音。信號采集系統在工作環境中,受到外部信號干擾,對采集系統信號產生干擾。例如,在運行過程中,由于運行故障,出現電火花,或者設備之間相互產生電磁信號,造成對數據采集系統的影響,降低數據采集的有效性。
1.2干擾信號的影響頻率
通過對數據采集系統的干擾信號分析,可以發現有的干擾信號呈現出規律性。比如,當某數據信號采集系統附近存在較較強電力設備時,干擾源規律性出現,形成固定干擾信號。此外,還會出現不確定性干擾信號,這種呈現不確定性和不穩定性的信號,對數據信號采集系統產生周期性影響,這種信號干擾通常是外界環境的偶然干擾。比如在某電器使用過程中,出現雷電或者其他設備運行異常等的干擾,都會帶來信號干擾,這類干擾信號難以進行預測,不能采取具有針對性的措施。
1.3不同類型的信號干擾
信號采集系統的信號干擾主要有靜電干擾、磁場藕合干擾、電磁輻射干擾以及電導通路藕合干擾。凈干擾是指寄生電容對周圍設備運行產生干擾,人與電氣設備之間相互摩擦會產生靜電,對數據采集系統產生擾動;磁場耦合擾動是指收到周圍環境的影響,閉合回路中出現電流,這種影響可能是受到變壓器、電動機等設備的磁場信號干擾,這種干擾通常呈現為交流干擾;電磁輻射干擾是指數據采集系統受到周圍輻射信號的擾動,通常是由大功率裝置運行造成的高頻電磁波造成的;電導通路干擾是指在電流回路上出現的阻礙行擾動。由于不同的節點,多條回路阻礙造成噪音,對數據采集系統信號產生擾動。電磁感應是指在導體的磁通量發生變化,從而產生電動勢,閉合回路中就產生了電流,這種現象就成為電磁感應。電測儀表進行測量過程中,通過電磁耦合,會形成相互干擾。電測儀表周圍有較多設備時,或者所處環境較復雜時,就會產生交變磁場,變壓器、交流電動機等都會產生相互感應,電測儀表的穩定性就會降低。在兩個物體發生相對位置移動情況下,物體間的電容作用就會造成兩一個物體點位發生變化,造成電壓干擾,電的耦合在進行測量時經常遇到。電測儀表干擾源和測量信號源間的容性耦合,壓線電容耦合到信號電路就會造成信號干擾,電測儀表的穩定性就會降低。
1.4數據采集系統軟件操作造成的干擾
由于軟件的操作不當造成干擾信號產生,在數據采集系統中,算法不合理性,造成程序運行過程中,相似性對結果產生一定的誤差,造成干擾信號,在數據進行最后處理時,對動作產生誤導。計算機設備的精度問題,造成最后計算結果時,產生信號干擾。
2提高數據采集系統信號抗干擾的有效措施
外部環境因素和系統內部因素都會對數據采集系統的運行高效性和準確性產生影響,為了提高信號采集系統運行的效率,可以采取適當的措施,減少信號的干擾,增強信號的抗干擾措施,提高系統的工作效率,提高企業的經濟效益。
2.1安置隔離變壓器設備
隔離變壓器能夠降低噪音,可以直接降低寄生電容,能夠有效地提高數據采集系統的抗干擾能力。在數據采集系統中,低下會形成電流回路,兩者之間的電位差,從而造成干擾噪音的產生,出現信號干擾。安置隔離變壓器能夠對數據采集系統和電網進行隔離,減少噪音,降低寄生電容。電測儀表的安裝環境會對測量結果產生較大的影響,在進行電測儀表安裝時,要控制周圍環境的溫度、濕度、電磁干擾、震動等因素,選擇合適的儀表進行測量,控制安裝環境可以提高電測儀表的穩定性。
2.2采用電源低通濾波器
通過低通濾波器能夠對大于50Hz的高次諧波進行過濾,從而除去電網中的大部分干擾,從而改善電源的性能。通過在濾波器前增設分布參數噪音衰減器,防止濾波器進入磁飽和。低通濾波器使用過程中,要注意低通濾波器本身的屏蔽,屏蔽盒要同系統外殼進行良好接觸。導線要靠近地面進行布線,從而減少耦合現象。
2.3保證電路的接地原則
在數據采集系統接地時,要盡量使接地距離最短,從而降低噪音,在選擇數字地和模擬地時,要盡量使用一點進行連接,按照一點接地原則進行,可以保障不出現共模干擾現象。在進行接地線路布設時,要選擇盡可能粗的線進行接地。在不同的地理位置點電位差各不相同,在一些大功率電器周圍,這種電位差更大,因此在大功率電器周圍進行測量時,這種點測量儀表受到的干擾就更大,穩定性就越差。
2.4數據采集儀表選用要科學合理
數據采集系統測量的結果準確性受到電測儀表種類的影響較大,因此應重視電測儀表的選擇。根據要測量物體的位置,對干擾情況進行分析,同時預測測量結果的大小,在根據精確度要求進行儀器選擇。不同廠家生產的儀表的測量誤差和穩定性各不相同,因此要選擇穩定性高、測量誤差小的儀表。同時要根據經濟情況和測量要求進行儀表選擇,提高電測儀表的精確度。
2.5對數據采集系統進行防干擾保護性處理
進行測量時,可以對數據測量儀器進行保護,比如通過金屬屏蔽方法對信號導線進行包裹,減少周圍環境對磁場的干擾。測量時對周圍的干擾因素進行排查。可以通過信號源和儀表外殼接地的方法保證儀表的電勢為零,提高測量準確性。通過對電測儀表的保護措施,能夠降低耦合現象,提高電磁測量穩定性。
2.6選擇專業人才進行專業管理
數據采集系統的使用有著一定的技術含量,周圍環境會造成電測儀表的系統誤差,人為因素也會造成人為誤差。在進行數據采集時,要對采集人員進行培訓,提高數據采集系統使用人員的專業技能,減少系統誤差。不同的儀表有著不同的使用方法,進行電測儀表儲存和使用時,要按照規定的測量程序,才能減少電測儀表的損害,提高測量精確度。
3結束語
在信號采集系統中,外界信號的干擾和系統內部信號的干擾都十分嚴重,對信號采集的質量產生影響,對后期數據處理和數據準確性都造成重要影響。因此,了解干擾產生的原因,并采取適當的措施減少干擾信號,增強系統抗干擾能力很有必要。在對數據采集系統進行分析時,要根據實際情況,對周圍環境進行深入了解,并針對存在的干擾因素采取具體措施,提高數據采集系統抗干擾性能。數據采集系統被廣泛應用于各行各業,很大程度上提高了社會生產率,促進了社會進步。
參考文獻:
[1]李懷良.復雜山地多波寬頻帶地震數據采集關鍵技術研究[D].成都理工大學,2013.
[2]陳叢.近紅外無創生化分析中快速高信噪比光譜信號檢測技術研究[D].中國科學院研究生院(長春光學精密機械與物理研究所),2013.
[3]王宗良.分布式光纖拉曼溫度傳感系統信號處理及性能提升[D].山東大學,2015.
[4]白燕.GNSS空間信號干擾評估及抑制方法研究[D].中國科學院研究生院(國家授時中心),2014.
[5]孔令琴.非接觸式生理信號檢測關鍵技術研究[D].北京理工大學,2014.
引言
數據采集系統在各行各業都有廣泛的應用。目前,已有各種各樣高速、高精度、多通道的數據采集卡問世。計算機通過卡上的模數轉換器采入數據,然后進行數據存儲、數據處理和圖形顯示等工作。隨著微電子技術和計算機技術的發展,Windows 95/98平臺下的應用程序已經成為數據采集與處理軟件開發的主流。
用于數據采集的常規Windows定時順又存在著嚴重的不足。首先,常規Windows定時器的定時分辨率低。定時器每隔55ms中斷1次,相當于最高采樣頻率僅為18.2Hz。對由于Windows 95/98下的應用程序無法直接與硬件打交道,不能通過對定時中斷重新安裝的方法改變定時時間長度。如此低的采樣頻率對于絕大多數的信號采集與處理都是不適合的,必須尋找能以更高頻率采集的方法。
其次,Windows系統是一個多任務操作系統,它是基于消息來驅動事件的。定時器消息WMTIMER在串行消息隊列中的優先級別很低,往往得不到及時響應,甚至消息隊列中的幾個未及時處理的定時器消息會被合并為一個;而應用程序無法確定由于這種處理而丟失的消息數,使實際的采樣間隔不均勻。
針對以上問題,人們想出了很多方法予以解決。目前常用的方法都是在PC機上編程,一般來講有以下3種方法:
(1)在Windows應用程序中,使用普通C語言中常用的函數delay()[2,3]。
delay()是C語言中常用的延延、定時函婁。使用delay(),最高采樣率可達1kHz,但delay()與多任務的Windows操作系統不兼容。在Windows應用程序中直接使用delay()會發生編譯警告和連接錯誤。可以通過程序中顯示說明函數delay()原型并在Windows庫中包含DELAY模塊的方法去除這一錯誤,從而可以在Windows應用程序中,像普通C程序一樣使用delay()。然而,這種用軟件等待的方法,對于主機的資源來講是一個極大的浪費。
(2)使用Windows多媒體定時器的回調函數[4,5]
Windows多媒體定時器可以通過函數timeBeginPeriod來設置定時器分辨率,其分辨率最小為1ms,最大為16ms。這一分辨率代表了60~1000Hz的采樣率,可以滿足一般信號對采樣率的要求。而且多媒體定時器采用中斷完成定時服務,在中斷時刻調用1個回調函數,而不是向消息隊列發送WM_TIMER信息。在應用程序中,使用Windows多媒體定時器并不容易,必須遵循嚴格的步驟。在使用回調函數的趕集,在中斷服務程序和用戶主程序之間,要進行數據的共享,給編程和調試帶來不便。程序的穩健性也會受到影響。在定時時間較短時,主機負荷過重。
(3)實時鐘定時[6]
實時鐘芯片在基準頻率作用下驅動內部時鐘電路工作,同時可通過對內部寄存器A(D3~D0)編程,選擇22分頻輸出信號頻率。實時鐘周期性地輸出方波和周期中斷請求信號(該中斷請求連到IRQ8),從而為程序中實現時間控制提供了另一條途徑。同時,在Windows機制中,使用優先級高于一般的任務級,而等于系統級的VxD編制驅動程序,可以保證驅動程序在運行時享有最高優先權,在進行硬件設備的管理、控制時不會被其他任務所中斷,充分保證了驅動程序返還給用戶的數據是完全真實的值。而且可以直接對硬件進行訪問,因而通過編寫VxD直接管理實時鐘中斷,定時分辨率更高。但VxD對調試者的編程水平要求較高,稍有不慎,很容易出現異常錯誤或死機。
不難看出,直接在PC機上編程解決定時問題要求調試者有較高的編程水平,程序調試困難,可靠性差。
為此,我們設計了一套智能數據采集系統。用單片機89C51作為中央處理單元,控制模/數據轉換、外部數據存儲器等外圍設備,進行數據的定時采集和預處理。通過絕大多數電腦都具備的并行口作為數據采集系統與計算機的接口,與PC機進行數據傳輸。由單片機管理定時采樣和進行部分信號預處理工作,解決了Windows 95下定時采樣的問題,減徑了PC機方面編程的工作量,使應用程序可以精力進行數據采集后的處理工作。
智能數據采集系統
智能數據采集系統的框圖如圖1所示。信源信號經放大濾波后進入A/D轉換器。單片機以一定的采集率在定時中斷內讀取A/D轉換器的輸出,送入RAM中暫存,在定時斷外則將RAM中存儲的數據不斷經并口送入PC機。PC機中的應用程序由并口接收單片機發送的數據,并對其進行數據處理和顯示。
1.單片機與主機間的并口通信
隨著計算機技術的發展,微機的并行口發生了很大的變化,由原來的只能打印,即只能向外設傳輸數據,發展成為可以在微機與外設之間進行雙向、快速交換數據的雙向并行接口。利用雙向并行口使得PC機能與數據采集系統的單片機之間以異步的、全互鎖的雙向并行方式通信。它能減少用戶交互地操作外部設備的次數,以更高的傳輸速率完成數據傳送。
并口通信硬件部分原理如圖2所示,軟件部分流程圖如圖3所示。
并口通信利用了D觸發器74HC74的預置和清零功能提供傳輸數據所需的握手信號。用八D鎖存器74HC573完成單片機傳出數據的鎖存。在單片機向PC機送數時,單片機先將數據鎖存在74HC573中。74HC573的輸出端接到微機并行口的數據寄存器的輸入端。數據鎖存后,單片機將74HC74的清零端CD清零,使輸出端Q輸出低電平,Q端同時送至并行口的狀態寄存器,通知PC機可以取數。PC機檢測到這一信號后,經控制口選通數據鎖存器,將鎖存的數據取出,并將觸發器置位端SD置1,使Q端輸出高電平,通知單片機數已取出,可以送下一個數據了。單片機檢測到觸發器Q端輸出變為高電平后,又將1個新數據鎖存至74HC573中,同時使觸發器輸出電平翻轉,通知PC機取數。如此往復,直到PC機不再需要讀數為止。值得注意的是:為了避免由于時序的不匹配造成的清零和置位端同時有效,在單片機(PC機)進行清零(置位)前,應對PC機(單片機)的置位(清零)端進行檢測;而為了避免數據的傳輸錯誤,每發16個數據即進行1次累加器和與異或和校驗。PC機如發現檢驗結果錯誤,即通知單片機重發剛才的16個數。
采用這種電路進行并口通道,電路設計簡單,只需1片74HC573和1片74HC74即可實現。74HC573和74HC74的使用都很簡單,使得程序編制也很容易,大大提高了傳輸速度。
2.單片機與RAM間的數據交換
在并口通信中引入RAM,是為了解決Windows下應用程序在數據采集時無法及時響應消息的問題。RAM在系統中起到了“蓄水池”的作用:數據采集卡上單片機89C51以200Hz的采樣率在定時中斷內讀取模/數轉換器MAX126各通道轉換結果,送入外部RAM中暫存;而在主程序內,則將RAM中存儲的數據取出,通過并口通信傳給筆記本電腦。數據在RAM中以循環隊列方式存儲。這樣,在Windows響應其他消息,筆記本電腦速度較慢時,采入的數據在RAM中暫存;而在筆記本電腦速度快時,單片機將RAM中存儲的數據取出傳出。因為總體來講筆記本電腦的速度是足以在中斷時間內傳完RAM中存儲的數據的。所以只要RAM的存儲量足夠大(幾倍于Windows響應其他消息可能花費的最大時間),就可以保證數據的連續傳輸。單片機與RAM數據交換流程如圖4所示。
3.最高采樣率的限制
對最高采樣率的討論可以分為兩種情況:實時傳輸和非實時傳輸。
在實時傳輸時,像前面提到的那樣,單片機采集到數據,在定時中斷內經RAM暫存,在定時斷外則不斷經并口向PC機發送。因而采集系統的最高采樣率由于受到單片機與RAM間數據交換以及與PC機并口通信指令執行時間的限制,并假設在使用89C51,12MHz晶振時,采樣數據精度是單字節的,則單通道采樣率不應高于32kHz。
如果對數據處理的實時性要求不高,允許對信號進行事后處理,則可以選擇非實時傳輸方式。即在單片機采集到數據后,放入大容量RAM中存儲,而不向PC機送數。在全部數據采集完成后,才進行單片機與PC機的并口通信,將RAM中存儲的數據一次送入PC機。非實時傳輸方式的最高采樣率不受單片機與RAM間地址比較以及并口的數據通過率的限制,使采樣的定時分辨率可以小于(1/32)ms。
采用以上原理實現的一套生理電數據采集系統,單片機使用12MHz晶振,可以以500Hz的采樣率,進行16通道生理電信號的實時采集和處理。如果采用更高的晶振頻率,或采用較少的通道數,這一采樣率還可以進一步提高。
小結
關鍵詞:多路數據;采集系統;單片機
中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2017)14-0214-02
多路數據采集系統的構建主要借助于單片機進行數據的收集和傳輸,整個設計包括數據顯示、報警、數據測量和系統的控制四大部分,可以說現階段智能化的多路數據采集系統更是成為了電氣生產中不可缺失的一項綜合技術設備,與傳統的數據采集系統相比其數據的準確率更高、數據的采集更快,且所出現的故障更少,因此備受現階段設電氣行業的追捧。隨著我國多路數據采集系統在行業中應用的范圍越來越大,對其設計的整體要求也就有增無減,所以相關的設計人員需要不斷的完善自身的專業知識,在多路數據采集系統的實際工作中找尋到其中存在的問題,通過完善設計的方式加以糾正,使其更加適應于現階段的行業應用中,滿足于市場的需要。
1系統硬件電路設計
整個多路數據采集系統的硬件設備可以分為以下幾部分:
1)以ATmega8單片機為基礎構建的控制電路;
2)LCDl2864顯示電路;
3)以MAX487為基礎構建的485通信電路;
4)以AT24C64為基礎構建的數據存儲電路和鍵盤電路;
5)A/D轉換電路。
這五部分共同構建成了多路數據采集系統的硬件電路,其具體的設計如圖1。
由圖中電路圖顯示可知ATmega16單片機是多路數據采集系統中的核心,其主要負責整個多路數據采集系統的控制,因此其本質上是一個八位的微處理器,且具有性能^高、功耗較低的特點,其結構是最為先進的RISC結構;因此整體的運算時間大大縮小了,且可以做到讀寫同步。ATmega16但騙子自身的驅動能力很高,在工作室5V時其I/O口的輸出電壓可達5V,每一個I/0口的輸出電流也可以達到40mA。
由于整個系統的主要作用就是采集數據,所以一般需要ADC芯片的參與。但是當我們在多路數據采集系統設計中加入ATmega16單片機之后,由于其本身就具有8路10位A/D,所以就不需要用單獨的芯片參與了,不僅節約了成本,還提高了速度。變送器和傳感器主要以電流信號為主要方式在輸出回路中強度在4~20mA之間隨后變成1~5V的電壓信號輸送到單片機AD中,在轉變的過程中需要電阻的參與,所以在設計上需要在回路上增加一個250歐的電阻以彎沉該工作。AT-mega16自身攜帶ADC,因此只要和8通道的模擬多路復用器連接在一起就可以對端口A的所輸入的電壓數據進行采樣收集。一端的電壓輸入是以OV(GND)為基準。ADC由AVCC引腳單獨的提供電源,AVCC和與VCC之間產生的偏差不得大于±0.3V。為了更好的減少噪音可以在在AREF引腳上加一個電容進行解耦。
現場顯示的實現主要是借助于LCD12864完成的,具體來講是4位和8位相并行的一種接口方式,且2線和3線的串行也具有多種形式,同時液晶顯示器模塊是點陣圖形且具有國標簡體中文字庫,顯示為中文文字方便信息讀取。其顯示的為128×64的分辨率,其中包含8000多個16平方點的漢字以及128個16乘以8點ASCII字符集。這一顯示電路的接口方式更為的簡單,在其指令的過程中需要的指令和操作簡潔明了,所以可以實現人機之間的直接中文的交流,更加方便與理解其顯示的含義所在,對于專業程度技術不高的人員來說中文顯示器的使用提高了工作效率。在設置多路數據采集系統的時候考慮到實用性其單片機的PD口連接LCD 12864的數據線,PC3到7口連接控制的總線,其可變電阻的RV1可以對顯示屏的亮度進行一定的調節。單片機的PB5到B7連接鍵盤電路,從而可以確保所輸入信息的準確性,同時引腳逐一接到1K的上拉電阻上,在其程序上的設置上設定為沿觸發。
多數據線路現場采集的信號的儲存是借助AT24C64來實現的,其由64K位串行的CMOS E2PROM構成的,且內部具有8k的8位字節,數據傳送的控制由兩部分構成,即產生串行的時鐘以及所有起始停止的信號相對應的主器件來實現的。主器件或者從器件都能作為接收器或者是發送器等等,但是因為主器件自身功能在于控制數據的傳輸,是通過A0、A1和A2等構件的共有八種情況,換句話說就是要借助器件的地址輸入端與多個AT24C64器件構件連接在總線上而實現的,所以需要對于選擇器件上進行合理的配置考慮。在這一設計過程中僅僅運用了一個AT24C64,所以A0、A1和A2的連接還要接地。
為了保證對現場現場數據的準確信號的傳輸并確保主機中的數據的準確讀取,本次設計多路數據采集系統的時候選擇了RS485總線,這種總線自身就具有平衡發送和差分接收的特點,所以其抗干擾的能力更強,對于波特率下且距離過長的傳輸具有一定的優勢。
2軟件設計
在對于多路數據采集系統設計的思路中,整個系統控制都需要由ATmega16單片機來完成,在軟件設計的單片機中選擇ATmega16第一要完成實現初始化的設置,特別是對于引腳寄存器、LCD12864等進行的初始化操作。第二是依照相應的順序通過PA口對所有數據電路上的模擬電壓進行讀取,并把它轉換成相應的數字量,使其可以在LCD12864上進行中文和數值的顯示,且通過AT24C64將所得到的數據存儲起來,這些數據在通過485總線將數據信號傳輸到主機中去。本文中所選擇的ATmega16單片機的AD轉換以及MAX487之間的通信傳遞,其他的模塊不多贅述。
ADC在對輸入的模擬電壓進行轉變的時候是借助逐次逼近的手段使其轉換成一個10位的數字量。其中最小值用字母GND表示,最大值用字母AREF表示。借助設置AD-CSRA寄存器的形式可以實現ADC的啟動。向ADC啟動轉換位ADSC位寫”1”運用這種方式可以進行單次的啟動轉換。對ADCS-RB寄存器的設置中要注意ADC的觸發選擇位于ADTS上因此可以依照其選擇相應的觸發源。在軟件系統的設置中所選擇的觸發信號產生一定的上跳沿的時候ADC預分頻器復位且可以進行一定的轉換,當轉換結束了之后觸發信號依舊還仍然,但是還不能自動的啟動下一次轉換。
圖2AD轉換時序圖MAX487有2個控制端RE和DE,1個TYL(CMOS)數據接收RO端和1個TTL(CMOS)數據發送端DI,以及1對RS485差分信號端A和B。當TXD為高電平時,經74HC04反向為低電平,使得RE=0且DE=0,接收器R打開,驅動器D關閉,此時MAX487處于數據接收允許狀態;當TXD為低電平時,經74HC04反向后,DE/RE為高電平,使接收器R關閉,驅動器D打開,此時MAX487處于數據發送允許狀態。具體設計如圖2: