亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        航天包裝箱用便攜式數(shù)據(jù)采集儀的實(shí)現(xiàn)

        2015-04-01 01:02:22王海勇劉秀芳梁世盛
        自動(dòng)化儀表 2015年12期
        關(guān)鍵詞:系統(tǒng)

        王海勇 劉秀芳 梁世盛

        (上海航天設(shè)備制造總廠研發(fā)部,上海 200245)

        0 引言

        航天器儲(chǔ)運(yùn)包裝箱作為貯存、包裝、運(yùn)輸航天產(chǎn)品的重要工藝裝備,在確保航天產(chǎn)品安全到達(dá)目的地并順利完成任務(wù)方面起著至關(guān)重要的作用。隨著航天產(chǎn)品精密程度的提高,其對(duì)包裝箱的要求也越來越高,不僅要求實(shí)時(shí)監(jiān)測(cè)箱內(nèi)環(huán)境參數(shù),包括壓差、溫度、濕度等,還要求實(shí)時(shí)記錄加速度、速度等更多類型的傳感器數(shù)據(jù)。在遠(yuǎn)距離運(yùn)輸過程中,不僅要求記錄全程各傳感器的數(shù)據(jù),還需實(shí)時(shí)進(jìn)行數(shù)據(jù)傳輸、顯示,以便使用者更好地實(shí)現(xiàn)遠(yuǎn)程監(jiān)控等功能。針對(duì)上述需求,開發(fā)一種便攜式數(shù)據(jù)采集儀。該數(shù)據(jù)采集儀能夠?qū)崟r(shí)記錄、存儲(chǔ)上述傳感器數(shù)據(jù),同時(shí)具有數(shù)據(jù)遠(yuǎn)程傳輸、實(shí)時(shí)顯示等功能。系統(tǒng)采用ARM9 處理器作為主控制器中,采用Linux 操作系統(tǒng),ADS1256 高精度模數(shù)轉(zhuǎn)換器作為系統(tǒng)模數(shù)轉(zhuǎn)換芯片,采用核心板加底板的硬件架構(gòu)模式開發(fā)系統(tǒng)。統(tǒng)穩(wěn)定、開發(fā)調(diào)試便利、后期維護(hù)方便[1],將硬件架構(gòu)分為底板與核心板兩大塊。底板實(shí)現(xiàn)數(shù)據(jù)采集模塊、數(shù)據(jù)存儲(chǔ)模塊、顯示接口、通信接口等電路設(shè)計(jì),核心板實(shí)現(xiàn)以ARM9 處理器為核心的最小系統(tǒng)電路設(shè)計(jì)[2]。

        1 系統(tǒng)組成及工作原理

        圖1 為便攜式數(shù)據(jù)采集儀的架構(gòu)圖??紤]到系

        圖1 系統(tǒng)架構(gòu)圖Fig.1 Architecture of the system

        系統(tǒng)工作原理為傳感器信號(hào)經(jīng)信號(hào)預(yù)處理模塊調(diào)制濾波后送入高精度模數(shù)轉(zhuǎn)換器ADS1256 芯片中,經(jīng)ARM9 微處理器采樣控制,將24 位數(shù)字量信號(hào)進(jìn)行數(shù)字濾波。將采樣數(shù)據(jù)存儲(chǔ)在SD 卡中,同時(shí)將當(dāng)前采樣值顯示在LCD 觸摸屏上。該便攜式采集儀既可當(dāng)作采集儀使用,也可作為記錄儀使用。系統(tǒng)還留有以太網(wǎng)口、串口等通信接口,以便將存儲(chǔ)在SD 卡中的數(shù)據(jù)導(dǎo)入到上位機(jī)中查看。底板上的數(shù)據(jù)采集模塊是系統(tǒng)關(guān)鍵部分,決定了系統(tǒng)功能及性能指標(biāo)。下文將從軟、硬件兩方面敘述數(shù)據(jù)采集模塊的設(shè)計(jì)過程。

        2 模數(shù)轉(zhuǎn)換電路設(shè)計(jì)

        圖2 ADS1256 外圍電路Fig.2 Peripheral circuits of ADS1256

        為保證該款便攜式數(shù)據(jù)采集記錄儀能夠精準(zhǔn)地記錄航天包裝箱內(nèi)各個(gè)狀態(tài)參數(shù),系統(tǒng)采用TI 公司的ADS1256 芯片作為系統(tǒng)模數(shù)轉(zhuǎn)換芯片。設(shè)計(jì)了ADS1256 相應(yīng)的外圍電路,包括信號(hào)預(yù)處理電路、參考基準(zhǔn)電壓電路、通信接口電路,它們構(gòu)成了底板上的數(shù)據(jù)采集模塊電路。

        ADS1256 外圍接口電路如圖2 所示。

        圖2 中,模擬電源AVDD為+5 V,數(shù)字電源DVDD為+3.3 V,外部晶振為7. 68 MHz。ADC 模擬輸入端AIN0和AIN1作為差分信號(hào)的一對(duì)輸入端,同樣還有AIN2和AIN3、AIN4和AIN5、AIN6和AIN7組成系統(tǒng)所需的四對(duì)差分信號(hào)輸入通道。圖中只畫出一路輸入通道,其他幾路與之相同。模擬輸入端的兩端對(duì)稱使用了一個(gè)簡(jiǎn)單的RC 電路,這個(gè)RC 電路起到了低通濾波器的作用,它將進(jìn)入通道之前的模擬信號(hào)進(jìn)行初步濾波,去掉高頻噪聲[3]。兩端之間連接適當(dāng)大小的電解電容和瓷片電容作旁路電容,減少輸入端的耦合噪聲,注意盡量將電容放置在靠近ADC 管腳的地方。ADS1256 通過SPI 接口與ARM9 進(jìn)行通信。從圖中右半部分可以看出,在通信接口處外接100 Ω 的電阻作為匹配,目地是為了提高數(shù)字信號(hào)的質(zhì)量。

        實(shí)際測(cè)量系統(tǒng)中,電源是影響精度的重要因素之一,而最為重要的是系統(tǒng)參考電源設(shè)計(jì)。ADC 參考電壓電路如圖3 所示。電壓,電壓經(jīng)過簡(jiǎn)單的RC 濾波,進(jìn)入由OPA350 低噪聲運(yùn)放組成的跟隨器中。這樣做既能提高電壓的基準(zhǔn),又能提高電壓的輸出能力,因?yàn)镽EF1004 經(jīng)過R4后,電流的輸出能力非常低,并且還能降低基準(zhǔn)電源的噪聲。

        3 模數(shù)轉(zhuǎn)換芯片驅(qū)動(dòng)程序設(shè)計(jì)

        系統(tǒng)采用REF1004 基準(zhǔn)電壓芯片產(chǎn)生2.5 V 基準(zhǔn)

        圖3 ADC 參考電壓電路Fig.3 Voltage reference circuit of ADC

        由于便攜式數(shù)據(jù)采集儀是一個(gè)典型多任務(wù)系統(tǒng),采用Linux 操作系統(tǒng)作為系統(tǒng)的管理軟件,故需要在Linux 下開發(fā)模數(shù)轉(zhuǎn)換芯片的驅(qū)動(dòng)程序。ADS1256 與ARM9 處理器是通過SPI 接口進(jìn)行通信,Linux 內(nèi)核有完整的SPI 子系統(tǒng)軟件架構(gòu),對(duì)ADS1256 芯片驅(qū)動(dòng)開發(fā)需按照標(biāo)準(zhǔn)的SPI 子系統(tǒng)架構(gòu)進(jìn)行。ADS1256 芯片驅(qū)動(dòng)開發(fā)分為分析Linux 內(nèi)核SPI 子系統(tǒng)的驅(qū)動(dòng)機(jī)制和利用這個(gè)驅(qū)動(dòng)機(jī)制設(shè)計(jì)對(duì)應(yīng)的驅(qū)動(dòng)策略程序兩部分。驅(qū)動(dòng)機(jī)制是編寫SPI 驅(qū)動(dòng)的前提,只有在了解內(nèi)核SPI 驅(qū)動(dòng)機(jī)制后,才能完整地完成驅(qū)動(dòng)程序的設(shè)計(jì)。

        驅(qū)動(dòng)機(jī)制方面,在Linux 系統(tǒng)中,SPI 子系統(tǒng)從上到下分為:SPI 設(shè)備驅(qū)動(dòng)層(外設(shè)驅(qū)動(dòng))、SPI 核心層API、master 驅(qū)動(dòng)層(主機(jī)控制器驅(qū)動(dòng))、硬件層,如圖4 所示。

        其中master 驅(qū)動(dòng)層抽象出SPI 控制器的相關(guān)操作即ARM9 中SPI 控制器操作,而SPI 設(shè)備驅(qū)動(dòng)層抽象出用戶空間API。主機(jī)控制器驅(qū)動(dòng)在內(nèi)核中以platform 平臺(tái)設(shè)備總線模型的形式體現(xiàn),在板級(jí)支持包(board support package,BSP)中將會(huì)添加platform_device 結(jié)構(gòu),它描述了SPI 控制器的相關(guān)資源,對(duì)應(yīng)的主機(jī)控制器驅(qū)動(dòng)將以platform_driver 形式體現(xiàn),這樣主機(jī)控制器和主機(jī)控制器驅(qū)動(dòng)就掛載到了platform 總線上[4]。spi_master 結(jié)構(gòu)體用來描述一個(gè)SPI 主機(jī)控制器驅(qū)動(dòng),其主要成員是主機(jī)控制器的序號(hào)(系統(tǒng)中可能存在多個(gè)SPI 主機(jī)控制器)、片選數(shù)量、SPI 模式和時(shí)鐘設(shè)置用的函數(shù)、數(shù)據(jù)傳輸用到的函數(shù)等。

        圖4 SPI 子系統(tǒng)Fig.4 SPI subsystem

        外設(shè)驅(qū)動(dòng)用spi_driver 結(jié)構(gòu)來描述,可以認(rèn)為是spi_master 的client 驅(qū)動(dòng),也將掛載到SPI 總線上,SPI總線可理解為主機(jī)控制器引出的總線。spi_driver 結(jié)構(gòu)體和platform_driver 結(jié)構(gòu)體有極大的相似性,這幾乎是一切client 驅(qū)動(dòng)的習(xí)慣模板。它和platform_driver 對(duì)應(yīng)一個(gè)platform_device 一樣,spi_driver 也對(duì)應(yīng)著一個(gè)spi_device,上面platform_device 需要在BSP 的板文件中添加信息數(shù)據(jù),而spi_device 也同樣需要。

        SPI 核心層API 是主機(jī)控制器驅(qū)動(dòng)和外設(shè)驅(qū)動(dòng)之間的橋梁。主機(jī)控制器驅(qū)動(dòng)不必關(guān)心外設(shè),而外設(shè)驅(qū)動(dòng)也不必關(guān)心主機(jī),外設(shè)只是訪問核心層通用API 進(jìn)行數(shù)據(jù)傳輸,主機(jī)和外設(shè)之間可以進(jìn)行任意組合。這也體現(xiàn)了Linux 驅(qū)動(dòng)中主機(jī)、外設(shè)驅(qū)動(dòng)分離的思想[5]。

        3.1 ADS1256 驅(qū)動(dòng)機(jī)制設(shè)計(jì)

        首先定義并初始化spi_driver 結(jié)構(gòu)體,系統(tǒng)進(jìn)行注冊(cè)時(shí)將調(diào)用spi_register_driver 函數(shù)。該函數(shù)在調(diào)用過程中,將用driver. name 和spi_device. modalias 字段進(jìn)行比較,如果兩者相等,則將spi_driver 與spi_device 進(jìn)行綁定。當(dāng)spi_driver 注冊(cè)成功后,調(diào)用probe 方法,即調(diào)用ads1256_probe 方法。在ads1256_probe 函數(shù)中,將自己注冊(cè)為字符設(shè)備或者h(yuǎn)wmon 設(shè)備。ads1256_driver 結(jié)構(gòu)體描述如下:

        ads1256_probe()函數(shù)是驅(qū)動(dòng)注冊(cè)中重要環(huán)節(jié),該函數(shù)執(zhí)行成功后,將在/sys/class/hwmon/hwmon1/device/inX_input (X=0 ~7 路信號(hào)輸入通道)。用戶只需執(zhí)行cat inX_input 命令即可調(diào)用驅(qū)動(dòng)進(jìn)行工作。

        執(zhí)行完probe 函數(shù)之后,驅(qū)動(dòng)機(jī)制還需提供讀、寫、控制等功能。下面就寫功能做詳細(xì)的敘述。以ads1256_write_reg 函數(shù)剖析SPI 從設(shè)備驅(qū)動(dòng)怎么調(diào)用SPI 核心API,最后怎么調(diào)到主控制器驅(qū)動(dòng),讓主控制器最終執(zhí)行寫的時(shí)序操作。文中列出ads 1256_write_reg 函數(shù),讀函數(shù)與此相似,讀者可自行編寫。

        在上述函數(shù)中,調(diào)用到了spi_write 函數(shù),該函數(shù)就是SPI 子系統(tǒng)核心層提供給驅(qū)動(dòng)程序的通用API,這樣編寫的驅(qū)動(dòng)程序才能真正做到跨平臺(tái),符合標(biāo)準(zhǔn)的Linux 驅(qū)動(dòng)框架。如圖5 給出了spi_write 系統(tǒng)調(diào)用過程,可以清晰看到函數(shù)調(diào)用從SPI 設(shè)備驅(qū)動(dòng)層,隨后調(diào)用bitbang 中間層,最后調(diào)用master 驅(qū)動(dòng)層來完成數(shù)據(jù)的傳輸。驅(qū)動(dòng)機(jī)制設(shè)計(jì)完以后,剩下的就是怎樣實(shí)現(xiàn)策略的問題。

        圖5 spi_write 調(diào)用過程圖Fig.5 The diagram of spi_write calling process

        3.2 ADS1256 驅(qū)動(dòng)策略設(shè)計(jì)

        系統(tǒng)采用的是多通道循環(huán)采樣工作方式。這種方式的特點(diǎn)是在數(shù)據(jù)準(zhǔn)備好信號(hào)DRDY,提示可以提取數(shù)據(jù)后,首先把A/D 當(dāng)前采樣通道變?yōu)橄乱粋€(gè)采樣通道,使A/D 開始新的采集轉(zhuǎn)換。然后馬上讀取寄存器中的數(shù)據(jù),這時(shí)的數(shù)據(jù)其實(shí)是上一輪轉(zhuǎn)換好的數(shù)據(jù)。這種工作方式實(shí)現(xiàn)了一邊提取數(shù)據(jù)的同時(shí)一邊進(jìn)行新數(shù)據(jù)的采集轉(zhuǎn)換,是一種高效的工作模式。

        圖6 給出了ADS1256 初始化流程圖,圖7 是ADS1256 采樣轉(zhuǎn)換流程圖。

        圖6 初始化流程圖Fig.6 Flowchart of the initialization

        圖6 中初始化流程非常重要。由于ADS1256 高精度、低噪聲的特殊要求,對(duì)芯片的控制相對(duì)復(fù)雜。對(duì)寫入芯片寄存器的數(shù)據(jù),采取一次回讀的校準(zhǔn)方式很有必要。在對(duì)ADS1256 寫入命令過程中,兩個(gè)命令字之間需要滿足一定的時(shí)間間隔,系統(tǒng)使用較多的就是WREG 寫寄存器命令與RDATA 讀數(shù)據(jù)命令,這些命令之間間隔最少為4 個(gè)時(shí)鐘周期。另外,需要注意的是控制命令本身是兩個(gè)字節(jié)的情況要區(qū)別開,若控制命令本身是兩個(gè)字節(jié),那么這兩個(gè)字節(jié)之間是不需要時(shí)間間隔的。

        圖7 采樣轉(zhuǎn)換流程圖Fig.7 Flowchart of the sampling conversion

        4 結(jié)束語(yǔ)

        本文介紹了航天儲(chǔ)運(yùn)包裝箱上一款便攜式數(shù)據(jù)采集儀中數(shù)據(jù)采集模塊的軟、硬件實(shí)現(xiàn),系統(tǒng)的方案設(shè)計(jì)基于航天包裝箱的實(shí)際需求,具有很好的市場(chǎng)推廣前景。目前該款便攜式數(shù)據(jù)采集儀進(jìn)行了各種環(huán)境試驗(yàn)及可靠性測(cè)試,將應(yīng)用在現(xiàn)有的航天包裝箱上。該款數(shù)據(jù)采集儀融合了當(dāng)前新興技術(shù),操作人員可利用觸摸屏對(duì)其進(jìn)行各種配置操作,操作簡(jiǎn)單靈活,攜帶便利,可作為一款工業(yè)現(xiàn)場(chǎng)手持掌上電腦(personal digital assistant,PDA)使用[6]。

        [1]王保杰,彭力.嵌入式Linux 車載智能中心的設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化儀表,2013,34(4):19.

        [2] 周立功.ARM 嵌入式系統(tǒng)基礎(chǔ)教程[M]. 北京:北京航空航天大學(xué)出版社,2010.

        [3] 孫沁梅,盧益民.高精度模數(shù)轉(zhuǎn)換器ADS1256 的原理和應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2004(33):95-97.

        [4] 宋寶華.Linux 設(shè)備驅(qū)動(dòng)開發(fā)詳解[M]. 北京:人民郵電大學(xué)出版社,2010.

        [5] 王勇,張浩,彭道剛. ARM 平臺(tái)在多功能數(shù)據(jù)采集系統(tǒng)中的設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化儀表,2010,31(6):13 -16.

        [6] 周耀群,張為公,周木子.汽車道路試驗(yàn)便攜式數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與開發(fā)[J].自動(dòng)化儀表,2006,27(8):61 -63.

        猜你喜歡
        系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        基于PowerPC+FPGA顯示系統(tǒng)
        基于UG的發(fā)射箱自動(dòng)化虛擬裝配系統(tǒng)開發(fā)
        半沸制皂系統(tǒng)(下)
        FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        一德系統(tǒng) 德行天下
        PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
        麻豆国产精品久久人妻| 视频网站在线观看不卡| 亚洲精品一区二区三区麻豆| 日本一区二区三区视频在线观看| 亚洲av高清在线一区二区三区| 亚洲成a人片在线观看久| 久久久精品亚洲懂色av| 亚洲av香蕉一区二区三区av| 欧美日韩精品久久久免费观看| 一本色道久久综合狠狠躁 | 欧美高清视频一区| 亚洲精品中文字幕乱码三区99| www国产亚洲精品| 99久久国产福利自产拍| 日本成人字幕在线不卡| 精品蜜桃av免费观看| 亚洲一区二区三区尿失禁| 国产熟女高潮视频| 91尤物在线看| 在线国人免费视频播放| 久久久久久曰本av免费免费| 香蕉成人啪国产精品视频综合网| 亚洲处破女av一区二区| 精品高朝久久久久9999| 热re99久久精品国产99热| 韩国主播av福利一区二区| 成av人大片免费看的网站| 日本大骚b视频在线| 色婷婷七月| 国产一级av理论手机在线| 色偷偷久久久精品亚洲| 国自产偷精品不卡在线| 亚洲综合综合在线| 久久久麻豆精亚洲av麻花| 亚洲女初尝黑人巨高清| 亚洲日韩欧美一区二区三区 | 亚洲av乱码二区三区涩涩屋 | 真实单亲乱l仑对白视频| 国产96在线 | 免费| 国产精品高潮av有码久久| 一本色道加勒比精品一区二区|