智汇工业-智慧工业、智能制造及工业智能、工业互联门户网站,专业的工业“互联网+”传媒

基于嵌入式USB接口的數據采集系統的設計

來源:網絡

點擊:999

A+ A-

所屬頻道:新聞中心

關鍵詞: USB接口,MAX197,嵌入式,驅動程序

      數據采集任務多在戶外進行,所以數據采集系統通常要滿足實時性、專用性、可靠性和低功耗等性能,這些特性在嵌入式系統中都能得到很好的體現,因此本文將以WindowsCE的嵌入式平臺來開發效據采集系統。但是由于嵌入式系統的硬件結構不易改變,所以在進行數據采集設備擴展時應該選擇接口簡單靈活、數據傳輸率高和支持熱拔插的傳輸總線,而USB接口則能很好地滿足這些要求,同時USB還有總線供電和不受插槽、中斷等硬件資源限制的特性,因此USB接口是數據采集設備與嵌入式系統進行數據傳輸的理想選擇。綜上所述,本文將設計一款基于嵌入式USB接口的數據采集系統以滿足實際的需要,下面將從硬件設計,程序實現和實際測試3方面具體描述。

      1 硬件設計

      1.1 硬件結構框架

      本系統的硬件結構主要由控制中心、模數轉換和USB協議實現3個部分組成,下面將針對這3個部分進行詳細的介紹。具體的結構框架如圖1所示。

     

    圖1 嵌入式USB接口的數據采集系統總體結構

      1)控制中心。本系統采用單片機提供地址數據復用總線、選通信號(D12_CS和AD_CS),讀寫信號(RD和WR)以及對中斷信號(D12_INT和AD_INT)進行檢測。

      2)模數轉換。本系統采用MAX197芯片進行模數轉換,該芯片具有采樣保持功能和12位的高精度輸出。單片機可向MAX197寫入其特定的命令從而選擇指定的通道進行模數轉換,轉換結束后,MAX197向單片機輸出低電平的AD_INT信號,單片機采用輪詢方式檢測到后通過HBEN信號控制MAX197輸出低8位和高4位的轉換數據。

      3)USB協議實現。本系統采用PDIUSBD12作為USB設備端的控制芯片,該芯片實現了USB1.1傳輸協議。嵌入式系統要對USB設備進行讀寫均需通過信號D12_INT向單片機發送中斷,單片機響應中斷后只需對PDIUSBD12的不同寄存器進行讀寫操作就可以利用USB進行數據傳輸。

      1.2 固件程序設計

      硬件設備需要固件程序的控制以保證其正常運行,本文所設計的固件程序主要用于識別USB設備以及采集與傳輸數據。固件程序的總體流程如圖2所示。

     

    圖2 固件程序的總體流程

     

      1)設備識別。USB設備的識別過程分別由操作系統和設備驅動兩個部分通過USB協議的標準設備請求來完成。操作系統在USB設備連接時加載設備驅動程序并分配通信地址,驅動程序啟動后通過中斷讀取相關描述符進行資源配置并使能傳輸端點,從而為應用程序提供接口。

      2)數據采集與傳輸。通過單片機的定時器可對數據的采集頻率進行設置。本系統的數據采集頻率為1 000 Hz,因此設置定時器每一毫秒中斷一次進行數據采集,而主機端對USB設備的讀寫操作則通過外部中斷實現,定時器中斷優先級高于外部中斷以保證采集頻率固定為1 000 Hz.主機端通過寫操作向USB設備發送控制信息,包括設備啟動和停止的相關初始化與清理的工作,其中在對USB設備進行讀操作前要先在端點的緩沖區填寫64字節數據并通過命令使其有效,不然主機端對USB設備進行讀操作時,無效的緩沖區將導致PDIUSBD12芯片不會產生中斷,從而導致讀操作失敗。

      2 驅動程序設計

      Windows CE下的USB設備驅動模型由3個層次組成,其中由操作系統實現的有兩層,它們分別是HCD模塊(USBHoST Controller Driver)和USBD模塊(USB Bus Driver),而第三層則被稱為USB客戶端驅動(USB Client Driver),由驅動開發人員實現。HCD模塊處于最底層,是CPU中USB控制器的驅動,為USBD模塊提供底層的功能訪問服務。USBD模塊處于HCD模塊的上層,它根據HCD模塊提供的功能設計USB驅動接口函數,并提供給第3層使用。USB客戶端驅動處于USB驅動模型的最頂層,也是本文所要設計的USB驅動程序,它向上為應用程序提供接口以方便對USB設備進行控制,向下利用USBD模塊提供的接口函數傳遞控制信息和數據。因此,要成功開發USB設備的驅動程序,在操作系統定制的時候就需要把HCD和USBD的相關組件添加進去。

      本文開發的USB設備驅動程序是流接口形式的驅動程序,它被設計用來與通常的文件系統API(如CreateFile、ReadFile和WriteFile等)進行通信,應用程序通過對文件系統的操作來完成對設備的控制。本驅動所設計的流接口如表1所示。

    表1 驅動所設計的流接口

     

      3 系統測試

      3.1 測試條件與結果

      本測試的目的在于檢驗本文設計的數據采集系統能否在采集頻率較高的情況下準確地采集數據,并通過USB接口完整地進行數據傳輸。因此,測試將基于以下5個條件進行。其中一個通道的部分測試數據結果如圖3所示。

     

    圖3 正弦波采集測試結果圖

      1)測試信號為正弦波,峰峰值約為12 V,頻率為100Hz.

      2)系統以1000Hz的采集頻率連續對8個通道進行采集。

      3)單片機晶振頻率為12MHz.

      4)采集系統的數據緩沖區設置為128字節。

      5)采集數據記錄在SD卡中。

     

      3.2 測試結果分析

      由3.1的正弦波采集測試結果圖可以得出如下兩點結論:

      1)采集的正弦波的峰峰值約為12 V,一個周期有10個數據點,根據采集頻率1000Hz可知采集到的正弦波的頻率為100Hz.

      2)在30 ms的時候,正弦波發生畸變,可見采集數據在USB傳輸過程中發生丟失。

      第一點結論說明了本采集系統能準確地進行數據采集,而對于第二點結論所表現出的不完整性分析如下。

      1)設V1是有效數據的傳輸速度,V2是協議開銷的傳輸速度,N為采集數據的通道數目,M為每通道采集的字節數,H為采集頻率,K為緩沖區大小,U為傳輸的協議開銷字節數。USB數據幀的組成包括有效數據和協議開銷兩個部分,其中傳輸協議的開銷包括同步字段、包標識符、地址信息、端點信息和CRC校驗,所以數據采集系統要求的USB傳輸速度可根據公式(1)計算得到。本文設計的數據采集系統共有8個通道,每通道有2個字節的數據,采集頻率為1 000 Hz,根據公式(2)可得有效數據的傳輸速度約為16 kB/s.一個完整的數據幀的傳輸需要11個字節的協議開銷,本文設計的數據傳輸過程分為4個步驟:發送傳輸請求,發送接收控制命令,接收請求應答,開始接收數據,每個步驟均需傳輸一個完整的USB數據幀,因此進行一次傳輸的協議開銷為44個字節,根據公式(3)可計算出協議開銷的傳輸速度。以緩沖區的大小為橫坐標,數據采集系統要求的USB傳輸速度為縱坐標繪出圖4所示的關系圖,分析該圖可得:緩沖區越大,所要求的USB傳輸速度越少。測試中較少的128字節緩沖區使得在一次傳輸中有效數據過少,約5.5 kB/s的額外開銷傳輸速度約占總速度的25%,過高的額外傳輸開銷導致數據來不及傳輸,從而發生數據丟失的情況。

     

     

    圖4 緩存區大小與USB傳輸速度關系圖

      2)另外,由于應用程序要在SD卡這類低速設備上記錄數據,所以記錄數據的時候來不及獲取USB設備中的數據也會導致實際的傳輸速度變慢,導致新采集的數據溢出緩沖區并覆蓋來不及傳輸的舊數據,從而造成數據丟失。

      因此有必要采取一定的方法來改善數據采集系統,以保證數據采集的完整性。下面將提出3個解決方法。

      3.3 系統改善措施

      1)增大晶振頻率到24MHz,加快單片機的處理速度。

      2)在硬件上增加靜態RAM作為數據存儲的緩沖區,緩沖區的存在一方面可以保證新采集的數據不會覆蓋沒來得及傳輸的舊數據,另一方面可以讓USB設備在一次USB數據幀的傳輸中所含有的有效數據更多,從而減少在傳輸過程中的校驗、識別和握手等USB協議的額外開銷,加快傳輸速度。

      3)在應用程序控制USB設備時將新建2條線程,一條進程用于向USB設備進行讀寫操作來進行數據采集,另一條進程用于向嵌入式系統的SD卡這類低速設備進行讀寫操作來記錄數據,利用操作系統分時復用的特性減少數據記錄過程對數據傳輸造成的延誤,從而加快USB設備的傳輸速度。

      4 結束語

      本文從硬件結構、固件程序和驅動程序3個方面對基于嵌入式USB接口的數據采集系統進行了設計。最后還通過實際采集正弦波信號對系統進行了測試,并提出了3個方法有效地提高了數據采集系統的傳輸速度。本系統能在擁有USB接口的嵌入式設備上方便地進行連接和安裝,是數據采集應用的一個重要部分。

    (審核編輯: 小丸子2)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 机械配件加工_数控车床加工_零件加工_精密件加工_cnc加工定制—深圳精密机械加工 | 首页 - 宣城市城市建设集团有限公司| 中国焊接协会网站—中国焊接信息网;焊接行业最权威访问量最大的专业网站:焊接信息、焊接材料,焊接机器,焊接设备,焊机,焊材,辅助设备,焊机配件,仪器仪表,电动工具,钎焊,送丝机,表面处理,自动化专机,焊锡丝,助焊剂 | 郑州井盖雨水篦子厂家-建联建材 郑州建网站,郑州做网站,郑州网站建设,郑州网站制作,郑州高端定制网站,郑州APP开发 | 上海垃圾房,简易成品环保垃圾房,小区室外垃圾房,上海翼亭智能垃圾房厂家 | 锯骨机-砍排机-全自动锯骨机-商用砍排机-切丁机 - 广州市九盈机械设备有限公司 | 铅板,防辐射铅板,医用铅板,保定美伦有色金属有限公司 | 化工招聘网 化工人才网|化工英才网-化工企业招聘首选网站 | 济宁山银煤矿机械有限公司,钻采工具,防爆电器,凿岩机械,风动工具,矿山机械,建筑机械,支护设备,通风防尘,铁路设备,仪器仪表,大型设备,矿用泵,钎具类,消防类,矿车类,配件区类 | 重庆污水处理设备_废气处理设备_纯净水设备-山艺环保 | 双相钢,双相不锈钢,2507双相不锈钢-海新双相钢 | 皮带清扫器-皮带聚氨酯合金空段输送带清扫器刮刀厂家-衡水格锐特机械科技有限公司 | 全棉帆布厂家_加工帆布_涤棉帆布价格_染色帆布定制_广州美丽华皮革帆布-广州美丽华皮革帆布 | 乳化泵-高剪切乳化机-减速机支架-乳化罐-釜底乳化机【厂家】-浙江奥盛机械 | 石家庄团建公司|石家庄拓展训练|石家庄拓展培训|石家庄公司团建|石家庄拓展公司-石家庄启聚团建公司 | 自动封箱机_纸箱封箱机_封箱机厂家-青岛百高包装器材有限公司 | 襄阳燃烧器厂家-低氮燃烧器价格-河北五通道燃烧器就找襄阳市胜合燃力设备有限公司一站式服务 | 网带烘干机-不锈钢网带-乙型网带-不锈钢链板-网带输送机-宁津县天惠机械制造有限公司 | 制沙机,反击式破碎机,重锤破碎机,泥石分离机,圆锥破碎机厂家-昆明德鑫机械 | 康拓威技术(深圳)有限公司|Theia镜头代理商|安讯士AXIS摄像机|安讯士监控系统|博世BOSCH监控|博世会议系统|索尼SONY监控|松下PANASONIC监控|三星韩华SAMSUNG监控|霍尼韦尔Honeywell|海康|大华|华为监控|Theia无畸变镜头|AXIS监控|安讯视摄像机 | 丝杆升降机-蜗轮-滚珠-螺旋-swl丝杠升降机-德州润驰减速机有限公司 | 卧式镗铣床,道斯镗铣机床加工中心-江苏道斯数控科技有限公司 | 面粉加工成套设备|面粉加工设备|面粉加工机械|面粉机组设备-河南成立粮油机械有限公司 | 厦门,泉州自助餐上门|生日自助餐|婚礼自助餐|公司聚会自助餐|户外烧烤|冷餐|茶歇外卖配送-福建非选餐饮公司 | 天力普电力科技有限公司| 数造云-面向3D打印的云制造平台| 实验反应釜,高压反应釜,玻璃反应釜,不锈钢反应釜-烟台招远松岭化工设备有限公司 | 真空电镀机_镀膜机厂家_离子镀膜机_磁控溅射镀膜设备_镀钛设备-江苏驰诚科技发展有限公司 | 久久91精品久久91综合_国产亚洲自拍一区_国产精品第1页_亚洲高清视频一区_91成人午夜在线精品_亚洲国产精品网站在线播放_亚洲国产成人久久综合区_国产精品亚洲专区在线观看_免费视频精品一区二区三区 | 热泵烘干机_食品烘干机_水果烘干机_蔬菜烘干机_河南蓝天机械制造有限公司 | 自动超声波清洗机_五金超声波清洗机厂家_超声波模具价格_东莞劲荣自动化 | 疝灯试验箱-有风源淋雨-汽车盐雾室-无锡苏南试验设备有限公司 | 硫酸、硫酸铵、氯磺酸、氯化亚砜、硫酸钾、对位酯生产销售 - 河北和合化工有限公司 | 减速电机-调速电机-四大系列减速机-减速电机厂家-深圳市鑫希田机电有限公司官网 | 自动化贴标机_套标机_圆瓶贴标机厂家_大为机械 | 上海祝融起重机械有限公司-德国耶鲁手拉葫芦|耶鲁手拉葫芦|耶鲁手扳葫芦|耶鲁电动葫芦经销代理 | 三维建设工程咨询有限公司| 售后服务认证-五星级物业售后服务体系认证证书-ISO27001信息安全管理体系认证证书查询认E云-湖北省贯标企业管理咨询有限公司 | 旋转补偿器-专注套筒三维球形补偿器定制生产厂家-伸缩接头价格_巩义市新华丰管道设备有限公司 | 卡压式管件_不锈钢卡压式管件_双卡压管件_不锈钢沟槽管件_承插焊管件_温州市中达阀门管件有限公司 | 汇讯WiseUC--连接人与业务,以即时通讯为基础的应用集成平台 |