• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)

      2017-11-01 03:00:13關(guān)學(xué)忠李倩文
      化工自動化及儀表 2017年2期
      關(guān)鍵詞:上位串口無線

      關(guān)學(xué)忠 李倩文

      (東北石油大學(xué)電氣信息工程學(xué)院)

      基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)

      關(guān)學(xué)忠 李倩文

      (東北石油大學(xué)電氣信息工程學(xué)院)

      在工業(yè)現(xiàn)場中常需要對某一個量(如溫度、壓力及流量等信號)進(jìn)行采集和控制,有的還需要對數(shù)據(jù)進(jìn)行遠(yuǎn)程傳輸、在控制室中對參數(shù)的變化趨勢進(jìn)行直觀展示,這就需要一種數(shù)據(jù)采集與遠(yuǎn)程網(wǎng)絡(luò)發(fā)布系統(tǒng)。本設(shè)計從實際應(yīng)用出發(fā),以STM32為核心控制器實現(xiàn)雙路數(shù)據(jù)采集,利用NRF無線通信模塊進(jìn)行無線數(shù)據(jù)傳輸,并采用LabVIEW軟件實現(xiàn)上位機(jī)數(shù)據(jù)的顯示和網(wǎng)絡(luò)發(fā)布,達(dá)到數(shù)據(jù)共享的目的。詳細(xì)闡述了數(shù)據(jù)采集和無線通信的原理,利用Altium Designer實現(xiàn)PCB設(shè)計,搭建實驗平臺完成設(shè)計內(nèi)容。實驗表明:該系統(tǒng)數(shù)據(jù)采集精確可靠、數(shù)據(jù)通信快速穩(wěn)定,并且在局域網(wǎng)內(nèi)實現(xiàn)了數(shù)據(jù)的網(wǎng)絡(luò)發(fā)布。

      數(shù)據(jù)采集 網(wǎng)絡(luò)發(fā)布 無線通信 STM32 LabVIEW

      數(shù)據(jù)采集技術(shù)廣泛應(yīng)用于工業(yè)生產(chǎn)的各個領(lǐng)域,對于工業(yè)現(xiàn)場的檢測和控制至關(guān)重要[1],它是計算機(jī)與外部物理世界連接的橋梁。近年來,數(shù)據(jù)采集及其應(yīng)用受到人們越來越廣泛的關(guān)注,數(shù)據(jù)采集系統(tǒng)也有了較快的發(fā)展。傳統(tǒng)的數(shù)據(jù)采集是通過數(shù)據(jù)采集板卡(常用的有A/D卡及422、485等總線板卡)來實現(xiàn)的,有些數(shù)據(jù)是就地顯示的,工人需要按時記錄數(shù)據(jù)[2],以報表的形式進(jìn)行存儲;有的是通過數(shù)據(jù)傳輸線以串行的形式進(jìn)行傳輸,其缺點(diǎn)是布線困難且成本高。因此,設(shè)計一種具有自動采集并將數(shù)據(jù)通過無線傳輸?shù)姆绞桨l(fā)送到PC端的系統(tǒng)很有實用價值。通過上位機(jī)實時觀察數(shù)據(jù)的動態(tài)曲線,可節(jié)省人力成本、提高數(shù)據(jù)的可靠性。由于無線數(shù)據(jù)通信的距離是有限的,不能實現(xiàn)超遠(yuǎn)距離的傳輸,因此使用網(wǎng)絡(luò)發(fā)布技術(shù),可將實時采集的數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)布到服務(wù)器,這樣只需登錄網(wǎng)頁就可以觀察數(shù)據(jù)的變化,達(dá)到數(shù)據(jù)共享和遠(yuǎn)程監(jiān)控的目的。在數(shù)據(jù)采集的方案選擇中,采集精度、功耗、成本和設(shè)計難度是重要的因素。本設(shè)計選擇ARM內(nèi)核的STM32芯片作為核心控制器,實現(xiàn)數(shù)據(jù)的采集,利用NRF無線數(shù)據(jù)模塊實現(xiàn)數(shù)據(jù)的無線發(fā)送。上位機(jī)使用LabVIEW軟件實現(xiàn)數(shù)據(jù)的波形圖顯示與網(wǎng)絡(luò)發(fā)布。

      1 硬件設(shè)計

      基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)由4部分組成:信號調(diào)理電路,負(fù)責(zé)將傳感器輸出的信號調(diào)理成ADC允許的范圍內(nèi);STM32最小系統(tǒng),負(fù)責(zé)數(shù)據(jù)采集和控制;無線通信模塊,負(fù)責(zé)數(shù)據(jù)的無線發(fā)送和接收;DELL計算機(jī)作為上位機(jī),負(fù)責(zé)數(shù)據(jù)的波形顯示和網(wǎng)絡(luò)發(fā)布。系統(tǒng)的硬件結(jié)構(gòu)框圖如圖1所示。

      STM32是基于Cortex-M3內(nèi)核的32位ARM處理器,具有價格便宜、功耗低及性能優(yōu)越等優(yōu)點(diǎn)[3]。選擇STM32的一個更主要的原因是其內(nèi)部集成了12位的逐次逼近式模數(shù)轉(zhuǎn)換器,最快轉(zhuǎn)換時間為1μs,可簡化系統(tǒng)設(shè)計。STM32最小系統(tǒng)由電源電路、時鐘電路、復(fù)位電路和程序下載電路組成。傳感器或變送器輸出的信號一般為0.0~5.0V的電壓信號,而STM32的ADC能接收的范圍為0.0~3.3V,并且在實際的工程設(shè)計上需要考慮到余量,因此輸入的最大值設(shè)置在3.3V的80%(約2.5V)。筆者設(shè)計的信號調(diào)理電路如圖2所示,利用電阻分壓把0.0~5.0V的電壓信號調(diào)理到0.0~2.5V,并且利用運(yùn)算放大器組成電壓跟隨電路,實現(xiàn)傳感器信號和STM32的隔離。

      圖2 信號調(diào)理電路

      為了實現(xiàn)數(shù)據(jù)的無線傳輸,選擇NRF24L01無線射頻收發(fā)模塊。NRF24L01 是工作在 2.4~2.5GHz 世界通用 ISM 頻段的單片無線收發(fā)器芯片,集無線收發(fā)于一體,可用于短距離無線數(shù)據(jù)的傳輸。該芯片內(nèi)部集成了2.4GHz無線收發(fā)內(nèi)核[4],具有體積小、功耗較低和外圍電路簡單的優(yōu)點(diǎn)。使用SPI接口與微控制器連接進(jìn)行芯片的配置和數(shù)據(jù)的傳輸。無線模塊的電路如圖3所示,將模塊的數(shù)據(jù)口與STM32的SPI1接口相連實現(xiàn)通信。無線數(shù)據(jù)傳輸需要一個發(fā)送模塊和一個接收模塊,接收模塊與PC機(jī)的USB接口相連,所以接收模塊需要加入USB轉(zhuǎn)串口模塊,實現(xiàn)電平的轉(zhuǎn)換。

      圖3 無線模塊的電路

      2 軟件設(shè)計

      系統(tǒng)的軟件程序設(shè)計分為兩部分:運(yùn)行在STM32中的C語言程序和運(yùn)行在PC 端的LabVIEW程序。STM32程序負(fù)責(zé)控制ADC實現(xiàn)雙路數(shù)據(jù)采集,并與無線模塊通信將數(shù)據(jù)發(fā)送出去,在上位機(jī)中編寫LabVIEW程序?qū)?shù)據(jù)從串口中讀出,并顯示在波形圖上,利用Web服務(wù)器把程序發(fā)布到網(wǎng)絡(luò)。LabVIEW又稱為G語言,是一種基于數(shù)據(jù)流的圖形化編程環(huán)境[5]。近年來在檢測和控制領(lǐng)域得到了快速的發(fā)展。因其程序是圖形化的框圖形式,與傳統(tǒng)的代碼有很大的不同,在人機(jī)交互等方面具有天然的優(yōu)勢。選擇LabVIEW的另一個原因,就是它內(nèi)嵌了Web網(wǎng)絡(luò)發(fā)布模塊,使網(wǎng)絡(luò)發(fā)布的程序設(shè)計變得簡單化[6]。

      2.1 STM32程序設(shè)計

      STM32的程序使用C語言編程,在MDK5編程環(huán)境下實現(xiàn)編譯。為了提高采集程序的運(yùn)行效率、節(jié)省控制器資源,使用直接內(nèi)存存取(Direct Memory Access,DMA)的方式實現(xiàn)轉(zhuǎn)換數(shù)據(jù)的讀取,DMA是一種高速的數(shù)據(jù)傳輸操作,允許在外部設(shè)備和存儲器之間利用系統(tǒng)總線直接讀寫數(shù)據(jù),既不通過微處理器也不需要微處理器的干預(yù)[7]。STM32中集成了DMA模塊,這是一般的單片機(jī)不具有的,充分發(fā)揮了STM32的優(yōu)勢。配置ADC的相關(guān)寄存器,使其運(yùn)行在多通道掃描模式,傳感器信號經(jīng)過信號調(diào)理電路后進(jìn)入STM32的ADC中被轉(zhuǎn)換成數(shù)字量,接著數(shù)字量會被存入數(shù)據(jù)寄存器,在DMA使能的情況下,STM32的存儲器可以讀取轉(zhuǎn)換后的數(shù)據(jù)[8]。

      經(jīng)過采集和轉(zhuǎn)換后的數(shù)據(jù)通過SPI送給NRF無線模塊,NRF24L01 芯片通過設(shè)置配置寄存器中PWR_UP 位、PRIM_RX 位和CE 引腳的電平來控制其工作模式,NRF24L01模式配置見表1。

      表1 NRF24L01模式配置

      本設(shè)計使用了前3 種工作模式,發(fā)送部分或接收部分檢測到各自數(shù)據(jù)緩沖區(qū)中存在數(shù)據(jù)時,從待機(jī)模式轉(zhuǎn)換至發(fā)送或接收模式,數(shù)據(jù)處理完成后將狀態(tài)寄存器TX_DS 或RX_DR 位置高,IRQ引腳產(chǎn)生中斷,此時由發(fā)送或接收模式進(jìn)入待機(jī)模式,等待數(shù)據(jù)進(jìn)入數(shù)據(jù)緩沖區(qū),IRQ中斷后要通過STM32寫狀態(tài)寄存器來復(fù)位。配置STM32的SPI為兩線全雙工、主模式、8位數(shù)據(jù)傳輸、數(shù)據(jù)捕獲第1個邊沿。STM32程序流程框圖如圖4所示。

      圖4 STM32程序流程

      2.2 LabVIEW程序設(shè)計

      無線接收模塊接收到數(shù)據(jù)后是以串口的形式傳送給上位機(jī)的。LabVIEW串口通信程序主要是通過NI-VISA節(jié)點(diǎn)來完成的[9],NI-VISA是一個字節(jié)級的通信接口驅(qū)動,字節(jié)級包括RS232、RS485及GPIB等。LabVIEW提供的串口函數(shù)主要包括串口初始化、串口寫、串口讀、Bytes of port及串口關(guān)閉等。串口初始化主要負(fù)責(zé)設(shè)置串口號、波特率及奇偶校驗等參數(shù),最關(guān)鍵的是Bytes of port這個屬性節(jié)點(diǎn),它讀取當(dāng)前串口緩沖區(qū)的字節(jié)數(shù),然后將它的輸出連接到VISA READ的“讀取字節(jié)數(shù)”這個輸入端上,這樣當(dāng)前緩沖區(qū)中有多少個字節(jié)就會讀回多少個,不會有任何等待,保證了數(shù)據(jù)讀取的連續(xù)性。將兩路數(shù)據(jù)通過標(biāo)志位分開后組成一個數(shù)組,顯示在波形圖表控件上。LabVIEW程序如圖5所示。

      使用LabVIEW進(jìn)行網(wǎng)絡(luò)發(fā)布有兩種方式:一是使用內(nèi)置的函數(shù)發(fā)布VI圖片,二是通過內(nèi)嵌的Web發(fā)布工具發(fā)布VI前面板圖。筆者選擇第2種方法,它可以發(fā)布正在運(yùn)行的程序前面板圖,讓各地的工程師們能在自己的辦公室看到服務(wù)器上的程序運(yùn)行情況[10]。Web發(fā)布工具把程序調(diào)入內(nèi)存中,發(fā)布到服務(wù)器中,這時在局域網(wǎng)內(nèi)的其他電腦可以輸入對應(yīng)的網(wǎng)址實現(xiàn)對程序的觀察和控制。網(wǎng)絡(luò)發(fā)布示意圖如圖6所示。具體配置步驟為:工具→Web發(fā)布工具→啟動服務(wù)器→選擇發(fā)布的VI→啟動IMQ支持→復(fù)制鏈接后保存至磁盤。

      圖5 LabVIEW程序

      圖6 網(wǎng)絡(luò)發(fā)布示意圖

      3 實驗結(jié)果

      結(jié)合以上對硬件設(shè)計和軟件設(shè)計的描述,完成基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)的設(shè)計,利用兩個電位器模擬傳感器發(fā)出的電壓信號。

      運(yùn)行上位機(jī)程序,接收下位機(jī)發(fā)送來的數(shù)據(jù),顯示在波形圖表控件上,上位機(jī)界面如圖7所示,可以清晰地看出兩路信號的變化情況,調(diào)節(jié)電位器可以觀察到上位機(jī)數(shù)據(jù)迅速反應(yīng)。

      圖7 上位機(jī)界面

      通過Web發(fā)布工具將上位機(jī)程序發(fā)布到服務(wù)器,并用IE瀏覽器打開后的效果如圖8所示,可以看出上位機(jī)界面顯示在了瀏覽器的界面上。網(wǎng)絡(luò)發(fā)布的一個優(yōu)勢是電腦不用安裝LabVIEW軟件也可以觀察和控制LabVIEW程序。

      圖8 網(wǎng)絡(luò)發(fā)布示意圖

      4 結(jié)束語

      筆者完成了基于STM32的數(shù)據(jù)采集與網(wǎng)絡(luò)發(fā)布系統(tǒng)的設(shè)計,可采集兩路電壓信號,利用圖形化編程軟件實現(xiàn)上位機(jī)編程,界面美觀友好,并可實現(xiàn)程序的網(wǎng)絡(luò)發(fā)布。實驗表明該系統(tǒng)工作穩(wěn)定可靠,可廣泛應(yīng)用于工業(yè)現(xiàn)場。

      [1] 羅俊.無線傳感器網(wǎng)絡(luò)性能建模與優(yōu)化設(shè)計[D].上海:上海交通大學(xué),2010.

      [2] 程明明.智能家居無線傳感器網(wǎng)絡(luò)設(shè)計與實現(xiàn)[D].大連:大連理工大學(xué),2011.

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

      [4] 張逢雪,王香婷,王通生,等.基于STM32單片機(jī)的無線智能家居控制系統(tǒng)[J].自動化技術(shù)與應(yīng)用,2011,(8):98~101.

      [5] 陳樹學(xué). LabVIEW寶典[M].上海:電子工業(yè)出版社,2011:34~78.

      [6] 阮奇楨.我和LabVIEW[M].北京:北京航空航天大學(xué)出版社,2009:56~98.

      [7] 劉松斌,王海星,馬雙,等.基于LabVIEW的單片機(jī)與PC機(jī)串口通信顯示系統(tǒng)設(shè)計[J].化工自動化及儀表,2015,42(7):806~808.

      [8] 蔡型,張思全.短距離無線通信技術(shù)綜述[J].現(xiàn)代電子技術(shù),2004,(3):65~67,76.

      [9] 羅林.基于參數(shù)估計的多傳感器數(shù)據(jù)融合研究與應(yīng)用[D].長沙:湖南大學(xué),2005.

      [10] 左經(jīng)文,陳沅濤,吳佳英,等.無線傳感器網(wǎng)絡(luò)中助理簇頭機(jī)制的應(yīng)用[J].計算機(jī)工程,2011,(20):60~62.

      DataAcquisitionandNetworkPublishingSystemBasedonSTM32

      GUAN Xue-zhong, LI Qian-wen
      (CollegeofElectricalEngineeringandInformation,NortheastPetroleumUniversity)

      A data acquisition and remote network publishing system was designed for the signals like temperature, pressure, flow and their transmission and visualized display.In which, it has STM32 employed as core controller, the NRF wireless communication module adopted for wireless data transmission and the LabVIEW software based to display the data and realize network publishing; in addition, the principles of data acquisition and wireless communication were elaborated and making use of Altium Designer for PCB drawing was implemented, including the establishment of test platform to complete the design. The test results shows an accurate and reliable data acquisition, fast and stable data communication and the data publishing within local area network (LAN).

      data acquisition,network publishing,wireless communication,STM32,LabVIEW

      TH865

      A

      1000-3932(2017)02-0187-04

      2016-07-05,

      2016-12-05)

      關(guān)學(xué)忠(1962-),教授,從事神經(jīng)網(wǎng)絡(luò)控制和故障診斷技術(shù)的研究,gxzdqpi@163.com。

      猜你喜歡
      上位串口無線
      《無線互聯(lián)科技》征稿詞(2021)
      淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
      無線追蹤3
      基于ARM的無線WiFi插排的設(shè)計
      電子制作(2018年23期)2018-12-26 01:01:08
      特斯拉 風(fēng)云之老阿姨上位
      車迷(2018年12期)2018-07-26 00:42:22
      “三扶”齊上位 決戰(zhàn)必打贏
      ADF7021-N在無線尋呼發(fā)射系統(tǒng)中的應(yīng)用
      電子制作(2016年15期)2017-01-15 13:39:03
      基于ZigBee和VC上位機(jī)的教室智能監(jiān)測管理系統(tǒng)
      USB接口的多串口數(shù)據(jù)并行接收方法探索
      基于藍(lán)牙串口適配器的GPS接收機(jī)與AutoCAD的實時無線通信
      地礦測繪(2015年3期)2015-12-22 06:27:26
      阿巴嘎旗| 廊坊市| 临沂市| 荃湾区| 塔城市| 达尔| 博野县| 安达市| 福州市| 南召县| 玛纳斯县| 金昌市| 三穗县| 赤水市| 白玉县| 新民市| 吕梁市| 黔南| 天全县| 武穴市| 中方县| 雅江县| 南昌市| 德惠市| 双江| 东方市| 宜宾市| 什邡市| 鞍山市| 比如县| 明水县| 望谟县| 蒙城县| 甘德县| 周宁县| 渭南市| 南昌市| 灵川县| 绩溪县| 诸暨市| 自贡市|